Commit graph

418 commits

Author SHA1 Message Date
Greg Taylor
66a529ba84 The command handler has been completely overhauled and is actually readable now. It -might- be a little faster as well. It's not really that point in development to start micro-optimizing, so I haven't ran any benchmarks.
Our command evaluation now mirrors MUX2's. It was kind of weird before now, I'm not really sure how it got so out of order. In any case, I'm no longer ashamed of our command handler code. Hooray.
2008-12-15 01:10:26 +00:00
Greg Taylor
d58f4eb517 Looking through our command code after a long hiatus, I realized that it was pretty much awful. So here's part 1 of the command interpreter overhaul.
- The command handler has been drastically simplified. We were doing way too much processing in the handler that should have been done in the individual command functions themselves.
- The 'cdat' dict we were previously passing around has been replaced with a Command object that has useful methods for performing some of the parsing command functions will probably want to do from time to time.
- All commands were updated to use the new Command object, tested, and cleaned up in general.
- A lot of formatting was cleaned up.
- A lot of previously un-found bugs and limitations were fixed.
- The 'page' command has been broken out into its own file, since it's going to have a number of functions that would otherwise clutter commands/general.py.

Expect a commit (probably later today) that will clean up the second half of cmdhandler.py.
2008-12-14 20:21:02 +00:00
Greg Taylor
37d66093cc 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.
This is also in preparation of allowing commands to be present on objects via their script parents.
2008-12-14 01:49:37 +00:00
Greg Taylor
e3c58aeb6d 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.
Also did a few really minor formatting fixes and commenting elsewhere.
2008-12-14 00:02:11 +00:00
Greg Taylor
51a911d048 We now access the scriptlink by calling object.scriptlink instead of get_scriptlink. Shortens the typage a little and allows for some less complex fun possibilities down the road. 2008-06-21 02:05:44 +00:00
loki77
3e57f49395 New way of working with scriptlinks.
Scripts should be defined as '.' separated directory structures, starting in the base evennia directory.
2008-06-18 04:36:23 +00:00
loki77
6d1a8b8250 Fixed a bug with scriptlink that caused an error for players. Basically it split on ., which I believe used to be the seperator, but it is now /. 2008-06-17 01:37:11 +00:00
loki77
186dcc17c5 Fixed bad indentation. 2008-06-17 00:38:59 +00:00
Greg Taylor
cf18029be1 Moving some of the login tasks out of sessions.py and into the BasicPlayer script parent. Also, added seconds to the 'time' command, which I apparently forgot. 2008-06-15 21:29:27 +00:00
Greg Taylor
b12ba45cc7 Moving constants over to the new flags module. 2008-06-15 20:41:58 +00:00
Greg Taylor
a954069776 Finished moving stuff around, things should be in mostly working order now. 2008-06-15 20:31:25 +00:00
Greg Taylor
fd264667b8 Whoops. Broken for a few minutes. 2008-06-15 20:19:08 +00:00
Greg Taylor
ff98ede98f Moving the logging system to src/ 2008-06-15 20:15:12 +00:00
Greg Taylor
5064d0cacc Moved defines_globals to src/ 2008-06-15 20:04:06 +00:00
Greg Taylor
e6e84c2ee5 Quick PEP 8 related change. 2008-06-15 19:55:38 +00:00
Greg Taylor
811016867b Comsys moved to src/ 2008-06-15 19:41:27 +00:00
Greg Taylor
4bb00013ae Even more death and destruction. A lot more stuff moved to src/. A lot more bugs probably introduced. 2008-06-15 19:38:39 +00:00
Greg Taylor
d3808c1ea2 Committin a 'working' checkpoint before I break more stuff. 2008-06-15 19:06:31 +00:00