evennia/src
Griatch c7cbc4854e Reworked object command tables.
Object commands used to require re-adding every call in the script parent's __init__ or factory functions, adding the commands to a new command table directly on the object. Since all other attributes can be set up in at_object_creation(), this was both inconsistent and a bit confusing to work with. There is now a method add_commands() directly defined on all objects. It takes the same arguments as the normal add_command()o but use a reserved attribute to create and update a command table on the object. This has the advantange of completely removing the __init__ call in the script parent, all definitions can now be kept in at_object_creation() and are, more importantly, persistent without having to be recreated every call.
- I updated the examine command to show all the commands defined on an object (if any).
- I updated gamesrc/parents/examples/red_button.py considerably using the new command methodology and also using the updated Events.
.
Griatch
2009-12-03 00:41:53 +00:00
..
cache Implemented persistent cache, events and gametime counter. 2009-11-22 21:18:55 +00:00
channels Implemented @cdesc as per Issue 65. 2009-10-15 14:01:48 +00:00
commands Reworked object command tables. 2009-12-03 00:41:53 +00:00
config Added @setcmdalias for creating aliases for commands (l -> look etc). Also moved the hard-coded defaults to settings.py instead. 2009-10-16 21:04:07 +00:00
genperms - Implemented permission system management inside the game 2009-10-03 14:40:34 +00:00
helpsys Expanded @emit with more functionality. 2009-10-15 17:31:44 +00:00
imc2 - Implemented permission system management inside the game 2009-10-03 14:40:34 +00:00
irc - Implemented permission system management inside the game 2009-10-03 14:40:34 +00:00
objects Reworked object command tables. 2009-12-03 00:41:53 +00:00
script_parents Reworked object command tables. 2009-12-03 00:41:53 +00:00
util Added extrapolated "name_exists" function. 2009-01-13 07:21:41 +00:00
__init__.py Committin a 'working' checkpoint before I break more stuff. 2008-06-15 19:06:31 +00:00
alias_mgr.py Add the home command. 2009-04-06 22:07:41 +00:00
ansi.py Added a command batch processor to Evennia. The @batchprocess is a super-user only command that reads normal Evennia-commands 2009-09-04 08:01:43 +00:00
cmdhandler.py Reworked object command tables. 2009-12-03 00:41:53 +00:00
cmdtable.py Largely rewrote and refactored the help system. 2009-10-14 18:15:15 +00:00
comsys.py - Implemented permission system management inside the game 2009-10-03 14:40:34 +00:00
config_defaults.py Implemented persistent cache, events and gametime counter. 2009-11-22 21:18:55 +00:00
defines_global.py Implemented locks. 2009-10-05 20:04:15 +00:00
events.py Various cleanups in the recent modifications, and improvements to how time is handled and displayed. 2009-11-25 19:27:32 +00:00
exceptions_generic.py Committin a 'working' checkpoint before I break more stuff. 2008-06-15 19:06:31 +00:00
flags.py Fixed startup.bat to work again since the creation of the 'src' folder. Forgot to update the path. Also updated Windows 'Getting Started' guide on evennia.com to be more verbose. 2008-12-14 00:02:11 +00:00
gametime.py Various cleanups in the recent modifications, and improvements to how time is handled and displayed. 2009-11-25 19:27:32 +00:00
initial_setup.py Various cleanups in the recent modifications, and improvements to how time is handled and displayed. 2009-11-25 19:27:32 +00:00
locks.py Added VisibleKey, allowing objects to be locked so they are not visible by normal look command. 2009-10-22 19:44:16 +00:00
logger.py Addition of a re-usable CommandTable class. We still have two global command tables that are now instances of this class. Game developers will use methods on CommandTable to add their own commands without modifying the base server code. 2008-12-14 01:49:37 +00:00
scheduler.py Implemented persistent cache, events and gametime counter. 2009-11-22 21:18:55 +00:00
scripthandler.py - Made many small bugfixes to the @parent and @create functions as well as their underlying methods. 2009-04-25 20:51:12 +00:00
server.py Various cleanups in the recent modifications, and improvements to how time is handled and displayed. 2009-11-25 19:27:32 +00:00
session.py * Implemented a non-persistent cache in src/cache.py. The cache is lost when restarting the server but it has the advantage of not hitting the database, and so is useful for implementing things that should be remembered over time but does not need to be persistently saved in the database at every point, like fast-updating combat systems, timers etc. Using the cache can substantially cut down on database access at the cost of memory comsumption. It is easiest accessed through the object model using normal dot notation. So to store a variable in volatile memory e.g. from your script parent, you can do things like self.scripted_obj.cache.myvariable = variable and be sure that later (unless there was a reboot) doing self.scripted_obj.cache.myvariable will return the value you stored there. 2009-11-01 15:12:38 +00:00
session_mgr.py Largely rewrote and refactored the help system. 2009-10-14 18:15:15 +00:00
statetable.py Changed the name of the default state-help command 'info' to 'statehelp' to avoid clashing with the standard info channel. 2009-10-15 11:30:44 +00:00