Beispiel #1
0
def getMsg(request):
    uid = request.GET.get('uid', None)  # 获取请求消息用户ID
    if uid is not None:
        uid = int(uid)
        if uid not in user_dict:  # 如果用户首次请求则建立用户实例
            user_dict[uid] = Player()
        try:
            msgs = user_dict[uid].gettMsg(
            )  # 返回所有消息列表 [{from_id:111,to_id:111.....},{},{}]
            return HttpResponse(json.dumps(msgs))  # 响应一个json格式字符串
        except Exception, e:
            print str(e)
Beispiel #2
0
def sendMsg(reuqest):
    data = reuqest.POST.get('data', None)  # 接受前端传过来的json
    data = json.loads(data)  # 把json转成python字典
    now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')  # 获取服务器时间
    data['time'] = now
    to_id = int(data['to_id'])  # 获取朋友的id
    if to_id not in user_dict:  # 如果用户不在全局用户字典中则加入
        user_dict[to_id] = Player()
    try:
        user_dict[to_id].msg_q.put(data)  # 向用户字典中的对象的队列里加入一条消息
    except Exception, e:
        print e
Beispiel #3
0
def parse_rankings(file, order=False):
    csv_reader = csv.reader(file)
    players_list = next(csv_reader)[1:]
    players_map = dict(zip(players_list, [Player(name=player) for player in players_list]))

    for ratings_row in csv_reader:
        # Column 1 is the timestamp value
        # Update player mapping with weighted score for each letter rank
        for col_idx, rating in enumerate(ratings_row[1:]):
            if RANKING_WEIGHT[rating] is not None:
                players_map[players_list[col_idx]].ratings.append(RANKING_WEIGHT[rating])

    if order:
        return _ordered_tuple_from(players_map)
    else:
        return players_map
Beispiel #4
0
 def __init__(self):
     super().__init__("War")
     self.players = [Player() for i in range(self.np)]
Beispiel #5
0
 def reset_game(self):
     self.players = [Player() for i in range(self.np)]
     self.deck = Deck()