def disable(self): """actions to take when the plugin is disabled""" was_recording_all_players = self._recording_all_players self.stop_recording_all_players() if was_recording_all_players: self._recording_all_players = True # persist the value so demo can restart when plugin is re-enabled Plugin.disable(self)
def __init__(self, console, config=None): self._breakpoints = 0 self._current_rotation_no = 2 self._rotations = {} self._autorotation = True self._randomize_rotation = True self._adjust_players_settings = True self._max_players = 64 self._current_players_setting = 16 self._player_counts = {} self._delay_player_check = True self._breakpoints = 0 self._ticket_configs = 0 self._gametype_mults = {} self._max_tickets = 100 self._use_mult = 100 self._autotickets = True self._idle_kick_disable = False self._idle_player_count = 0 self._current_tickets = 0 self._bps = {} self._next_gametype = '' self._next_map_name = '' self._easy_map_names = {} Plugin.__init__(self, console, config)
def __init__(self, console, config=None): self._adminPlugin = None self._re_valid_command_name = re.compile(r"^[a-z][\w]+$", re.IGNORECASE) self._re_argument_placeholder = re.compile( r"<ARG(?::(?P<type>[A-Z_]+)(?::(?P<property>.*?))?)?>") Plugin.__init__(self, console, config)
def __init__(self, console, config=None): """ Build the plugin object. """ Plugin.__init__(self, console, config) self.min_ingame_humans = 1 """:type : int""" self.consecutive_deaths_threshold = 3 """:type : int""" self.inactivity_threshold_second = 50 """:type : int""" self.last_chance_delay = None """:type : str""" self.kick_reason = None """:type : str""" self.are_you_afk = None """:type : str""" self.suspicion_announcement = None """:type : Timer""" self.immunity_level = 100 """:type : int""" self.check_timer = None """:type : dict[Client, threading.Timer]""" self.kick_timers = WeakKeyDictionary() """:type : int""" self.last_global_check_time = time()
def __init__(self, *args, **kwargs): """ Build the plugin object. """ Plugin.__init__(self, *args, **kwargs) self.crontab = None self.last_activity_time = 0 self.max_idle_time = 180
def __init__(self, console, config=None): self._adminPlugin = None self._configPath = '' self.no_level_check_level = 100 self._scrambling_planned = False self._autoscramble_rounds = False self._autoscramble_maps = False self._scrambler = Scrambler(self) Plugin.__init__(self, console, config)
def __init__(self, console, config=None): self.restriction_status = True self.punish_method = 1 self.warn_duration = '1h' self._adminPlugin = None self._current_gametype = None self._restrictedweapons = [] self._whitelistgametypes = [] Plugin.__init__(self, console, config)
def __init__(self, console, config=None): """ Build the plugin instance :param console: The console instance :param config: The plugin configuration file instance """ self._adminPlugin = None self._re_valid_command_name = re.compile(r"^[a-z][\w]+$", re.IGNORECASE) self._re_argument_placeholder = re.compile(r"<ARG(?::(?P<type>[A-Z_]+)(?::(?P<property>.*?))?)?>") Plugin.__init__(self, console, config)
def __init__(self, console, config=None): """ Initialize plugin object """ self._re_startserverdemo_success = re.compile(r"""^startserverdemo: recording (?P<name>.+) to (?P<file>.+\.(?:dm_68|urtdemo))$""") self._adminPlugin = None self._haxbusterurt_demo_duration = 0 # if the haxbusterurt plugin is present, how long should last demo of cheaters self._follow_demo_duration = 0 # if the follow plugin is present, how long should last demo of cheaters self._recording_all_players = False # if True, then connecting players will be recorded Plugin.__init__(self, console, config)
def __init__(self, console, config=None): Plugin.__init__(self, console, config) if self.console.gameName not in ('iourt41', 'iourt42', 'iourt43'): self.critical("unsupported game : %s" % self.console.gameName) raise SystemExit(220) ### kill modes constants ### try: self.UT_MOD_BLED = self.console.UT_MOD_BLED except AttributeError, err: self.warning("could not get UT_MOD_BLED value from B3 parser. %s" % err) self.UT_MOD_BLED = '23'
def __init__(self, console, config=None): Plugin.__init__(self, console, config) """:type: b3.plugins.admin.AdminPlugin """ self._adminPlugin = None """:type: int """ self._non_member_level = None """:type: bool """ self._automation_enabled = None # None if not installed, False if installed but disabled """:type: int """ self._total_slots = None """:type: int """ self._min_free_slots = None """:type: int """ self._delay = None self._kick_in_progress = threading.Lock() """:type: int """ self._retain_free_duration = 0 """:type: dict """ self._retain_free_slot_info = None
def __init__(self, console, config=None): Plugin.__init__(self, console, config) self._adminPlugin = self.console.getPlugin('admin') if not self._adminPlugin: raise AttributeError('could not find admin plugin') self._non_member_level = None """:type: int """ self._automation_enabled = None # None if not installed, False if installed but disabled """:type: bool """ self._total_slots = None """:type: int """ self._min_free_slots = None """:type: int """ self._delay = None """:type: int """ self._kick_in_progress = threading.Lock() self._retain_free_duration = 0 """:type: int """ self._retain_free_slot_info = None """:type: dict """
def __init__(self, console, config=None): self._adminPlugin = None self.vote_interval = None self.nextmap_display_interval = None self.vote_duration = None self.vote_threshold = None self.number_of_vote_options = None self.exclude_current_map = None self.exclude_next_map = None self.map_options_pickup_strategy = None self.map_options_source_file = None self.current_vote_session = None self.current_vote_session_timer = None self.last_vote_start_time = None self.nextmap_timer = None self.game_modes_shortnames = {} Plugin.__init__(self, console, config)
def __init__(self, console, config=None): self._admin_plugin = None self.console = console #check if round is active or not self._active = False self._server_size = 16 self._slots_when_empty = 16 self._min_slots = 4 #change roundStart/RestartPlayerCount self._do_rs = True self._do_change_maps = False self._do_end_round = True self._maps = {} self._maps_many = '' self._maps_few = '' self._maps_current = '' self._maps_load_error = {'few' : True, 'many' : True} self._maps_parsed = False self._maps_first_change = True self._border_many = 10 self._border_few = 5 Plugin.__init__(self, console, config)
def __init__(self, console, config=None): """ Build the plugin object. """ Plugin.__init__(self, console, config) self.min_ingame_humans = 1 """:type : int""" self.consecutive_deaths_threshold = 3 """:type : int""" self.inactivity_threshold_second = 50 """:type : int""" self.last_chance_delay = None """:type : int""" self.kick_reason = None """:type : str""" self.are_you_afk = None """:type : str""" self.suspicion_announcement = None """:type : str""" self.immunity_level = 100 """:type : Timer""" self.check_timer = None """:type : int""" self.kick_timers = WeakKeyDictionary() """:type : dict[Client, threading.Timer]""" self.last_global_check_time = time() """:type : int"""
def enable(self): """actions to take when the plugin is enabled""" if self._recording_all_players: self.start_recording_all_players() Plugin.enable(self)
def __init__(self, console, config=None): self._delay = 40 Plugin.__init__(self, console, config) wait_for_rcon_crontab = None
def __init__(self, console, config=None): Plugin.__init__(self, console, config=config) self._messages = {} self.stub_method_call_count = 0 self.stub_method2_call_count = 0 self.onEvent_call_count = 0
def __init__(self, console, config=None): self.advertise_on_map_change = ServermonitorPlugin.DEFAULT_ADVERTISE_ON_MAP_CHANGE self.servers = [] self.advertisement_format = ServermonitorPlugin.DEFAULT_ADVERTISEMENT_FORMAT Plugin.__init__(self, console, config)
def __init__(self, console, config=None): self._adminPlugin = None self._re_valid_command_name = re.compile(r"^[a-z][\w]+$", re.IGNORECASE) self._re_argument_placeholder = re.compile(r"<ARG(?::(?P<type>[A-Z_]+)(?::(?P<property>.*?))?)?>") Plugin.__init__(self, console, config)
def __init__(self, console, config=None): self._delay = 30 self._disable_vehicle_respawn_maps = [] self._whitelist_gametypes = [] Plugin.__init__(self, console, config)
def startMap(self, mapName=None): if mapName: self.mapName = mapName self._mapTimeStart = self.console.time() def mapEnd(self): self._mapTimeStart = None if __name__ == '__main__': from b3.plugin import Plugin from b3.fake import fakeConsole fakeplugin = Plugin(fakeConsole) def onEvent(event): if event.type == EVT_GAME_MAP_CHANGE: fakeConsole.debug("event EVT_GAME_MAP_CHANGE : %r" % event.data) fakeConsole.debug("previous map was %s" % event.data['old']) fakeConsole.debug("new map is %s" % event.data['new']) fakeplugin.onEvent = onEvent fakeConsole.registerHandler(EVT_GAME_MAP_CHANGE, fakeplugin) game = Game(fakeConsole, 'fakegamename') print('setting map name to map1...') game.mapName = 'map1' assert game.mapName == 'map1'
def disable(self): self.cancel_current_vote_session() self._cancel_nextmap_display_timer() Plugin.disable(self)
def __init__(self, console, config=None): self.ident = None self.secret_key = None self.bf3stats_api = None self.age_triggering_player_update = 60 * 60 * 24 * 7 Plugin.__init__(self, console, config)
def enable(self): Plugin.enable(self) self._init_nextmap_display_timer()