示例#1
0
文件: bot.py 项目: bawNg/pyPickup
    def game_on_game_in_progress(self, g):
        for player in g.players:
            self.send_message(player.name, message.game.in_progress, server=g.server.name, password=g.password, \
                              ip=g.server.address[0], port=g.server.address[1])
            
            user = User.find_or_create_by_nick(player.name)
            if not user.games_played: user.games_played = 0
            user.games_played += 1
            user.save()
        
        user = User.find_or_create_by_nick(g.owner)
        if not user.games_admined: user.games_admined = 0
        user.games_admined += 1
        user.save()
        
        game_mode = "highlander" if g.is_highlander else "%sv%s" % (g.max_players / 2, g.max_players / 2)
        team_groups = (g.get_class_groups() if g.is_highlander else g.get_team_groups())
        team_groups = dict(map(lambda k: (str(k), team_groups[k]), team_groups))
        game = Game(created_at=datetime.datetime.now(), mode=game_mode, server=g.server.name, \
                    map=g.map, admin=g.owner, teams=team_groups)
        game.save()

        #self.set_topic_game_inprogress()
        self.game_end()

        self.send_message(message.game.sent_password)
示例#2
0
 def cmd_set(self, c, e):
     if e.payload == "user":
         user = User.find_or_create_by_nick(e.args[1])
         attr, value = e.args[2].split("=", 1)
         setattr(user, attr, int(value) if value.isdigit() else value)
         user.save()
         self.send_msg("Set attribute [%s] for user [%s] to value [%s]." % (attr, user.nickname, value))
示例#3
0
文件: bot.py 项目: bawNg/pyPickup
 def on_dcc_connect(self, c, e):
     #user = User.find_one({'nickname': c.nick})
     user = User.find_or_create_by_nick(c.nick)
     user.last_ip_address = e.source()
     user.save()
     print "[on_dcc_connect] Updated ip address from nickname [%s] to [%s]." % (c.nick, e.source())
     c.privmsg("Your IP has been authorized for web interface access.")
     c.disconnect()
     self.httpd.status[c.nick] = "updated"