| | |
| | | import CrossRealmPlayer
|
| | | import IPY_GameWorld
|
| | | import ChPyNetSendPack
|
| | | import CrossPlayerData
|
| | | import NetPackCommon
|
| | | import ChConfig
|
| | |
|
| | |
| | | GameWorld.Log("GY_Query_CrossRealmReg DoResult %s" % funResult, curPlayer.GetPlayerID())
|
| | | if not resultInfo:
|
| | | return
|
| | | registerMap, mapID, dataMapID, copyMapID, posX, posY = resultInfo
|
| | | RegisterEnterCrossServer(curPlayer, registerMap, mapID, dataMapID, copyMapID, posX, posY)
|
| | | registerMap, mapID, dataMapID, copyMapID, posX, posY, lineID = resultInfo
|
| | | RegisterEnterCrossServer(curPlayer, registerMap, mapID, dataMapID, copyMapID, posX, posY, lineID)
|
| | | return
|
| | |
|
| | | def RegisterEnterCrossServer(curPlayer, registerMap, mapID=0, dataMapID=0, copyMapID=0, posX=0, posY=0):
|
| | | def RegisterEnterCrossServer(curPlayer, registerMap, mapID=0, dataMapID=0, copyMapID=0, posX=0, posY=0, lineID=0):
|
| | | '''
|
| | | @param registerMap: 一般是dataMapID
|
| | | '''
|
| | |
| | |
|
| | | zoneID = 0
|
| | | if not mapID:
|
| | | zoneIpyData = CrossRealmPlayer.GetServerCrossZoneIpyData(registerMap)
|
| | | zoneIpyData = CrossRealmPlayer.GetServerCrossZoneMapIpyData(registerMap)
|
| | | if not zoneIpyData:
|
| | | GameWorld.ErrLog("找不到该服务器对应跨服分区: registerMap=%s" % (registerMap))
|
| | | return
|
| | |
| | | prepareEnterCrossServer.DataMapID = registerMap
|
| | | NetPackCommon.SendFakePack(curPlayer, prepareEnterCrossServer)
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PlayerKey_CrossRegisterMap, registerMap)
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ReqCrossFBFuncLine, lineID)
|
| | | CrossPlayerData.OnPlayerCrossReg(curPlayer)
|
| | | #curPlayer.SendMergeRegisterPlayer(mapID, dataMapID, copyMapID, posX, posY)
|
| | | curPlayer.SendMergeRegisterPlayerAfterChange(CrossRealmPlayer.GetCrossPlayerName(curPlayer), mapID, dataMapID, copyMapID, posX, posY)
|
| | | GameWorld.Log(" 发送跨服玩家数据注册: registerMap=%s,zoneID=%s,mapID=%s,dataMapID=%s,copyMapID=%s,posX=%s,posY=%s,GetVsRoomId=%s" |
| | | % (registerMap, zoneID, mapID, dataMapID, copyMapID, posX, posY, curPlayer.GetVsRoomId()), playerID)
|
| | | GameWorld.Log(" 发送跨服玩家数据注册: registerMap=%s,lineID=%s,zoneID=%s,mapID=%s,dataMapID=%s,copyMapID=%s,posX=%s,posY=%s,GetVsRoomId=%s" |
| | | % (registerMap, lineID, zoneID, mapID, dataMapID, copyMapID, posX, posY, curPlayer.GetVsRoomId()), playerID)
|
| | | return
|
| | |
|
| | | ## 跨服赛报名结果(上传数据)
|
| | |
| | |
|
| | | if registerMap in ChConfig.RegisterEnter_CrossServerMapIDList:
|
| | | CrossRealmPlayer.DoEnterCrossRealm(curPlayer)
|
| | | PlayerControl.SetCrossRealmState(curPlayer, registerMap)
|
| | | PlayerControl.SetCrossMapID(curPlayer, registerMap)
|
| | | NetPackCommon.SendFakePack(curPlayer, ChPyNetSendPack.tagMCStartEnterCrossServer())
|
| | | return
|
| | |
|