Commit graph

441 commits

Author SHA1 Message Date
Griatch
9af9f94fa0 Moved Players over to the new proxy system, made the start-hook called by the save-signal system into at_first_save() 2014-12-25 14:43:43 +01:00
Griatch
db512cbbf5 Moved object methods up from ObjectDB and mainly onto the typeclass. In the process of converting players in the same way. 2014-12-24 01:24:26 +01:00
Griatch
24764743ff Made a new version of create_object function, and made Objects creatable using o=Object(). 2014-12-23 21:33:03 +01:00
Griatch
a93d318121 Starting to remove obj.typeclass references. Server now starts and stops cleanly, but not yet tested with actual gameplay. 2014-12-22 21:46:52 +01:00
Griatch
14086e3b3d General database operations works with reworked, proxy-based typeclass system. 2014-12-22 14:14:21 +01:00
Griatch
1be49e7bea Fixed a bug in object manager. 2014-12-22 09:01:40 +01:00
Griatch
b244d70e16 Resolved a UNIQUE id error when re-saving a typeclassed object. This was due to an idmapper hack which I *think* is not needed anymore, but might need to look at this in the future to see if the related lookup is actually using the cache or not. 2014-12-21 19:57:01 +01:00
Griatch
3b704d37dc Made sure all proxies of a given database model share the same idmapper cache 2014-12-21 16:06:10 +01:00
Griatch
9ee6b718da Some issues with unique restraint when re-saving objects. 2014-12-21 15:02:34 +01:00
Griatch
4e0b5be962 Fixed creation. Time to start cleaning the .dbobj hierarchy. 2014-12-20 19:29:38 +01:00
Griatch
e28d544fb0 The manager wrapper has trouble finding the path of the current class. 2014-12-20 19:19:48 +01:00
Griatch
043ebf7213 Fixed metaclass to handle proxy correctly. Some issues with getting path properties set correctly. 2014-12-20 19:04:49 +01:00
Griatch
32e44dceab Made the proxy typeclass system work in principle, using a wrapper of the __new__ method for the class. 2014-12-20 18:30:39 +01:00
Griatch
8314d8ba5e Now solving issues with faulty imports. Still nothing functional. 2014-12-20 17:03:34 +01:00
Griatch
08d0442f9c Strange issue with __init__, proxy implementation not working at the moment. 2014-12-19 16:56:28 +01:00
Griatch
3adeade69a Some errors in the proxy setting. 2014-12-19 16:41:20 +01:00
Griatch
236c0d17d3 First non-tested version of moving typeclasses to proxy models. 2014-12-19 16:29:41 +01:00
Griatch
8e8d85a4fe Added a new fuzzy module load mechanism 2014-12-19 13:32:08 +01:00
Griatch
417e8255af Just a small range->xrange addition. 2014-12-17 00:41:18 +01:00
Griatch
140a9f69f0 Fixed a column-border related issue with EvTable. 2014-12-16 23:33:48 +01:00
Griatch
0772341823 Optimizing EvTable for one-time presentation rather than re-use of a once-created table - this leads to optimization possibilities. 2014-12-16 22:01:10 +01:00
Griatch
2bf3a5ce52 Fixed bug that added too many empty rows when adding columns to EvTable using .add_column() 2014-12-15 22:30:02 +01:00
Jonathan Piacenti
07aba24f4d Improve ANSIString performance. 2014-12-13 20:57:26 -06:00
Griatch
ef6fffbca7 Fixed case when some parts of an evtable wouldn't color correctly. Resolves #623. 2014-12-02 09:45:15 +01:00
Griatch
94cb5f9527 Some tweaks for testing. 2014-11-24 20:03:20 +01:00
Griatch
12285f9fd2 Made it so that inlinefunc also accepts single function calls (no end tag) - in this case the ingoing text string will be the empty string. This is useful for functions like {time() that makes no use of the text input - you can now use just {time() instead of having to use {time(){/time. 2014-10-26 16:23:55 +01:00
Griatch
6ef4467203 Added session object to kwarg of inlinefuncs. This means that the new call signature for inlinefuncs is funcname(text, *args, **kwargs), where **kwargs are only used for engine-related things (currently only session=session). 2014-10-26 10:46:22 +01:00
Griatch
5b42b31240 API change. Removed managers for Attributes and Tags - these are instead incoorporated into the TypedObjectManager which all Typeclassed object handlers inherit from. This concludes the refactor started in #529. This means that access to Attributes/Permissions/Aliases and Tags/nicks are done directly through e.g. ObjectDB.objects.get_by_tag() (or ev.managers.objects.get_by_tag) rather than using Tag.get_obj_with_tag and specifying the model type manually. The create_tag() method was also moved into the TypedObjectManager as part of removing the Tagmanager. As part of this change, Tag and Attribute was also removed from the ev interface. 2014-10-25 22:40:38 +02:00
Griatch
08b18524fd Some minor documentation fixes and tests. 2014-10-25 16:04:00 +02:00
Griatch
498e3f5064 Added some more inlinefunc docs. 2014-10-25 13:59:22 +02:00
Griatch
46edc6eef6 Added inlinefunc, an inline text parser for custom dynamic functions,
as per #520.
2014-10-25 13:37:25 +02:00
luyijun
73e57422c7 Merge remote-tracking branch 'upstream/master' 2014-10-22 00:37:49 +08:00
luyijun
e687f935cb Fixed some issues in dealing with multibyte characters. 2014-10-22 00:37:08 +08:00
Griatch
a5b4ddd1e9 Adding minor doc update. 2014-10-20 19:55:06 +02:00
Griatch
1bcd9abc6b Changed order of Script save. This avoids a race condition where Scripts that die very quickly tries to delete themselves before having had time to save first. Resolves #597. 2014-10-13 08:41:22 +02:00
Simon Vermeersch
cde64692ff Adds in support for links 2014-10-05 17:44:35 +02:00
Griatch
ef23cfceb9 Fixed persistence of options for a given column. Resolves #593. 2014-10-04 17:52:50 +02:00
Griatch
3cc0d6ee16 Removed ability to add EvColumns directly to table - this causes some confusing effects and is not worth the trouble over building the table normally and reformatting with reformat_column. 2014-10-02 09:40:55 +02:00
Griatch
8b8fbe8101 Reworked EvTable to use internal EvColumn objects. This allows a new method on EvTable. Columns with a set width will not be affected by auto-balancing, allowing for mixing fixed and auto-balancing columns as suggested in #550. Changed EvTable keywords involving characters to consistently end with _char, such as corner_top_left -> corner_top_left_char. 2014-10-02 09:08:08 +02:00
Duarte Cordeiro
fd7bb29505 Fixes add_row on EvTable class, allowing the creation of a table without a header. 2014-09-30 16:28:53 +01:00
Griatch
5371d06e3a Removed check for south availability. 2014-09-17 12:08:11 +02:00
Griatch
35dad76d02 Increased required library versions to Python2.7+, django1.7+ and twisted 12.0+. 2014-09-17 12:06:36 +02:00
Griatch
bb36f2cb76 Changed to Django1.7. Django 1.6 no longer supported. To change, upgrade django to 1.7+ and then run manage.py migrate, possibly followed by manage.py migrate --fake for objects and players. 2014-09-17 10:49:42 +02:00
Duarte Cordeiro
8bb00d5595 Corrected fix for #578 2014-09-16 15:46:23 +01:00
Duarte Cordeiro
394ef28212 This fixes issue #578 2014-09-15 15:15:46 +01:00
Griatch
c4c662b33e Moved unicode/str conversions to sessionhandler level in order to still allow message_all session messages without triggering unicode tracebacks (such as when server restarts). 2014-09-10 09:33:44 +02:00
Griatch
46781d3ee1 Blocked cache rmem checks in windows until we have figured out some other way to check this. 2014-09-06 08:46:54 +02:00
Griatch
aba6f947fa Added django 1.7+ warning to version checker. 2014-09-05 10:08:27 +02:00
Griatch
8ade616d1b Made newer-django warning format correctly. 2014-09-05 09:57:40 +02:00
Griatch
aeb17e78e4 Added deepcopying of prototypes in spawner. Resolves #565. 2014-09-05 09:13:53 +02:00