| | |
| | | import PyGameData
|
| | | import GMShell
|
| | | import IPY_PlayerDefine
|
| | | import GameWorldArena
|
| | | import CrossRealmPK
|
| | | import AuctionHouse
|
| | | import PlayerAssist
|
| | |
| | | except:
|
| | | curPlayer.Kick(IPY_PlayerDefine.disWaitForPlayerLoinError)
|
| | | import traceback
|
| | | GameWorld.ErrLog("玩家上线逻辑错误~~~~~\r\n%s" % traceback.format_exc())
|
| | | if GameWorld.GetGameWorld().GetDebugLevel():
|
| | | raise Exception("玩家上线逻辑错误~~~~\r\n%s" % traceback.format_exc())
|
| | | GameWorld.RaiseException("玩家上线逻辑错误\r\n%s" % traceback.format_exc())
|
| | | return
|
| | |
|
| | | #---------------------------------------------------------------------
|
| | |
| | | GameWorldActionControl.OnPlayerLogin(curPlayer)
|
| | | #玩家等级记录
|
| | | PyGameData.g_todayPlayerLVDict[curPlayer.GetID()] = curPlayer.GetLV()
|
| | | #竞技场
|
| | | GameWorldArena.OnPlayerLogin(curPlayer)
|
| | | #跨服PK
|
| | | CrossRealmPK.OnPlayerLogin(curPlayer)
|
| | | #诛仙BOSS
|
| | |
| | | __Func_PlayerDisconnect(curPlayer, tick)
|
| | | except:
|
| | | import traceback
|
| | | GameWorld.ErrLog("玩家下线逻辑错误~~~~~\r\n%s" % traceback.format_exc())
|
| | | if GameWorld.GetGameWorld().GetDebugLevel():
|
| | | raise Exception("玩家下线逻辑错误~~~~\r\n%s" % traceback.format_exc())
|
| | | GameWorld.RaiseException("玩家下线逻辑错误\r\n%s" % traceback.format_exc())
|
| | | #调用底层下线
|
| | | curPlayer.DoDisconnect()
|
| | | return
|
| | |
| | | AuctionHouse.OnPlayerLeaveServer(curPlayer)
|
| | | #协助
|
| | | PlayerAssist.OnLeaveServer(curPlayer)
|
| | | #红包
|
| | | PlayerFamilyRedPacket.OnLeaveServer(curPlayer)
|
| | | #------------镖车逻辑
|
| | | #TruckPlayerDisconnectProcess(curPlayer, tick)
|
| | |
|
| | |
| | | # @return None
|
| | | # @remarks 函数详细说明.
|
| | | def SetPlayerOfflineTime(curPlayer):
|
| | | if PlayerControl.GetIsTJG(curPlayer):
|
| | | return
|
| | | #if PlayerControl.GetIsTJG(curPlayer):
|
| | | # return
|
| | |
|
| | | curPlayerID = curPlayer.GetPlayerID()
|
| | | curFamily = curPlayer.GetFamily()
|
| | |
| | |
|
| | | playerStatePack = IPY_GameServer.IPY_GRefreshPlayerProperty()
|
| | | packValue = playerStatePack.GetValue()
|
| | | packValueEx = playerStatePack.GetValueEx()
|
| | | packType = playerStatePack.GetType()
|
| | |
|
| | | #---特殊逻辑处理---
|
| | |
| | | return
|
| | |
|
| | | if packType == IPY_GameServer.CDBPlayerRefresh_FightPower:
|
| | | curPlayer.SetFightPower(packValue)
|
| | | curPlayer.SetFightPower(packValue, packValueEx)
|
| | | return
|
| | |
|
| | | if packType == IPY_GameServer.CDBPlayerRefresh_ExAttr2:
|