Commit graph

56 commits

Author SHA1 Message Date
Griatch
3d557f6bf9 Can log in, still errors all over the place due to missing .typeclass/.dbobj 2014-12-28 20:00:31 +01:00
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
969b947ba0 One needs to turn off all imports of typeclasses in __init__ or django will create migrations for them. This might be interesting for the future but not for development. 2014-12-23 11:53:32 +01:00
Griatch
749715a193 Server can be connected to, not yet get to a command line; may need to work on different app_labels. 2014-12-22 23:03:00 +01:00
Griatch
0b5e2b94ff Starting the move of typeclass methods off *DB models and onto the typeclasses. 2014-12-22 22:46:58 +01:00
Griatch
2ee9e62336 Fixed correct and separate handling of database model bases as compared to its proxy classes using different managers for each type (e.g. ObjectDB.objects.all() will return all ObjectDB instances(including proxy instances) whereas Object.objects.all() will only return Objects) 2014-12-22 08:54:53 +01:00
Griatch
4e0b5be962 Fixed creation. Time to start cleaning the .dbobj hierarchy. 2014-12-20 19:29:38 +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
236c0d17d3 First non-tested version of moving typeclasses to proxy models. 2014-12-19 16:29:41 +01:00
Griatch
062a545a97 Changed at_cmdset_get() hook to at_cmdset_get(**kwargs). This allows for the possibility to control dynamic generation of cmdsets, for example to force Exit cmdsets to be rebuilt. The aliasing command now uses this. Resolves #563. 2014-09-20 10:26:59 +02:00
lu yijun
dbbacb4bb3 This fixes issue #569 2014-09-07 02:22:12 +08:00
Griatch
a88afabd60 Added **kwargs to cmdhandler and execute_cmd() methods, to set arbitrary flags on commands at run-time. Unused by default Evennia but may be useful to codedly change operation parameters on commands at run-time. 2014-08-24 09:43:55 +02:00
Griatch
e7d562d2e8 Fixed so the look command is called immediately when connecting also on MULTISESSION_MODE=3 2014-08-07 17:45:16 +02:00
n0q
de6badd709 Fix for empty character sets
Filtering away characters who's type is None, to avoid tracebacks in the
event of a characterless guest.
2014-07-07 22:42:24 -04:00
n0q
757cfded99 Stray bit of code 2014-07-06 16:53:42 -04:00
n0q
b9661c5c96 Guest Functionality
Allows for guest logins by entering 'connect guest' at the login screen.
Cleans up after itself but does not yet clean up stale guests from a
system crash.
2014-07-06 16:46:02 -04:00
Griatch
1874300ad1 Added at_post_disconnect() hook to Player, to allow for clean deletion of players at disconnect (for example for Guest-account implementation) 2014-07-06 16:20:50 +02:00
Griatch
59513e5c00 Fixed player.search() to also move here/me/self wrappers to typeclass. 2014-04-13 10:04:35 +02:00
Griatch
2108506a8a Added new IRC protocol implementation. Not tested yet. 2014-03-08 11:41:23 +01:00
Griatch
87f3093dac Deprecation warning: Added combined hook at_access(result, accessing_obj, access_type, **kwargs) to Objects and Players. This hook replaces at_access_failure and at_access_success, which are now both DEPRECATED and will be removed later. 2014-01-18 23:56:07 +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
Kelketek
851e6d00cc Turned comms into typeclassed objects. 2013-09-28 22:23:30 -05:00
Griatch
e36c7d5cc1 Cleaned up worst instability. Test suite does validate yet. 2013-09-21 17:33:48 +02:00
Griatch
4a5de04956 Changed msg() to work with **kwargs rather than data dicts. Still not fully updated the portal side (also remember that keywords let through to the portal must not contain dbobjs, since the portal has no connection to the database). 2013-09-14 09:10:31 +02:00
Griatch
8bd431b385 Removed deprecated Attribute methods from evennia distro. Removed MUX help files. 2013-08-25 16:41:18 +02:00
Griatch
416d6e14bc Fixing a bug in @ic if trying to puppet while already puppeting. Added sessid keyword to at_post_login hook in order to correctly relay login text only to the correct session. Removed the src.utils.debug module as well as the CmdDebug command which has not been supported for a good while. 2013-04-18 09:13:31 +02:00
Griatch
1aff5f1fd1 Renamed cmdset_ooc -> cmdset_player and settings.CMDSET_OOC -> settings.CMDSET_PLAYER. Also split most of the player-specific commands to a new module player. 2013-04-11 01:02:05 +02:00
Griatch
c967cc7914 MULTISESSION_MODE 0-2 works as they should. Remains some fixes to migrations. 2013-04-09 19:19:53 +02:00
Griatch
1e07b8ca34 After the rework of the many-char mode, mode 0 now works stably and auto-logins correctly it seems. 2013-04-09 17:11:34 +02:00
Griatch
26ced2cb90 Heavily reworked the many-char system, cleaner and more consistent by not having any persistent links on the Object side once a player has unconnected. 2013-04-09 15:59:21 +02:00
Griatch
5100a0561f Some further bug fixes. 2013-04-09 11:14:08 +02:00
Griatch
20a57d4167 Further fixes to the system, still some issues remaining. 2013-04-06 21:36:52 +02:00
Griatch
9eb1903f02 Lots of cleanup and bug fixes. Still some issues with reconnecting to the right location in multisession_mode 0. 2013-04-03 18:31:53 +02:00
Griatch
261363bae7 Moved connect/disconnect messages to be triggered by Player, not by Character. 2013-02-17 14:24:31 +01:00
Griatch
4dea96f5e4 Some further fixes. 2013-02-14 17:55:05 +01:00
Griatch
b82a75d816 Fixed initial_setup and set up the _playable_characters attribute on all players, for handling multi-accounts. Still some issues with how the character's permissions is accessed. 2013-02-03 20:04:40 +01:00
Griatch
b26c3ab872 Fixed bugs and allowed for logging in using one character. Added a simple command for creating a new character. 2013-02-03 17:00:46 +01:00
Griatch
f1767251c6 Can now log in to a character selection screen. Lots more testing required before one-char-per-session works. 2013-02-03 00:25:06 +01:00
Griatch
949da47917 Removed some old and now confusing, unsused variables and added some documenting strings. 2012-12-08 15:39:09 +01:00
Griatch
532cbc5fb6 Changed initial look command (at login) to be called from at_post_login hook instead of from the default connect command, supposedly making it easier for those only wanting to change this one line rather than having to re-target connect. The player.at_post_login now also calls look in case no character is defined, for the cases when logging in without having a character selected. Resolves Issue 277. 2012-10-14 12:28:01 +02:00
Griatch
8ad4f4a9fc Changed player.search to only search for players explicitly.
Added a MuxCommandOOC class to handle the OOC commands in a more uniform way.
Fixed the @ic/@ooc and page commands. Resolves issue 233. Resolves issue 234.
2012-05-17 19:42:37 +02:00
Griatch
c8df141e89 Further cleanup of source; making class methods _private for clarity in the API. 2012-03-31 15:09:22 +02:00
Griatch
da51cb063f ev-API cleanups. ev can now be imported also from a non-django initiated python interpreter (it initiates itself). Gave some more info text and made sure wrapped db_ methods correctly forward their doc strings for introspection. 2012-03-27 09:59:11 +02:00
Griatch
0d01462077 Adding a new API system to Evennia. This centralizes all access of the evennia driver through a single module "ev". Importing ev one should be able to access (and also importantly, easily explore) Evennia's API much easier. This API goes a long way to "flatten" the structure so that one doesn't need to remember how to find some method in a deeply nested subdirectory.
As part of this work, I have also written full listings of all available properties on Typeclassed objects (including those inherited in various ways). Should hopefully make things easier to find.
One can of course still import things directly from src/ as before. But this is a first step towards removing the "base" objects in game/gamesrc and instead making those accessible through the core API.
2012-03-24 23:02:45 +01:00
Griatch
7a2cdd3842 Moved all command definitions of Typeclassed entities up one level, to Object, Player and Script respectively. The actual code is still on the models (ObjectDB, PlayerDB and ScriptDB), but one should not be able to use the methods without having to dig into the code as far. Also added extensive, up-to-date headers to the inheriting base objects in game/gamesrc. 2012-03-24 18:25:32 +01:00
Griatch
7195e1e773 Minor fixes to create command. 2011-10-16 00:40:11 +02:00
Griatch
6ae1123421 Fixed hook method descriptions. 2011-10-01 22:36:55 +02:00