| #!/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)  | 
|   |