| | |
| | | import PlayerCrossChampionship
|
| | | import GameFuncComm
|
| | | import PlayerFamilyTaofa
|
| | | import PlayerBossReborn
|
| | | import PlayerWeekParty
|
| | | import PlayerFeastWeekParty
|
| | | import PlayerFeastLogin
|
| | |
| | | import PlayerActManyDayRecharge
|
| | | import PlayerActSingleRecharge
|
| | | import PlayerSpringSale
|
| | | import GY_Query_BossFirstKill
|
| | | import PlayerCrossYaomoBoss
|
| | | import PlayerLuckyCloudBuy
|
| | | import PlayerLuckyTreasure
|
| | |
| | | import PlayerFuncSysPrivilege
|
| | | import PlayerActTurntable
|
| | | import PlayerTongTianLing
|
| | | import OpenServerActivity
|
| | | import CrossRealmPlayer
|
| | | import ChNetSendPack
|
| | | import PlayerArena
|
| | |
| | | import PlayerTravel
|
| | | import TurnAttack
|
| | | import PlayerHJG
|
| | | import ObjPool
|
| | |
|
| | | import datetime
|
| | | import time
|
| | |
| | | #PassiveBuffEffMng.OnLoginGFPassive(curPlayer)
|
| | | # 极品白拿
|
| | | PlayerFreeGoods.OnLogin(curPlayer)
|
| | | # BOSS复活活动
|
| | | PlayerBossReborn.OnLogin(curPlayer)
|
| | | # 周狂欢活动
|
| | | PlayerWeekParty.OnLogin(curPlayer)
|
| | | # 购买次数礼包活动
|
| | |
| | | PlayerActSingleRecharge.OnPlayerLogin(curPlayer)
|
| | | # 转盘活动
|
| | | PlayerActTurntable.OnPlayerLogin(curPlayer)
|
| | | # 分支下载奖励记录通知
|
| | | SyncPackDownloadAward(curPlayer)
|
| | | # 登录触发功能开启(老号处理)
|
| | | GameFuncComm.DoFuncOpenLogic(curPlayer)
|
| | | # 神兽
|
| | |
| | | PlayerFB.OnLogin(curPlayer)
|
| | | #技能专精信息
|
| | | #SkillShell.NotifyElementSkillInfo(curPlayer)
|
| | | #Boss首杀
|
| | | GY_Query_BossFirstKill.OnPlayerLogin(curPlayer)
|
| | | #通天令
|
| | | PlayerTongTianLing.OnPlayerLogin(curPlayer)
|
| | | #创角奖励
|
| | |
| | | PlayerLLMJ.OnPlayerLogin(curPlayer)
|
| | | PlayerBeauty.OnPlayerLogin(curPlayer)
|
| | | PlayerTravel.OnPlayerLogin(curPlayer)
|
| | | OpenServerActivity.OnPlayerLogin(curPlayer)
|
| | |
|
| | | # 上线查询一次充值订单
|
| | | # curPlayer.SendDBQueryRecharge() 不查了,由在线轮询触发即可
|
| | |
| | | # 特殊说明: 如果地图没有完全初始化好,客户端断开或者异常等情况会触发RunGateGameServerMapServerKickOutPlayerNoSave
|
| | | # 那么在DoPlayerLogin 中设置的数据将不会被保存, 如会导致第一个任务重复触发问题,记录多次发送
|
| | | EventReport.WriteEvent_Entry(curPlayer, 4)
|
| | | #EventReport.EventReport(ShareDefine.Def_UserAction_FirstLogin, "", curPlayer)
|
| | | |
| | | |
| | | curPlayer.SetFightPoint(1) # 初始化为1倍消耗
|
| | |
|
| | | #---补满血满魔---
|
| | |
| | |
|
| | | #检查更新总战斗力
|
| | | #PlayerBillboard.UpdatePlayerFPTotalBillboard(curPlayer, True)
|
| | | EventReport.WriteEvent_FightPower(curPlayer)
|
| | |
|
| | | #清除在本地图离线记录信息
|
| | | PlayerControl.RemoveLeaveServerPlayerInfo(curPlayer.GetPlayerID())
|
| | |
| | | # 红颜等级奖励
|
| | | elif rewardType == ChConfig.Def_RewardType_BeautyLVAward:
|
| | | PlayerBeauty.GetBeautyLVAward(curPlayer, dataEx)
|
| | | # 领取分包下载奖励
|
| | | elif rewardType == ChConfig.Def_RewardType_DownLoad:
|
| | | GetDownloadAward(curPlayer, dataEx)
|
| | | # 开服庆典积分阶段奖励 |
| | | elif rewardType == ChConfig.Def_RewardType_OSACelebrationPointAward:
|
| | | OpenServerActivity.GetOSACelebrationPointAward(curPlayer, dataEx)
|
| | |
|
| | |
|
| | | # 每日免费直购礼包
|
| | |
| | | # 领取单笔累充领取
|
| | | elif rewardType == ChConfig.Def_RewardType_SingleRecharge:
|
| | | PlayerActSingleRecharge.OnGetSingleRechargeAward(curPlayer, dataEx, dataExStr)
|
| | | # 领取boss复活活动奖励
|
| | | elif rewardType == ChConfig.Def_RewardType_BossReborn:
|
| | | PlayerBossReborn.GetBossRebornActionAward(curPlayer, dataEx)
|
| | | # 领取许愿池奖励
|
| | | elif rewardType == ChConfig.Def_RewardType_WishingWell:
|
| | | PlayerWishingWell.DoGetWishingAward(curPlayer)
|
| | |
| | | adCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ADCnt % adID)
|
| | | if not adCnt and syncADIDList == None:
|
| | | continue
|
| | | adInfo = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCADInfo)
|
| | | adInfo = ChPyNetSendPack.tagSCADInfo()
|
| | | adInfo.ADID = adID
|
| | | adInfo.ADCnt = adCnt
|
| | | adInfoList.append(adInfo)
|
| | |
| | | if not adInfoList:
|
| | | return
|
| | |
|
| | | clientPack = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCADInfoList)
|
| | | clientPack = ChPyNetSendPack.tagSCADInfoList()
|
| | | clientPack.ADInfoList = adInfoList[:255]
|
| | | clientPack.Count = len(clientPack.ADInfoList)
|
| | | NetPackCommon.SendFakePack(curPlayer, clientPack)
|
| | |
| | | NetPackCommon.SendFakePack(curPlayer, sendPack)
|
| | | return
|
| | |
|
| | | def GetDownloadAward(curPlayer, dataEx):
|
| | | ##分包下载奖励 dataEx 0直接领取 1发邮件
|
| | | playerID = curPlayer.GetPlayerID()
|
| | | downloadAwardNum = IpyGameDataPY.GetFuncCfg('DownReward', 2)
|
| | | curAwardNum = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DownloadAwardState)
|
| | | if curAwardNum == downloadAwardNum:
|
| | | GameWorld.DebugLog("已领取分包奖励! curAwardNum(%s) == downloadAwardNum(%s)" % (curAwardNum, downloadAwardNum), playerID)
|
| | | return
|
| | | |
| | | awardItemList = IpyGameDataPY.GetFuncEvalCfg('DownReward', 1)
|
| | | if not awardItemList:
|
| | | return
|
| | | |
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DownloadAwardState, downloadAwardNum)
|
| | | GameWorld.DebugLog("领取分包下载奖励: curAwardNum=%s,downloadAwardNum=%s" % (curAwardNum, downloadAwardNum), playerID)
|
| | | if dataEx == 1:
|
| | | PlayerMail.SendMailByKey('SubpackageDownload', curPlayer.GetID(), awardItemList)
|
| | | else:
|
| | | ItemControler.GivePlayerItemOrMail(curPlayer, awardItemList, event=["PackDownload", False, {}])
|
| | | SyncPackDownloadAward(curPlayer)
|
| | | return
|
| | |
|
| | | def SyncPackDownloadAward(curPlayer):
|
| | | #分包下载奖励记录通知
|
| | | downloadAwardNum = IpyGameDataPY.GetFuncCfg('DownReward', 2)
|
| | | sendPack = ChPyNetSendPack.tagMCPackDownloadRecord()
|
| | | sendPack.Clear()
|
| | | sendPack.Record = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DownloadAwardState) == downloadAwardNum
|
| | | NetPackCommon.SendFakePack(curPlayer, sendPack)
|
| | | return
|
| | |
|
| | | def OnGiveAwardByClient(curPlayer, rewardType, dictKey, awardCfg, eventName=""):
|
| | | ## 发放前端控制的奖励,后端只负责发放奖励,是否可领奖前端自行判断
|
| | | if curPlayer.NomalDictGetProperty(dictKey):
|