def check_command(self, params): if params[0] == 0: # don't react to server-own messages return # msg = params[2].strip() if not msg.startswith('/'): return # msg = msg[1:] echo = None if msg in self.callvotes: vote_details = self.callvotes[msg] echo = messages.Echo(vote_details[0], vote_details[1]) login = params[1] player = self.controller.get_player_by_login(login) try: if self.controller.call_vote_ex(echo, self.ratio, self.timeout, 1): nickname_clean = utilities.strip_colors(player.nickname) #self.controller.chat_send_server_message(nickname_clean + ' started the vote: ' + vote_details[1] + '') #self.controller.chat_send_server_message(nickname_clean) # except Exception as exc: self.controller.logger.message(str(exc), log.LOG_ERROR)
def player_list_to_dc(self, msg): players = self.controller.get_player_list() msg = str(len(players)) + ' playing.\n' for player in players: msg += utilities.strip_colors( player['NickName']) + ' [' + player['Login'] + ']\n' # self.send_string_to_dc(msg)
def player_connect(self, login): player = self.controller.get_player_by_login(login) if player is None: return # nickname_clean = utilities.strip_colors(player.nickname) msg = '**' + nickname_clean + '**[' + player.login + '] connected. (' + str( len(self.controller.players)) + ' online)' self.send_string_to_dc(msg)
def chat_to_dc(self, params): if params[0] == 0: return # if params[2].startswith('/'): return # login = params[1] player = self.controller.get_player_by_login(login) if player is None: return # nickname_clean = utilities.strip_colors(player.nickname) if nickname_clean is None: nickname_clean = '' # msg = '**' + nickname_clean + '**[' + login + '] : ' + params[2] self.send_string_to_dc(msg)
def echo(self, params): if len(params) != 2: return # if params[1] == 'xaseco::dedimania': vals = params[0].split('#') if len(vals) < 3: return # place = vals[0] time = vals[1] login = vals[2] if len(vals) > 3: # login contains the '#' character (is it even possible?) login = ''.join(vals[2:]) # player = self.controller.get_player_by_login(login) if player is None: nickname = login else: nickname = utilities.strip_colors(player.nickname) # msg = '**' + nickname + '**[' + login + '] gained Dedimania place **' + place + '** with a time of **' + time + '**' self.send_string_to_dc(msg)
def new_challenge(self, params): map = params[0] mapname_clean = utilities.strip_colors(map['Name']) msg = 'Switching to map **' + mapname_clean + '** by **' + map[ 'Author'] + '**' self.send_string_to_dc(msg)