xdh
2018-11-19 76aaa2bc9a47e1896638740312affe1ec61f2334
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/usr/bin/python
# -*- coding: GBK -*-
#-------------------------------------------------------------------------------
#
#-------------------------------------------------------------------------------
#
##@package RecallCnt
#
# @todo: ÉèÖÃÕٻظöÊý
# @author Alee
# @date 2011-07-22 15:00
# @version 1.0
#
# ÏêϸÃèÊö:
#------------------------------------------------------------------------------ 
"""Version = 2011-07-22 15:00"""
#µ¼Èë
import ChConfig
import GameWorld
#---------------------------------------------------------------------
#È«¾Ö±äÁ¿
#---------------------------------------------------------------------
 
#---------------------------------------------------------------------
 
## Ö´ÐÐÂß¼­
#  @param curPlayer µ±Ç°Íæ¼Ò
#  @param cmList ²ÎÊýÁбí
#  @return None
#  @remarks º¯ÊýÏêϸ˵Ã÷.
def OnExec(curPlayer, cmList):
    playerID = curPlayer.GetPlayerID()
 
    cmdLen = len(cmList)
    if cmdLen == 2:
        cnt, flag = cmList
    elif cmdLen == 3:    
        playerID, cnt, flag = cmList
    else:
        GameWorld.Log("²ÎÊý²»¶Ô")
        return
    
    limit = pow(2, 32) - 1
    if cnt >= limit or flag >= limit:
        GameWorld.Log("ÊýÖµÒì³£")
        return
    
    recallMgr = GameWorld.GetGameWorld().GetPlayerRecallMgr()
    recall = recallMgr.FindPlayerRecallByPlayerID(playerID)
    
    if recall == None:
        GameWorld.Log("δÉêÇë¹ýÑûÇëÂë %s"%playerID)
        return
    
    #³õʼ»¯Ò»´Î
    recall = recallMgr.GetPlayerRecallByPlayerID(playerID)
    recall.SetRecallCount(cnt)
    recall.SetReceiveFlag(flag)
    
    curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(playerID)
    if not curPlayer:
        return
    
    curPlayer.Sync_PlayerRecallInfo(cnt, flag)
    curPlayer.Sync_SendInviteCode(playerID)