mirror of
https://github.com/evennia/evennia.git
synced 2026-03-16 21:06:30 +01:00
RPSystem sdesc command to support clear/view sdesc. Resolve #3073.
This commit is contained in:
parent
e47c69dc24
commit
d4074a5dba
3 changed files with 27 additions and 2 deletions
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
## Main branch (git)
|
||||
|
||||
- Feature: RPSystem contrib `sdesc` command can now view/delete your sdesc.
|
||||
- Bug fix: Change so `script obj = [scriptname|id]` is required to manipulate scripts
|
||||
on objects; `script scriptname|id` only works on global scripts.
|
||||
- Doc: Add warning about `Django-wiki` (in wiki tutorial) only supporting Django <4.0.
|
||||
|
|
|
|||
|
|
@ -725,6 +725,13 @@ class SdescHandler:
|
|||
|
||||
return sdesc
|
||||
|
||||
def clear(self):
|
||||
"""
|
||||
Clear sdesc.
|
||||
|
||||
"""
|
||||
self.obj.attributes.remove("_sdesc")
|
||||
|
||||
def get(self):
|
||||
"""
|
||||
Simple getter. The sdesc should never be allowed to
|
||||
|
|
@ -959,6 +966,8 @@ class CmdSdesc(RPCommand): # set/look at own sdesc
|
|||
|
||||
Usage:
|
||||
sdesc <short description>
|
||||
sdesc - view current sdesc
|
||||
sdesc clear - remove sdesc
|
||||
|
||||
Assigns a short description to yourself.
|
||||
|
||||
|
|
@ -971,8 +980,18 @@ class CmdSdesc(RPCommand): # set/look at own sdesc
|
|||
"Assign the sdesc"
|
||||
caller = self.caller
|
||||
if not self.args:
|
||||
caller.msg("Usage: sdesc <sdesc-text>")
|
||||
return
|
||||
sdesc = caller.sdesc.get()
|
||||
if not sdesc:
|
||||
caller.msg("You have no short description set.")
|
||||
else:
|
||||
caller.msg(f'Your short description is "{sdesc}".')
|
||||
elif self.args == "clear":
|
||||
ret = yield "Do you want to clear your sdesc? [Y]/n?"
|
||||
if ret.lower() in ("n", "no"):
|
||||
caller.msg("Aborted.")
|
||||
else:
|
||||
caller.sdesc.clear()
|
||||
caller.msg(f'Cleared sdesc, using name "{caller.key}".')
|
||||
else:
|
||||
# strip non-alfanum chars from end of sdesc
|
||||
sdesc = _RE_CHAREND.sub("", self.args)
|
||||
|
|
|
|||
|
|
@ -339,6 +339,9 @@ class TestRPSystemCommands(BaseEvenniaCommandTest):
|
|||
"Char2's sdesc was set to 'BarFoo Character'.",
|
||||
caller=self.char2,
|
||||
)
|
||||
|
||||
self.call(rpsystem.CmdSdesc(), "", 'Your short description is "Foobar Character".')
|
||||
|
||||
self.call(rpsystem.CmdSay(), "Hello!", 'Char says, "Hello!"')
|
||||
self.call(rpsystem.CmdEmote(), "/me smiles to /BarFoo.", "Char smiles to BarFoo Character")
|
||||
|
||||
|
|
@ -368,3 +371,5 @@ class TestRPSystemCommands(BaseEvenniaCommandTest):
|
|||
"You will now know them only as 'BarFoo Character'",
|
||||
cmdstring="forget",
|
||||
)
|
||||
|
||||
self.call(rpsystem.CmdSdesc(), "clear", 'Cleared sdesc, using name "Char".', inputs=["Y"])
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue