From 2cf385251835180f5f43c7faf649a0ab503476a5 Mon Sep 17 00:00:00 2001 From: "Vgr E. Barry" Date: Fri, 30 Oct 2015 17:38:39 -0400 Subject: [PATCH] Fix circular imports --- src/gamemodes.py | 3 ++- src/utilities.py | 2 -- src/wolfgame.py | 7 ++++++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/gamemodes.py b/src/gamemodes.py index de24491..792c126 100644 --- a/src/gamemodes.py +++ b/src/gamemodes.py @@ -9,7 +9,6 @@ from src.utilities import * import botconfig from src import events -from src import decorators def game_mode(name, minp, maxp, likelihood = 0): def decor(c): @@ -766,6 +765,7 @@ class SleepyMode(GameMode): self.having_nightmare = None def startup(self): + from src import decorators events.add_listener("dullahan_targets", self.dullahan_targets) events.add_listener("transition_night_begin", self.setup_nightmares) events.add_listener("chk_nightdone", self.prolong_night) @@ -777,6 +777,7 @@ class SleepyMode(GameMode): self.west_cmd = decorators.cmd("west", "w", chan=False, pm=True, playing=True, phases=("night",))(self.west) def teardown(self): + from src import decorators events.remove_listener("dullahan_targets", self.dullahan_targets) events.remove_listener("transition_night_begin", self.setup_nightmares) events.remove_listener("chk_nightdone", self.prolong_night) diff --git a/src/utilities.py b/src/utilities.py index 1fcbcb2..ea2f8a3 100644 --- a/src/utilities.py +++ b/src/utilities.py @@ -2,8 +2,6 @@ import src.settings as var import botconfig import re -from src.__init__ import debuglog - # Some miscellaneous helper functions def mass_mode(cli, md_param, md_plain): diff --git a/src/wolfgame.py b/src/wolfgame.py index cd613b7..63278c9 100644 --- a/src/wolfgame.py +++ b/src/wolfgame.py @@ -44,7 +44,10 @@ from oyoyo.parse import parse_nick import botconfig import src.settings as var from src.utilities import * -from src import decorators, events, logger, debuglog +from src import decorators, events, logger, utilities, debuglog + +# make debuglog accessible anywhere +utilities.debuglog = debuglog # done this way so that events is accessible in !eval (useful for debugging) Event = events.Event @@ -4856,6 +4859,8 @@ def chk_nightdone(cli): if var.PHASE == "night": # Double check transition_day(cli) +utilities.chk_nightdone = chk_nightdone # for some events to access + @cmd("nolynch", "nl", "novote", "nv", "abstain", "abs", playing=True, phases=("day",)) def no_lynch(cli, nick, chan, rest): """Allows you to abstain from voting for the day."""