Set the default settings file to point to the files in game/gamesrc/commands - these now make for good starts for overriding the default systems. The system now also matches the examples given in the wiki.

This commit is contained in:
Griatch 2010-11-23 18:10:41 +00:00
parent 72d40285b8
commit ecefbfac01
3 changed files with 50 additions and 24 deletions

View file

@ -19,28 +19,11 @@ new cmdset class.
"""
from src.commands.cmdset import CmdSet
from src.commands.default import cmdset_default
from src.commands.default import cmdset_default, cmdset_unloggedin
from game.gamesrc.commands.basecommands import Command
from game.gamesrc.commands.basecommand import Command
class ExampleCmdSet(CmdSet):
"""
Implements an example cmdset.
"""
key = "ExampleSet"
def at_cmdset_creation(self):
"""
This is the only method defined in a cmdset, called during
its creation. It should populate the set with command instances.
Here we just add the base Command object.
"""
self.add(Command())
class ExtendedDefaultSet(cmdset_default.DefaultCmdSet):
class DefaultCmdSet(cmdset_default.DefaultCmdSet):
"""
This is an example of how to overload the default command
set defined in src/commands/default/cmdset_default.py.
@ -56,10 +39,53 @@ class ExtendedDefaultSet(cmdset_default.DefaultCmdSet):
"""
Populates the cmdset
"""
super(ExtendedDefaultSet, self).at_cmdset_creation()
super(DefaultCmdSet, self).at_cmdset_creation()
#
# any commands you add below will overload the default ones.
#
class UnloggedinCmdSet(cmdset_unloggedin.UnloggedinCmdSet):
"""
This is an example of how to overload the command set of the
unlogged in commands, defined in
src/commands/default/cmdset_unloggedin.py.
Here we copy everything by calling the parent, but you can
copy&paste any combination of the default command to customize
your default set. Next you change settings.CMDSET_UNLOGGEDIN to
point to this class.
"""
key = "Unloggedin"
def at_cmdset_creation(self):
"""
Populates the cmdset
"""
super(UnloggedinCmdSet, self).at_cmdset_creation()
#
# any commands you add below will overload the default ones.
#
class BaseCmdSet(CmdSet):
"""
Implements an empty, example cmdset.
"""
key = "ExampleSet"
def at_cmdset_creation(self):
"""
This is the only method defined in a cmdset, called during
its creation. It should populate the set with command instances.
Here we just add the base Command object.
"""
self.add(Command())

View file

@ -111,7 +111,7 @@ def import_cmdset(python_path, cmdsetobj, emit_to_obj=None, no_logging=False):
raise
except KeyError:
errstring = "Error in loading cmdset: No cmdset class '%s' in %s."
errstring = errstring % (modulepath, classname)
errstring = errstring % (classname, modulepath)
raise
except Exception:
errstring = "\n%s\nCompile/Run error when loading cmdset '%s'."

View file

@ -136,9 +136,9 @@ ALTERNATE_OBJECT_SEARCH_MULTIMATCH_PARSER = ""
###################################################
# Command set used before player has logged in
CMDSET_UNLOGGEDIN = "src.commands.default.cmdset_unloggedin.UnloggedinCmdSet"
CMDSET_UNLOGGEDIN = "game.gamesrc.commands.basecmdset.UnloggedinCmdSet"
# Default set for logged in players (fallback)
CMDSET_DEFAULT = "src.commands.default.cmdset_default.DefaultCmdSet"
CMDSET_DEFAULT = "game.gamesrc.commands.basecmdset.DefaultCmdSet"
###################################################