Merge pull request #22 from jacob1/clone
clone gets player list, wolves are informed when clone turns into wolf and clone gets the wolf list too Closes #14
This commit is contained in:
commit
6976f4d211
@ -1332,6 +1332,22 @@ def del_player(cli, nick, forced_death = False, devoice = True, end_game = True)
|
|||||||
var.CLONED[clone] = var.CLONED[nick]
|
var.CLONED[clone] = var.CLONED[nick]
|
||||||
del var.CLONED[nick]
|
del var.CLONED[nick]
|
||||||
pm(cli, clone, "You will now be cloning \u0002{0}\u0002 if they die.".format(var.CLONED[clone]))
|
pm(cli, clone, "You will now be cloning \u0002{0}\u0002 if they die.".format(var.CLONED[clone]))
|
||||||
|
elif role in var.WOLFCHAT_ROLES:
|
||||||
|
wolves = var.list_players(var.WOLFCHAT_ROLES)
|
||||||
|
wolves.remove(nick) # remove dead wolf from list
|
||||||
|
wolves.remove(clone) # remove self from list
|
||||||
|
for wolf in wolves:
|
||||||
|
pm(cli, wolf, "\u0002{}\u0002 cloned \u0002{}\u0002 and has now become a wolf!".format(clone, nick))
|
||||||
|
if var.PHASE == "day":
|
||||||
|
random.shuffle(wolves)
|
||||||
|
for i, wolf in enumerate(wolves):
|
||||||
|
wolfrole = var.get_role(wolf)
|
||||||
|
cursed = ""
|
||||||
|
if wolf in var.ROLES["cursed villager"]:
|
||||||
|
cursed = "cursed "
|
||||||
|
wolves[i] = "\u0002{0}\u0002 ({1}{2})".format(wolf, cursed, wolfrole)
|
||||||
|
|
||||||
|
pm(cli, clone, "Wolves: " + ", ".join(wolves))
|
||||||
elif nick == clone and nick in var.CLONED:
|
elif nick == clone and nick in var.CLONED:
|
||||||
del var.CLONED[nick]
|
del var.CLONED[nick]
|
||||||
|
|
||||||
@ -2028,20 +2044,17 @@ def transition_day(cli, gameid=0):
|
|||||||
var.ROLES["lycan"].remove(victim)
|
var.ROLES["lycan"].remove(victim)
|
||||||
var.ROLES["wolf"].append(victim)
|
var.ROLES["wolf"].append(victim)
|
||||||
var.LYCANS.append(victim)
|
var.LYCANS.append(victim)
|
||||||
pl = var.list_players(var.WOLFCHAT_ROLES)
|
wolves = var.list_players(var.WOLFCHAT_ROLES)
|
||||||
random.shuffle(pl)
|
random.shuffle(wolves)
|
||||||
pl.remove(victim) # remove self from list
|
wolves.remove(victim) # remove self from list
|
||||||
for i, player in enumerate(pl):
|
for i, wolf in enumerate(wolves):
|
||||||
role = var.get_role(player)
|
role = var.get_role(wolf)
|
||||||
if role in var.WOLFCHAT_ROLES:
|
cursed = ""
|
||||||
cursed = ""
|
if wolf in var.ROLES["cursed villager"]:
|
||||||
if player in var.ROLES["cursed villager"]:
|
cursed = "cursed "
|
||||||
cursed = "cursed "
|
wolves[i] = "\u0002{0}\u0002 ({1}{2})".format(wolf, cursed, role)
|
||||||
pl[i] = "\u0002{0}\u0002 ({1}{2})".format(player, cursed, role)
|
|
||||||
elif player in var.ROLES["cursed villager"]:
|
|
||||||
pl[i] = player + " (cursed)"
|
|
||||||
|
|
||||||
pm(cli, victim, "Wolves: "+", ".join(pl))
|
pm(cli, victim, "Wolves: " + ", ".join(wolves))
|
||||||
novictmsg = False
|
novictmsg = False
|
||||||
else:
|
else:
|
||||||
if var.ROLE_REVEAL:
|
if var.ROLE_REVEAL:
|
||||||
@ -3723,6 +3736,9 @@ def transition_night(cli):
|
|||||||
cli.msg(clone, ('You are a \u0002clone\u0002. You can select someone to clone ' +
|
cli.msg(clone, ('You are a \u0002clone\u0002. You can select someone to clone ' +
|
||||||
'with "clone <nick>". If that player dies, you become their ' +
|
'with "clone <nick>". If that player dies, you become their ' +
|
||||||
'role(s). You may only clone someone during the first night.'))
|
'role(s). You may only clone someone during the first night.'))
|
||||||
|
else:
|
||||||
|
cli.notice(clone, "You are a \u0002clone\u0002")
|
||||||
|
pm(cli, clone, "Players: "+", ".join(pl))
|
||||||
|
|
||||||
for ms in var.ROLES["mad scientist"]:
|
for ms in var.ROLES["mad scientist"]:
|
||||||
if ms in var.PLAYERS and var.PLAYERS[ms]["cloak"] not in var.SIMPLE_NOTIFY:
|
if ms in var.PLAYERS and var.PLAYERS[ms]["cloak"] not in var.SIMPLE_NOTIFY:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user