Don't try to voice/devoice fakenicks
There were a few places where we still tried to do this. Also get rid of the FEATURES checking for what voice corresponds to, +v is defined to be the channel mode for voice per RFC so we can safely hardcode it. A few places weren't changed over because it may be better to expand those places to handle the other status modes as well.
This commit is contained in:
parent
0fa7664526
commit
4a7dd390e5
@ -1134,7 +1134,7 @@ class MaelstromMode(GameMode):
|
|||||||
return self._on_join(var, wrapper)
|
return self._on_join(var, wrapper)
|
||||||
|
|
||||||
if not wrapper.source.is_fake or not botconfig.DEBUG_MODE:
|
if not wrapper.source.is_fake or not botconfig.DEBUG_MODE:
|
||||||
cmodes = [("+" + hooks.Features["PREFIX"]["+"], wrapper.source)]
|
cmodes = [("+v", wrapper.source)]
|
||||||
for mode in var.AUTO_TOGGLE_MODES & wrapper.source.channels[channels.Main]:
|
for mode in var.AUTO_TOGGLE_MODES & wrapper.source.channels[channels.Main]:
|
||||||
cmodes.append(("-" + mode, wrapper.source))
|
cmodes.append(("-" + mode, wrapper.source))
|
||||||
var.OLD_MODES[wrapper.source].add(mode)
|
var.OLD_MODES[wrapper.source].add(mode)
|
||||||
|
@ -281,8 +281,9 @@ def reset_modes_timers(var):
|
|||||||
|
|
||||||
# Reset modes
|
# Reset modes
|
||||||
cmodes = []
|
cmodes = []
|
||||||
for plr in list_players():
|
for plr in get_players():
|
||||||
cmodes.append(("-" + hooks.Features["PREFIX"]["+"], plr))
|
if not plr.is_fake:
|
||||||
|
cmodes.append(("-v", plr.nick))
|
||||||
for user, modes in var.OLD_MODES.items():
|
for user, modes in var.OLD_MODES.items():
|
||||||
for mode in modes:
|
for mode in modes:
|
||||||
cmodes.append(("+" + mode, user))
|
cmodes.append(("+" + mode, user))
|
||||||
@ -588,8 +589,7 @@ def replace(var, wrapper, message):
|
|||||||
return_to_village(var, target, show_message=False)
|
return_to_village(var, target, show_message=False)
|
||||||
|
|
||||||
if not var.DEVOICE_DURING_NIGHT or var.PHASE != "night":
|
if not var.DEVOICE_DURING_NIGHT or var.PHASE != "night":
|
||||||
mode = hooks.Features["PREFIX"]["+"]
|
channels.Main.mode(("-v", target), ("+v", wrapper.source))
|
||||||
channels.Main.mode(("-" + mode, target), ("+" + mode, wrapper.source))
|
|
||||||
|
|
||||||
channels.Main.send(messages["player_swap"].format(wrapper.source, target))
|
channels.Main.send(messages["player_swap"].format(wrapper.source, target))
|
||||||
myrole.caller(wrapper.source.client, wrapper.source.nick, wrapper.target.name, "") # FIXME: Old API
|
myrole.caller(wrapper.source.client, wrapper.source.nick, wrapper.target.name, "") # FIXME: Old API
|
||||||
@ -868,9 +868,11 @@ def join_player(var, wrapper, who=None, forced=False, *, sanity=True):
|
|||||||
wrapper.pm(messages["warn_unacked"])
|
wrapper.pm(messages["warn_unacked"])
|
||||||
return False
|
return False
|
||||||
|
|
||||||
cmodes = [("+" + hooks.Features["PREFIX"]["+"], wrapper.source)]
|
cmodes = []
|
||||||
|
if not wrapper.source.is_fake:
|
||||||
|
cmodes.append(("+v", wrapper.source))
|
||||||
if var.PHASE == "none":
|
if var.PHASE == "none":
|
||||||
if not wrapper.source.is_fake or not botconfig.DEBUG_MODE:
|
if not wrapper.source.is_fake:
|
||||||
for mode in var.AUTO_TOGGLE_MODES & wrapper.source.channels[channels.Main]:
|
for mode in var.AUTO_TOGGLE_MODES & wrapper.source.channels[channels.Main]:
|
||||||
cmodes.append(("-" + mode, wrapper.source))
|
cmodes.append(("-" + mode, wrapper.source))
|
||||||
var.OLD_MODES[wrapper.source].add(mode)
|
var.OLD_MODES[wrapper.source].add(mode)
|
||||||
@ -2610,9 +2612,9 @@ def del_player(player, *, devoice=True, end_game=True, death_triggers=True, kill
|
|||||||
newstats.add(frozenset(d.items()))
|
newstats.add(frozenset(d.items()))
|
||||||
var.ROLE_STATS = frozenset(newstats)
|
var.ROLE_STATS = frozenset(newstats)
|
||||||
|
|
||||||
if devoice and (var.PHASE != "night" or not var.DEVOICE_DURING_NIGHT):
|
|
||||||
cmode.append(("-v", player.nick))
|
|
||||||
if not player.is_fake:
|
if not player.is_fake:
|
||||||
|
if devoice and (var.PHASE != "night" or not var.DEVOICE_DURING_NIGHT):
|
||||||
|
cmode.append(("-v", player.nick))
|
||||||
lplayer = player.lower()
|
lplayer = player.lower()
|
||||||
if lplayer.account not in var.DEADCHAT_PREFS_ACCS and lplayer.host not in var.DEADCHAT_PREFS:
|
if lplayer.account not in var.DEADCHAT_PREFS_ACCS and lplayer.host not in var.DEADCHAT_PREFS:
|
||||||
deadchat.append(player)
|
deadchat.append(player)
|
||||||
@ -2922,7 +2924,7 @@ def return_to_village(var, target, *, show_message, new_user=None):
|
|||||||
|
|
||||||
if show_message:
|
if show_message:
|
||||||
if not var.DEVOICE_DURING_NIGHT or var.PHASE != "night":
|
if not var.DEVOICE_DURING_NIGHT or var.PHASE != "night":
|
||||||
channels.Main.mode(("+" + hooks.Features["PREFIX"]["+"], new_user))
|
channels.Main.mode(("+v", new_user))
|
||||||
if target.nick == new_user.nick:
|
if target.nick == new_user.nick:
|
||||||
channels.Main.send(messages["player_return"].format(new_user))
|
channels.Main.send(messages["player_return"].format(new_user))
|
||||||
else:
|
else:
|
||||||
@ -3056,14 +3058,12 @@ def account_change(evt, var, user):
|
|||||||
if user not in channels.Main.users:
|
if user not in channels.Main.users:
|
||||||
return # We only care about game-related changes in this function
|
return # We only care about game-related changes in this function
|
||||||
|
|
||||||
voice = hooks.Features["PREFIX"]["+"]
|
|
||||||
|
|
||||||
if user.account is None and var.ACCOUNTS_ONLY and user in get_players():
|
if user.account is None and var.ACCOUNTS_ONLY and user in get_players():
|
||||||
leave(var, "account", user)
|
leave(var, "account", user)
|
||||||
if var.PHASE == "join":
|
if var.PHASE == "join":
|
||||||
user.send(messages["account_midgame_change"], notice=True)
|
user.send(messages["account_midgame_change"], notice=True)
|
||||||
else:
|
else:
|
||||||
channels.Main.mode(["-" + voice, user.nick])
|
channels.Main.mode(["-v", user.nick])
|
||||||
user.send(messages["account_reidentify"].format(user.account), notice=True)
|
user.send(messages["account_reidentify"].format(user.account), notice=True)
|
||||||
|
|
||||||
# if they were gone, maybe mark them as back
|
# if they were gone, maybe mark them as back
|
||||||
@ -3075,7 +3075,7 @@ def nick_change(evt, var, user, old_rawnick):
|
|||||||
|
|
||||||
if user not in var.DISCONNECTED and user in get_players() and re.search(var.GUEST_NICK_PATTERN, user.nick):
|
if user not in var.DISCONNECTED and user in get_players() and re.search(var.GUEST_NICK_PATTERN, user.nick):
|
||||||
if var.PHASE != "join":
|
if var.PHASE != "join":
|
||||||
channels.Main.mode(["-" + hooks.Features["PREFIX"]["+"], user.nick])
|
channels.Main.mode(["-v", user.nick])
|
||||||
temp = users.FakeUser(None, nick, user.ident, user.host, user.realname, user.account)
|
temp = users.FakeUser(None, nick, user.ident, user.host, user.realname, user.account)
|
||||||
leave(var, "badnick", temp) # pass in a fake user with the old nick (since the user holds the new nick)
|
leave(var, "badnick", temp) # pass in a fake user with the old nick (since the user holds the new nick)
|
||||||
return # Don't do anything else; they're using a guest/away nick
|
return # Don't do anything else; they're using a guest/away nick
|
||||||
@ -3273,8 +3273,9 @@ def begin_day(cli):
|
|||||||
|
|
||||||
if var.DEVOICE_DURING_NIGHT:
|
if var.DEVOICE_DURING_NIGHT:
|
||||||
modes = []
|
modes = []
|
||||||
for player in list_players():
|
for player in get_players():
|
||||||
modes.append(("+v", player))
|
if not player.is_fake:
|
||||||
|
modes.append(("+v", player.nick))
|
||||||
mass_mode(cli, modes, [])
|
mass_mode(cli, modes, [])
|
||||||
|
|
||||||
event = Event("begin_day", {})
|
event = Event("begin_day", {})
|
||||||
@ -4975,8 +4976,9 @@ def transition_night(cli):
|
|||||||
|
|
||||||
if var.DEVOICE_DURING_NIGHT:
|
if var.DEVOICE_DURING_NIGHT:
|
||||||
modes = []
|
modes = []
|
||||||
for player in list_players():
|
for player in get_players():
|
||||||
modes.append(("-v", player))
|
if not player.is_fake:
|
||||||
|
modes.append(("-v", player.nick))
|
||||||
mass_mode(cli, modes, [])
|
mass_mode(cli, modes, [])
|
||||||
|
|
||||||
for x, tmr in var.TIMERS.items(): # cancel daytime timer
|
for x, tmr in var.TIMERS.items(): # cancel daytime timer
|
||||||
|
Loading…
Reference in New Issue
Block a user