Commit graph

101 commits

Author SHA1 Message Date
Griatch
cf4a6f90a5 Added rounding of command output 2014-02-14 01:41:59 +01:00
Griatch
d6e6c12939 Fixed so refurbished Scripts work normally. Added script.fire() method to fire the script on-demand, as suggested in #420. Also added as method remaining_repeats() to be able to get how many more times the script will fire. 2014-02-14 01:31:09 +01:00
Griatch
64fc8f0b2a Fixed repeat functionality with new Script implementation. 2014-02-13 22:36:52 +01:00
Griatch
9f2433b9c2 Switched Scripts to use ExtendedLoopingCall. 2014-02-13 21:04:59 +01:00
Griatch
854a452f03 Added more functionality to ExtendedLoopingCall class, like reset and repeats. 2014-02-13 17:39:29 +01:00
Griatch
6e4591d633 Created the ExtendedLoopingCall class for making resheduling of scripts a little more robust 2014-02-13 13:25:46 +01:00
Griatch
ee269d13cf Cleaned up the tickerhandler 2014-02-12 00:46:22 +01:00
Griatch
029ee71ffa Used 2014-02-12 00:46:22 +01:00
Griatch
afc7fd758f Made TickerHandler more general. 2014-02-12 00:46:22 +01:00
Griatch
205960948d Added first version of TickerHandler, for managing subscription style tickers in a centralized way. 2014-02-12 00:46:22 +01:00
Griatch
ea7e43c746 Updated gametime module to work on-the-fly, based on patches and discussion with user Khandrish. Also made cleanups to @scripts command and some small bug fixes. 2014-01-04 17:14:51 +01:00
Griatch
9839e0ba1f Fixed bugs in scripts starting and with multiple aliases getting a malformed tag category. 2013-11-28 14:11:18 +01:00
Griatch
1ae17bcbe4 PEP8 cleanup of the entire codebase. Unchanged are many cases of too-long lines, partly because of the rewrite they would require but also because splitting many lines up would make the code harder to read. Also the third-party libraries (idmapper, prettytable etc) were not cleaned. 2013-11-14 19:31:17 +01:00
Griatch
06a0bea8d6 Added fix to object.contents cache as well as reworked the extent of cache hooks on location modification. 2013-10-21 21:17:32 +02:00
Griatch
acdea41a67 Merge from Kelketek's clone. Added fixes to migrations of Tags. Issues with ContentTypes meaning that this revision is not possible to start. 2013-10-17 23:44:52 +02:00
Kelketek
0484a944df Fixed bug where user scripts filter on login uses typeclass instead of dbobj and crashes. 2013-09-29 13:35:39 -05:00
Griatch
39b69dcdc2 Fixed a migration issue with PostGreSQL. 2013-09-26 09:01:27 +02:00
Griatch
2a5168ade4 Moved all relevant wrappers into being managed by the metaclass. Noting that there are many inconsistent features into the comm system; m2m fields should be moved into handlers rather than what is now used. Some of the non-typeclassed models also really don't need to be idmapped - will probably not change this before merge. 2013-09-23 23:34:47 +02:00
Griatch
06e858b3f6 Moved permissions into a the tag system as a separate handler. Permissions still don't work quite right yet. 2013-08-24 23:57:44 +02:00
Griatch
2f5c895f76 Removed LiteAttributes, made Nicks use Attributes. Added category and strvalue fields to Attribute. Made Attributes accessible through an AttributeHandler, like most other advanced properties. 2013-08-24 21:23:43 +02:00
Kelketek
427dcc3985 Optimized Scripts admin page. Fixed related name for objects on attributes.
Repaired search. Removed some backwards compatible parts of picklefield since
we aren't supporting version older than 1.5 and they were obscuring the true
cause of some issues.
2013-07-21 09:44:34 -05:00
Kelketek
89aebfc13f Made migrations compatible with new user model when creating from scratch. 2013-07-20 15:45:16 -05:00
Griatch
73a5800fbf Fixed updates of the contentmanager. Not all command tests run yet. 2013-07-12 22:08:15 +02:00
Griatch
6bc16e46cc Made aliases work with the new handler. The location.contents updated is not working yet - this causes locational information to not be available until objects and manually initialized (e.g. by calling examine #dbref) 2013-07-12 20:21:52 +02:00
Griatch
45706f598a Fixed remaining issues so the login process works. 2013-07-12 15:57:46 +02:00
Griatch
0061f884ae Implemented NickHandler, AliasHandler and TagHandler in the typeclass to replace the old handlers. Some errors during login. 2013-07-12 14:44:49 +02:00
Griatch
c676c9965f Merged. Still need to update some migrations. 2013-07-11 19:11:27 +02:00
Griatch
9e10a41e18 First version with all caches seemingly working ok. Started to remove the on-model wrappers that are not handled by the idmapper metaclass. 2013-07-11 15:59:03 +02:00
Griatch
2b332c3b9a Attribute cache is working, lots of other updates, but still not a cleanly updatable system. It seems the Attribute-migrations are not coming through properly. Fixed a misnamed table in the comm app. 2013-07-11 09:51:52 +02:00
Griatch
2a7c45d6e8 Run Migrations. Migrated to new Attribute schema, converting old attributes. Not fully tested yet. 2013-07-09 00:09:19 +02:00
Griatch
a1d818f8aa First test with moving Attributes to m2m field. Not working yet. 2013-07-08 18:13:21 +02:00
Griatch
261e463505 cleaned up script copy method in script manager. 2013-07-02 16:24:47 +02:00
Griatch
2487d4b622 Fixed script-searching using the obj= keyword. Also made the search more efficient using Q-objects. Resolves Issue 385. 2013-07-02 16:09:20 +02:00
Griatch
b6383ddab9 Moved attr_cache to new caching system, activated all attribute updating signals. 2013-05-29 18:47:51 +02:00
Griatch
8d48aa5a06 Added the last migrations needed to fully convert the Attribute system. Cleaned up the @ooclook command a bit as well as tidied up the who command a bit. 2013-04-14 13:35:25 +02:00
Griatch
82c2e19ed5 Fixed remaining issues with migrating the attribute changes. 2013-04-14 00:35:23 +02:00
Griatch
230d73cfa0 Migrations work under sqlite3, both from latest dev, from new install and from trunk. There might be some consistency issues though (it seems the character list is not properly migrated), so more testing is required. 2013-04-13 23:50:33 +02:00
Griatch
512d7748d1 Finished with a working implementation of the new Attribute mechanism using PickledObjectField. First step of migration is finished, but not converting any old attribute data yet. 2013-04-13 18:13:15 +02:00
Griatch
433cb5b9c0 Moved import of SESSIONS to avoid a circular import situation under i18n. 2013-02-10 11:52:31 +01:00
Kelketek
adb3965888 Follow-up on that last one-- missed one of the Abstract models. 2013-02-03 09:54:36 -06:00
Kelketek
2e08517ec5 Changed lock storage from character-limit field to unlimited TextField. 2013-02-03 08:54:57 -06:00
Griatch
11d1114f61 Some minor cleanups. 2013-02-01 21:51:38 +01:00
Stephen Hansen
5cfff771f2 Initial support for pypy + evennia 2013-01-31 14:34:52 -08:00
Griatch
b0b0fa7983 First, untested version of the OOBhandler mechanism. 2013-01-03 09:18:49 +01:00
Griatch
8654d8cc48 Further migrated script caches to the central cache location, removing old cruft. 2012-11-08 19:29:57 +01:00
Griatch
5b5328e6ca Changed default dbref search mechanic to require #N format and thus allow searching for objects named as integers (so "@create/drop 2" followed by 'look 2' will now work as expected instead of looking at the object with dbref=2). Doing "look #2" will now look at the object with dbref 2 (Limbo). Resolves Issue 284. 2012-10-14 15:45:21 +02:00
Griatch
31daf5b013 Added an extra check to make sure the 'candidates' keyword to ev.search_object always contain proper dbobjs and not typeclasses. Resolves Issue 280. 2012-10-14 13:25:25 +02:00
Griatch
110207fd7f Also tweaked scripts- and player managers to handle id=0. 2012-09-29 17:12:16 +02:00
Griatch
7d4bf6c8d2 Fixes a bug in scriptmanager. Resolves Issue 259. 2012-09-25 07:42:52 +02:00
Griatch
c53a9b5770 Changed how Objects are searched, using proper Django Q objects instead of hack-y evals to build queries. This has lead to a number of changes to the ObjectDB manager search. Notably there is now no way to supply a "location" to either of the manager search methods anymore. Instead you can now supply the keyword "candidates", a list of objects which should be used to limit the search. This is much more generic than giving location. The higher-level search (like caller.search, reached from commands) have not changed its API, so commands should work the same unless you are using the manager backbone directly. This search function is now using location to create the "candidates" list. Some other things, like matching for "me" and "here" have also been moved up to a level were it can be easily overloaded. "me" and "here" etc were also moved under i18n.
As part of this overhaul I implemented the partial_matching algorithm originally asked for by user "Adam_ASE" over IRC. This will allow for (local-only) partial matching of objects. So "big black sword" will now be matched by "bi", "sword", "bi bla" and so on. The partial matcher sits in src.utils.utils.py if one wants to use it for something else.
2012-09-17 15:31:50 +02:00