Make !fquit act like !quit

Notably, this will cause the nick to be consdered "dced" so they do not
receive a win, and it applies stasis just as !quit would (preventing the
nick from joining deadchat, among other uses for stasis).

Fixes #183
This commit is contained in:
skizzerz 2015-11-02 21:38:58 -06:00
parent d67ab56a45
commit 44d1173c20

View File

@ -1380,7 +1380,7 @@ def fleave(cli, nick, chan, rest):
a = pl[pll.index(a.lower())]
message = "\u0002{0}\u0002 is forcing \u0002{1}\u0002 to leave.".format(nick, a)
if var.get_role(a) != "person" and var.ROLE_REVEAL:
if var.get_role(a) != "person" and var.ROLE_REVEAL in ("on", "team"):
message += " Say goodbye to the \u0002{0}\u0002.".format(var.get_reveal_role(a))
if var.PHASE == "join":
lpl = len(var.list_players()) - 1
@ -1389,6 +1389,14 @@ def fleave(cli, nick, chan, rest):
else:
message += " New player count: \u0002{0}\u0002".format(lpl)
cli.msg(chan, message)
if var.PHASE != "join":
for r, rset in var.ORIGINAL_ROLES.items():
if a in rset:
var.ORIGINAL_ROLES[r].remove(a)
var.ORIGINAL_ROLES[r].add("(dced)"+a)
make_stasis(a, var.LEAVE_STASIS_PENALTY)
if a in var.PLAYERS:
var.DCED_PLAYERS[a] = var.PLAYERS.pop(a)
del_player(cli, a, death_triggers=False)