| | |
| | | import ChItem
|
| | | import ItemCommon
|
| | | import ItemControler
|
| | | import ChEquip
|
| | | import FunctionNPCCommon
|
| | | import PlayerGMOper
|
| | | import ReadChConfig
|
| | |
| | | import ChPyNetSendPack
|
| | | import DataRecordPack
|
| | | import PlayerBillboard
|
| | | import UpdatePlayerName
|
| | | import PlayerOnlinePrize
|
| | | import PlayerLVAward
|
| | | import PlayerGoldGift
|
| | |
| | | import PlayerSuccess
|
| | | import PlayerDienstgrad
|
| | | import PlayerFreeGoods
|
| | | import PlayerRecover
|
| | | import PlayerEquipDecompose
|
| | | import PlayerCrossRealmPK
|
| | | import PlayerCrossChampionship
|
| | | import GameFuncComm
|
| | |
| | |
|
| | | if PlayerControl.GetCrossMapID(curPlayer):
|
| | | CrossRealmPlayer.DoExitCrossRealm(curPlayer)
|
| | | |
| | | if curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomScene):
|
| | | PlayerFB.DoExitCustomScene(curPlayer)
|
| | |
|
| | | PetControl.DoLogic_PetLoadMapOK(curPlayer)
|
| | |
|
| | |
| | | #通知玩家死亡时间
|
| | | #PlayerControl.PlayerControl(curPlayer).NotifyPlayerDeadTime(curPlayer)
|
| | |
|
| | | #角色改名次数
|
| | | #UpdatePlayerName.Sync_UpdatePlayerNameCount(curPlayer)
|
| | | |
| | | # 坐骑相关通知
|
| | | PlayerHorse.PlayerHorseLogin(curPlayer)
|
| | |
|
| | |
| | | #PlayerDienstgrad.RefreshBillBoardDienstgrad(curPlayer)
|
| | | # 称号
|
| | | PlayerDienstgrad.Sync_AllDienstgradOnLogin(curPlayer)
|
| | | # 资源找回OnLogin
|
| | | PlayerRecover.RecoverOnLogin(curPlayer)
|
| | |
|
| | | # ʱװ
|
| | | PlayerCoat.OnLogin_Coat(curPlayer)
|
| | |
| | | # 通知设置的被动功法
|
| | | #PassiveBuffEffMng.OnLoginGFPassive(curPlayer)
|
| | | PlayerOnlinePrize.OnPlayerLogin(curPlayer)
|
| | | #装备分解
|
| | | #PlayerEquipDecompose.PlayerLogin(curPlayer)
|
| | | # 极品白拿
|
| | | PlayerFreeGoods.OnLogin(curPlayer)
|
| | | # BOSS复活活动
|
| | |
| | |
|
| | | # 同步排行榜
|
| | | PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer, isAll=True)
|
| | | |
| | | # 重置玩家改名次数
|
| | | #UpdatePlayerName.ResetChangeNameCnt(curPlayer)
|
| | | return
|
| | | #---------------------------------------------------------------------
|
| | |
|
| | |
| | | PlayerControl.SetPlayerSightLevel(curPlayer, curPlayer.GetID())
|
| | | if curPlayer.GetSight() != 0:
|
| | | PlayerControl.SetSight(curPlayer, 0)
|
| | | #刷新玩家的视野
|
| | | #if not GameWorld.IsCrossServer() and (PlayerControl.GetCrossMapID(curPlayer) or PlayerControl.GetCustomMapID(curPlayer)):
|
| | | # GameWorld.DebugLog("===登录本服地图时,处于跨服或自定义场景状态,不刷新视野!", curPlayer.GetPlayerID())
|
| | | # PlayerControl.SetPlayerSightLevel(curPlayer, curPlayer.GetID())
|
| | | #elif not GameWorld.IsCrossServer():
|
| | | # realmDifficulty = PlayerControl.GetMapRealmDifficulty(curPlayer)
|
| | | # if realmDifficulty:
|
| | | # GameWorld.DebugLog("===登录本服地图时,处于境界难度地图,自动设置难度! realmDifficulty=%s" % realmDifficulty, curPlayer.GetPlayerID())
|
| | | # PlayerControl.SetRealmDifficulty(curPlayer, realmDifficulty)
|
| | | |
| | | |
| | | PlayerState.ChangePlayerSigh(curPlayer, tick)
|
| | |
|
| | | if GameWorld.IsCrossServer():
|
| | |
| | | PlayerControl.SetPlayerSightLevel(curPlayer, curPlayer.GetID())
|
| | | if curPlayer.GetSight() != 0:
|
| | | PlayerControl.SetSight(curPlayer, 0)
|
| | | #刷新自己的视野
|
| | | #if not GameWorld.IsCrossServer() and (PlayerControl.GetCrossMapID(curPlayer) or curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomScene)):
|
| | | # GameWorld.DebugLog("===本服LoadMapOK时玩家处于跨服或自定义场景状态,不设置可见!", curPlayer.GetPlayerID())
|
| | | # PlayerControl.SetPlayerSightLevel(curPlayer, curPlayer.GetID())
|
| | | #elif not GameWorld.IsCrossServer():
|
| | | # realmDifficulty = PlayerControl.GetMapRealmDifficulty(curPlayer)
|
| | | # if realmDifficulty:
|
| | | # GameWorld.DebugLog("===本服LoadMapOK时玩家处于境界难度地图,自动设置难度!realmDifficulty=%s" % realmDifficulty, curPlayer.GetPlayerID())
|
| | | # PlayerControl.SetRealmDifficulty(curPlayer, realmDifficulty)
|
| | | |
| | | |
| | | curPlayer.RefreshView()
|
| | | curPlayer.SetVisible(True)
|
| | |
|
| | |
| | |
|
| | | #在线时间
|
| | | PlayerOnlinePrize.CalcOnlineTime(curPlayer)
|
| | | #首充提示时间
|
| | | PlayerGoldGift.UpdateFirstGoldTime(curPlayer)
|
| | | #玩家未回图形验证码下线将会记录错误次数
|
| | | #===========================================================================
|
| | | # if curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_Captcha_WaitSign) \
|
| | |
| | | elif rewardType == ChConfig.Def_RewardType_LVAward:
|
| | | PlayerLVAward.GetPlayerLVAward(curPlayer, dataEx)
|
| | | # 首充礼包奖励
|
| | | elif rewardType == ChConfig.Def_RewardType_GoldGiftFirst:
|
| | | PlayerGoldGift.GetPlayerGoldGiftFirst(curPlayer, dataEx)
|
| | | elif rewardType == ChConfig.Def_RewardType_FirstCharge:
|
| | | PlayerGoldGift.GetPlayerFirstCharge(curPlayer, dataEx, dataExStr)
|
| | | # 领取极品白拿
|
| | | elif rewardType == ChConfig.Def_RewardType_FreeGoods:
|
| | | PlayerFreeGoods.OnGetFreeGoods(curPlayer, dataEx)
|
| | |
| | | #PlayerControl.SetRealmDifficulty(curPlayer, clientData.RealmDifficulty)
|
| | | return
|
| | |
|
| | | #// A0 08 查看通用记录 #tagCSViewGameRec
|
| | | #
|
| | | #struct tagCSViewGameRec
|
| | | #{
|
| | | # tagHead Head;
|
| | | # WORD RecType; //记录类型
|
| | | # DWORD RecID; //自定义记录ID
|
| | | #};
|
| | | def OnViewGameRec(index, clientData, tick):
|
| | | curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
|
| | | recType = clientData.RecType
|
| | | recID = clientData.RecID
|
| | | if recType not in ShareDefine.Def_GameRecTypeList:
|
| | | return
|
| | | if recType in ShareDefine.Def_ViewGameRecSelfList:
|
| | | recID = curPlayer.GetPlayerID()
|
| | | recTypeIDMgr = DBDataMgr.GetGameRecMgr().GetRecTypeIDMgr(recType, recID)
|
| | | SyncGameRecInfo(curPlayer, recType, recID, recTypeIDMgr.GetDataList())
|
| | | return
|
| | |
|
| | | def SyncGameRecInfo(curPlayer, recType, recID, recDataList):
|
| | | recList = []
|
| | | for recData in recDataList:
|
| | | if not recData:
|
| | | continue
|
| | | rec = ChPyNetSendPack.tagSCGameRec()
|
| | | rec.Time = recData.GetTime()
|
| | | rec.Value1 = recData.GetValue1()
|
| | | rec.Value2 = recData.GetValue2()
|
| | | rec.Value3 = recData.GetValue3()
|
| | | rec.Value4 = recData.GetValue4()
|
| | | rec.Value5 = recData.GetValue5()
|
| | | rec.Value6 = recData.GetValue6()
|
| | | rec.Value7 = recData.GetValue7()
|
| | | rec.Value8 = recData.GetValue8()
|
| | | rec.UserData = recData.GetUserData()
|
| | | rec.UserDataLen = len(rec.UserData)
|
| | | recList.append(rec)
|
| | | |
| | | clientPack = ChPyNetSendPack.tagSCGameRecInfo()
|
| | | clientPack.Clear()
|
| | | clientPack.RecType = recType
|
| | | clientPack.RecID = recID
|
| | | clientPack.RecList = recList
|
| | | clientPack.Count = len(clientPack.RecList)
|
| | | NetPackCommon.SendFakePack(curPlayer, clientPack)
|
| | | return
|