alpha wolf QoL adjustments

- alpha wolf can now both bite and kill during the same night
- any wolf death (instead of just one during day) is counted towards
  activating alpha wolf
- fix role message to be more in line with other wolfteam messages
This commit is contained in:
skizzerz 2016-07-21 16:10:46 -05:00
parent bc9f27c6d5
commit d45a54179b
2 changed files with 6 additions and 15 deletions

View File

@ -330,7 +330,6 @@
"gunner_suicide_no_reveal": "Oh no! \u0002{0}\u0002's gun was poorly maintained and has exploded!",
"hunter_already_killed": "You have already killed someone this game.",
"silenced": "You have been silenced, and are unable to use any special powers.",
"alpha_bite_chosen": "You have chosen to bite someone tonight and cannot participate in the kill. Use \"retract\" if you want to not bite anyone tonight.",
"werecrow_transformed_nokill": "You have already transformed into a crow; therefore, you are physically unable to kill a villager.",
"player_dead": "You are already dead.",
"no_suicide": "Suicide is bad. Don't do it.",
@ -387,7 +386,7 @@
"villager_bit_2": "You dreamt of running through the woods outside the village at night, wind blowing across your face as you weave between the pines. Suddenly you hear a rustling sound as a monstrous creature jumps out at you - a werewolf! You start running as fast as you can, you soon feel yourself falling down as you trip over a rock. You look up helplessly as the werewolf catches up to you, then wake up screaming.",
"villager_bit_3": "You had a strange dream last night; a person was running away from something through a forest. They tripped and fell over a rock as a shadow descended upon them. Before you could actually see who or what the pursuer was, you woke with a start.",
"alpha_already_bit": "You have already bitten someone this game.",
"alpha_no_bite": "You may only bite someone after another wolf has died during the day.",
"alpha_no_bite": "You may only bite someone after another wolf has died yesterday.",
"bite_error": "Please choose who to bite by specifying their nick.",
"alpha_no_bite_wolf": "You may not bite other wolves.",
"alpha_bite_target": "You have chosen to bite \u0002{0}\u0002.",
@ -446,7 +445,7 @@
"hag_notify": "You are a \u0002{0}hag\u0002. You can hex someone to prevent them from using any special powers they may have during the next day and night. Use \"hex <nick>\" to hex them. Only detectives can reveal your true identity, seers will see you as a regular villager.",
"sorcerer_notify": "You are a \u0002{0}sorcerer\u0002. You can use \"observe <nick>\" to observe someone and determine if they are the seer, oracle, or augur. Only detectives can reveal your true identity, seers will see you as a regular villager.",
"wolf_cub_notify": "You are a \u0002wolf cub\u0002. While you cannot kill anyone, the other wolves will become enraged if you die and will get two kills the following night.",
"alpha_wolf_notify": "You are an \u0002alpha wolf\u0002. Once per game following the death of another wolf during the day, you can choose to bite the wolves' next target to turn them into a wolf instead of killing them. Kill villagers by using \"kill <nick>\" and \"bite\" to use your once-per-game bite power.",
"alpha_wolf_notify": "You are an \u0002alpha wolf\u0002. Once per game following the death of another wolf, you can bite someone by using \"bite <nick>\" to turn them into a wolf. You may also use \"kill <nick>\" to kill a villager..",
"werekitten_notify": "You are a \u0002werekitten\u0002. Due to your overwhelming cuteness, the seer always sees you as villager and the gunner will always miss you. Detectives can still reveal your true identity, however. Use \"kill <nick>\" to kill a villager.",
"warlock_notify": "You are a \u0002{0}warlock\u0002. Each night you can curse someone with \"curse <nick>\" to turn them into a cursed villager, so the seer sees them as wolf. Act quickly, as your curse applies as soon as you cast it! Only detectives can reveal your true identity, seers will see you as a regular villager.",
"wolf_mystic_notify": "You are a \u0002wolf mystic\u0002. Each night you divine the number of alive good villagers who have a special role. You may also use \"kill <nick>\" to kill a villager.",

View File

@ -3118,8 +3118,7 @@ def del_player(cli, nick, forced_death=False, devoice=True, end_game=True, death
if nickrole == "wolf cub":
var.ANGRY_WOLVES = True
if nickrole in var.WOLF_ROLES:
if var.GAMEPHASE == "day":
var.ALPHA_ENABLED = True
var.ALPHA_ENABLED = True
for bitten, days in var.BITTEN.items():
brole = var.get_role(bitten)
if brole not in var.WOLF_ROLES and days > 0:
@ -4810,8 +4809,9 @@ def chk_nightdone(cli):
for p in var.ROLES["doomsayer"]:
nightroles.remove(p)
elif var.ALPHA_ENABLED:
# add in alphas that have bitten (note an alpha can kill or bite, but not both)
actedcount += len([p for p in var.BITE_PREFERENCES if p in var.ROLES["alpha wolf"]])
# alphas both kill and bite if they're activated at night, so add them into the counts
nightroles.extend(get_roles("alpha wolf"))
actedcount += len([p for p in var.ALPHA_WOLVES if p in var.ROLES["alpha wolf"]])
for p in var.HUNTERS:
# only remove one instance of their name if they have used hunter ability, in case they have templates
@ -5503,9 +5503,6 @@ def kill(cli, nick, chan, rest):
if role in wolfroles and var.DISEASED_WOLVES:
pm(cli, nick, messages["ill_wolves"])
return
if role == "alpha wolf" and nick in var.BITE_PREFERENCES:
pm(cli, nick, messages["alpha_bite_chosen"])
return
pieces = re.split(" +",rest)
victim = pieces[0]
victim2 = None
@ -6172,13 +6169,8 @@ def bite_cmd(cli, nick, chan, rest):
return
var.ALPHA_WOLVES.add(nick)
var.BITE_PREFERENCES[nick] = actual
# biting someone makes them ineligible to participate in the kill
if nick in var.KILLS:
del var.KILLS[nick]
pm(cli, nick, messages["alpha_bite_target"].format(victim))
relay_wolfchat_command(cli, nick, messages["alpha_bite_wolfchat"].format(nick, victim), ("alpha wolf",), is_wolf_command=True)
debuglog("{0} ({1}) BITE: {2} ({3})".format(nick, var.get_role(nick), actual, var.get_role(actual)))