| | |
| | | import ChConfig
|
| | | import GMCommon
|
| | | import DirtyList
|
| | | import CrossBillboard
|
| | | import PlayerBillboard
|
| | | import PlayerExam
|
| | | import PlayerControl
|
| | |
| | | import PyGameData
|
| | | import PlayerTalk
|
| | | import PlayerStore
|
| | | import CrossYaomoBoss
|
| | | import CrossRealmPlayer
|
| | | import CrossRealmMsg
|
| | | import CrossRealmPK
|
| | | import CrossChampionship
|
| | | import CrossBattlefield
|
| | | import CrossActAllRecharge
|
| | | import ChPyNetSendPack
|
| | | import NetPackCommon
|
| | | import AuctionHouse
|
| | | import PlayerFairyDomain
|
| | | import GameWorldSkyTower
|
| | | import GameWorldArena
|
| | | import GameWorldItem
|
| | | import PlayerAssist
|
| | | import PlayerLove
|
| | |
|
| | | import time
|
| | | import datetime
|
| | |
| | | callName = pack.GetCallName()
|
| | | resultName = pack.GetResultName() #[queryid, 人气值, 物品ID]
|
| | |
|
| | | if callName == "PlayerRealLoginOK":
|
| | | curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
|
| | | if not curPlayer:
|
| | | return
|
| | | loginMsg = eval(resultName)
|
| | | ChPlayer.DoPlayerRealLoginOK(curPlayer, loginMsg, tick)
|
| | | return
|
| | | |
| | | if callName == "SendMail":
|
| | | title, content, getDays, playerIDList, addItemList, gold, goldPaper, silver, detail, moneySource = eval(resultName)
|
| | | title, content, getDays, playerIDList, addItemList, gold, goldPaper, silver, detail, moneySource, crossMail = eval(resultName)
|
| | | limitTime = str(GameWorld.GetDatetimeByDiffDays(getDays))
|
| | | limitTime = limitTime.split(".")[0]
|
| | | PlayerCompensation.SendPersonalItemMail(title, content, limitTime, playerIDList, addItemList, gold, goldPaper, silver, detail=detail, moneySource=moneySource)
|
| | | PlayerCompensation.SendPersonalItemMail(title, content, limitTime, playerIDList, addItemList, gold, goldPaper, silver, detail=detail, moneySource=moneySource, crossMail=crossMail)
|
| | | return
|
| | |
|
| | | if callName == "SendMailBatch":
|
| | | PlayerCompensation.SendPersonalItemMailBatch(eval(resultName))
|
| | | return
|
| | | |
| | | if callName == "SendEntireMail":
|
| | | mailTypeKey, getDays, limitLV, limitLVType, addItemList, paramList, gold, goldPaper, silver, detail, moneySource = eval(resultName)
|
| | | PlayerCompensation.SendEntireMail(mailTypeKey, getDays, limitLV, limitLVType, addItemList, paramList, gold, goldPaper, silver, detail, moneySource)
|
| | | return
|
| | |
|
| | | if callName == "SendMsgToCrossServer":
|
| | |
| | | if callName == "UpdateBillboard": #地图服务器更新排行榜
|
| | | PlayerBillboard.MapServer_UpdateBillboard(eval(resultName), tick)
|
| | | return
|
| | |
|
| | | if callName == "UpdateCrossBillboard": #地图服务器更新跨服排行榜
|
| | | CrossBillboard.MapServer_UpdateCrossBillboard(eval(resultName))
|
| | | return
|
| | |
|
| | | if callName == 'PyAddFamilyInfoValue': #地图服务器增加战盟信息值
|
| | | curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
|
| | |
| | |
|
| | | if callName == 'ExitExam': #地图服务器玩家退出答题
|
| | | PlayerExam.MapServer_ExitAction(srcPlayerID)
|
| | | return
|
| | | |
| | | if callName == 'FuncOpen':
|
| | | curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
|
| | | if not curPlayer:
|
| | | return
|
| | | PlayerControl.DoFuncOpenLogic(curPlayer, eval(resultName))
|
| | | return
|
| | |
|
| | | if callName == 'TeamNotify':
|
| | |
| | | GameDataRecord.ChangeCoinCnt(eval(resultName))
|
| | | return
|
| | |
|
| | | #跨服排位PK战斗结算
|
| | | if callName == "CrossChampionshipPKOver":
|
| | | CrossChampionship.MapServer_CrossChampionshipPKOver(eval(resultName), tick)
|
| | | return
|
| | | |
| | | #跨服匹配PK战斗结算
|
| | | if callName == "CrossPKOver":
|
| | | CrossRealmPK.MapServer_CrossPKOver(eval(resultName), tick)
|
| | |
| | | #跨服注册结果
|
| | | if callName == "CrossRealmReg":
|
| | | CrossRealmPlayer.OnCrossRealmRegOK(srcPlayerID, eval(resultName), tick)
|
| | | return
|
| | | |
| | | # 跨服战场结算
|
| | | if callName =="CrossBattlefieldOver":
|
| | | CrossBattlefield.MapServer_CrossBattlefieldOver(eval(resultName))
|
| | | return
|
| | | |
| | | # 跨服妖魔boss伤害结算
|
| | | if callName =="CrossYaomoBossHurtInfo":
|
| | | CrossYaomoBoss.MapServer_CrossYaomoBossHurtInfo(eval(resultName))
|
| | | return
|
| | | |
| | | # 跨服全民充值
|
| | | if callName == "CrossActAllRecharge":
|
| | | curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
|
| | | if not curPlayer:
|
| | | return
|
| | | CrossActAllRecharge.MapServer_CrossActAllRecharge(curPlayer, eval(resultName))
|
| | | return
|
| | |
|
| | | #py喇叭聊天
|
| | |
| | | return
|
| | | resultName = '%s' % ret
|
| | |
|
| | | # 竞技场
|
| | | if callName =="Arena":
|
| | | curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
|
| | | if not curPlayer:
|
| | | return
|
| | | ret = GameWorldArena.MapServer_Arena(curPlayer, eval(resultName))
|
| | | resultName = '%s' % ret if ret != None else '' # 需要重置间隔,每次都回复
|
| | | |
| | | # 情缘
|
| | | if callName =="Love":
|
| | | curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
|
| | | if not curPlayer:
|
| | | return
|
| | | ret = PlayerLove.MapServer_Love(curPlayer, eval(resultName))
|
| | | if ret == None:
|
| | | return
|
| | | resultName = '%s' % ret
|
| | | |
| | | # 天星塔
|
| | | if callName == "SkyTower":
|
| | | ret = GameWorldSkyTower.MapServer_SkyTowerInfo(eval(resultName))
|