From c35e176a3b05f745600c6e60f168313d2b9e7b30 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 17 九月 2025 12:00:19 +0800 Subject: [PATCH] 129 【战斗】战斗系统-服务端(司马懿技能;增加按层级结算持续buff效果5003;增加非按攻击力计算伤害支持;技能伤害增加可限制最大攻击力百分比上限配置;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py | 181 ++------------------------------------------ 1 files changed, 11 insertions(+), 170 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py index ba98981..6361081 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py @@ -23,14 +23,12 @@ import ChPlayer import GameServerRefresh import ShareDefine -import PlayerGameWallow import PlayerSignDay import PlayerCoin import PlayerControl import PlayerFamily import PlayerFamilyZhenfa import PlayerOnlinePrize -import NPCCustomRefresh import PlayerLoginDayAward import NPCCommon import FunctionNPCCommon @@ -39,33 +37,19 @@ import FBCommon import PlayerSuccess import PlayerFreeGoods -import PlayerMagicWeapon import ChItem import PlayerGoldInvest -import PlayerNewGuyCard import PlayerCrossRealmPK import PlayerCrossChampionship -import PlayerCrossBattlefield import PlayerPet -import BossHurtMng import PlayerRecover -import GameLogic_FamilyParty import PlayerFamilyRedPacket -import GameLogic_FamilyInvade -import GameLogic_ElderBattlefield -import GameLogic_AllFamilyBoss -import GameLogic_HorsePetBoss -import GameLogic_FamilyWar import OpenServerCampaign import PlayerCostRebate import CrossActCTGBillboard import CrossActAllRecharge import PlayerActCollectWords import PlayerActTotalRecharge -import PlayerActGarbageSorting -import PlayerActXianXiaMJ -import PlayerActGubao -import PlayerActHorsePetTrain import PlayerActLianqi import PlayerActGodGift import PlayerActFamilyGCZ @@ -76,7 +60,6 @@ import PlayerActRechargePrize import PlayerActGrowupBuy import PlayerActTurntable -import PlayerActBossTrial import PlayerActBuyOne import PlayerSpringSale import PlayerBossReborn @@ -93,36 +76,27 @@ import PlayerActLogin import PlayerFlashGiftbag import PlayerDailyGiftbag -import PlayerFairyCeremony import PlayerOfflineSupport -import PlayerNewFairyCeremony -import PlayerActHorsePetFeast import PlayerFeastRedPacket import PlayerCrossYaomoBoss import PlayerLuckyCloudBuy import PlayerLuckyTreasure import PlayerTongTianLing -import PlayerRefineStove import PlayerFlashSale import PlayerWishingWell -import PlayerFairyDomain import CrossPlayerData import PlayerTreasure import PlayerZhanling -import PlayerVip import PlayerLove import IpyGameDataPY -import FamilyRobBoss -import FBHelpBattle -import PlayerAssist import PlayerArena import PyGameData -import PlayerGuaji import PlayerXiangong -import PlayerMineArea import PlayerBillboard import PlayerViewCache import PlayerMail +import PlayerHero +import PlayerTree import datetime import time @@ -141,6 +115,7 @@ #仙盟 PlayerFamily.FamilyOnDay() + PlayerArena.OnDay() PlayerOfflineSupport.OnDay() playerManager = GameWorld.GetPlayerManager() @@ -179,6 +154,8 @@ def DoLogic_OnWeek(tick): GameWorld.Log("MapServer -> OnWeek!") + + PlayerArena.OnWeek() playerManager = GameWorld.GetPlayerManager() for i in xrange(playerManager.GetPlayerCount()): @@ -282,9 +259,7 @@ curPlayer.SetDayProcessGameEventCount(0) #重置宠物每天的训练次数 - PlayerPet.DoLogic_PetInfo_OnDay(curPlayer) - - PlayerGameWallow.RevertHealthGame_OnDay(curPlayer) + #PlayerPet.DoLogic_PetInfo_OnDay(curPlayer) PlayerOnlinePrize.ResetPrizeInfoOnDay(curPlayer) @@ -296,27 +271,17 @@ #------------------------------------------------------------------------------ - PlayerVip.VipOnDay(curPlayer) - PlayerCoin.OnDay(curPlayer) - + PlayerTree.PlayerOnDay(curPlayer) #成就 PlayerSuccess.SuccOnDay(curPlayer) - - # 新手卡 - PlayerNewGuyCard.NewGuyCardOnday(curPlayer) - #投资 PlayerGoldInvest.OnDay(curPlayer) #战令 PlayerZhanling.OnDay(curPlayer) #寻宝 PlayerTreasure.OnDay(curPlayer) - #法宝 - PlayerMagicWeapon.OnDay(curPlayer) PlayerGoldGift.OnDay(curPlayer) - #炼丹 - PlayerRefineStove.OnDay(curPlayer) #转盘 PlayerActTurntable.PlayerOnDay(curPlayer) #情缘 @@ -346,10 +311,9 @@ ChPlayer.Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_RechargeDayAward, 0) # 特殊时间点X点过天 elif onEventType == ShareDefine.Def_OnEventTypeEx: + PlayerHero.PlayerOnDay(curPlayer) # 资源找回 PlayerRecover.RecoverOnDay(curPlayer) - # 世界boss - BossHurtMng.OnDay(curPlayer) # 仙盟过天 PlayerFamily.PlayerOnDay(curPlayer) # 重置物品每日使用次数 @@ -358,26 +322,12 @@ PlayerFreeGoods.OnDay(curPlayer) #采集次数重置 NPCCommon.PlayerOnDay(curPlayer) - #副本助战 - FBHelpBattle.DoPlayerOnDay(curPlayer) #跨服竞技场 PlayerCrossRealmPK.DoPlayerOnDay(curPlayer) #跨服排位 PlayerCrossChampionship.DoPlayerOnDay(curPlayer) - #跨服战场 - PlayerCrossBattlefield.DoPlayerOnDay(curPlayer) - #缥缈仙域 - PlayerFairyDomain.OnDay(curPlayer) - #仙盟宴会 - GameLogic_FamilyParty.OnDayFamilyPartyPlayer(curPlayer) #竞技场 PlayerArena.OnDayEx(curPlayer) - #协助 - PlayerAssist.DoPlayerOnDay(curPlayer) - #福地 - PlayerMineArea.PlayerOnDay(curPlayer) - #挂机 - PlayerGuaji.PlayerOnDay(curPlayer) #特殊时间点过天的,一般是游戏功能,此时立即同步一次跨服玩家数据 CrossPlayerData.SendMergePlayerDataNow(curPlayer) @@ -396,8 +346,6 @@ PlayerWishingWell.OnDay(curPlayer) #通天令 PlayerTongTianLing.OnDay(curPlayer, onEventType) - #boss凭证 - PlayerActBossTrial.PlayerOnDay(curPlayer, onEventType) #任务活动 PlayerActTask.OnDay(curPlayer) #登录活动 @@ -492,7 +440,6 @@ #竞技场 PlayerArena.OnWeekEx(curPlayer) PlayerFamily.OnWeekEx(curPlayer) - PlayerCrossBattlefield.DoPlayerOnWeek(curPlayer) # 以下为支持两种重置模式切换配置的 FBCommon.FBOnWeek(curPlayer, onEventType) @@ -589,9 +536,6 @@ GameWorld.Log("PlayerOnHour!" , curPlayerID) - tick = GameWorld.GetGameWorld().GetTick() - #PlayerVip.CalcVIPTimeByTick(curPlayer, tick) - #记录 curDateTime = GameWorld.GetCurrentTime() curHour = curDateTime.hour @@ -601,9 +545,6 @@ if curHour == 1: #从数据库中查询当前排行榜等级 curPlayer.DataServer_GetBillboardLV() - - #缥缈仙域 - PlayerFairyDomain.OnHour(curPlayer) return #--------------------------------------------------------------------- @@ -951,11 +892,6 @@ PyGameData.g_bossShuntLineState = eval(msgValue) return - if key == ShareDefine.Def_Notify_WorldKey_FamilyKillHorsePetRobBossCnt: - PyGameData.g_familyKillHorsePetRobBossCntDict = eval(msgValue) - FamilyRobBoss.OnFamilyKillHorsePetRobBossCntChange(tick) - return - if key == ShareDefine.Def_Notify_WorldKey_FBEnterTimeLimiitMapID: PyGameData.FBEnterTimeLimiitMapID = eval(msgValue) return @@ -968,33 +904,8 @@ PyGameData.VSFamilyInfo = eval(msgValue) return - if key == ShareDefine.Def_Notify_WorldKey_FamilyPartyInfo: - if GameWorld.GetMap().GetMapID() == ChConfig.Def_FBMapID_FamilyParty: - PyGameData.g_familyPartyInfo = eval(msgValue) - return - - if key == ShareDefine.Def_Notify_WorldKey_FamilyPartyAddFamilyActivity: - mapID, familyID, addFamilyActivity = eval(msgValue) - if GameWorld.GetMap().GetMapID() == mapID: - GameLogic_FamilyParty.DoAddFamilyMemberFamilyActivity(familyID, addFamilyActivity) - return - if key == ShareDefine.Def_Notify_WorldKey_FamilyZhenfaInfo: PlayerFamilyZhenfa.GameServer_FamilyZhenfa(eval(msgValue)) - return - - if key == ShareDefine.Def_Notify_WorldKey_AssistBoss: - assistData = eval(msgValue) - if GameWorld.GetMap().GetMapID() == assistData[0]: - PlayerAssist.GameServer_AssistBossMsg(assistData[1:]) - return - - if key == ShareDefine.Def_Notify_WorldKey_FairyDomainLimit: - isAdd, limitList = eval(msgValue) - if isAdd: - PyGameData.g_fairyDomainLimit += limitList - else: - PyGameData.g_fairyDomainLimit = limitList return if key == ShareDefine.Def_Notify_WorldKey_CoupleInfo: @@ -1027,18 +938,6 @@ elif actionName == ShareDefine.OperationActionName_TotalRecharge: PlayerActTotalRecharge.RefreshTotalRechargeActionInfo(actNum) - elif actionName == ShareDefine.OperationActionName_GarbageSorting: - PlayerActGarbageSorting.RefreshGarbageSortingActionInfo(actNum) - - elif actionName == ShareDefine.OperationActionName_XianXiaMJ: - PlayerActXianXiaMJ.RefreshXianXiaMJActionInfo(actNum) - - elif actionName == ShareDefine.OperationActionName_Gubao: - PlayerActGubao.RefreshGubaoActionInfo(actNum) - - elif actionName == ShareDefine.OperationActionName_HorsePetTrain: - PlayerActHorsePetTrain.RefreshHorsePetTrainActionInfo(actNum) - elif actionName == ShareDefine.OperationActionName_GodGift: PlayerActGodGift.RefreshGodGiftActionInfo(actNum) @@ -1057,12 +956,6 @@ elif actionName == ShareDefine.OperationActionName_BossReborn: PlayerBossReborn.RefreshOperationAction_BossReborn() - elif actionName == ShareDefine.OperationActionName_BossTrial: - PlayerActBossTrial.RefreshBossTrialActionInfo(actNum) - - elif actionName == ShareDefine.OperationActionName_HorsePetFeast: - PlayerActHorsePetFeast.RefreshOperationAction_HorsePetFeast(actNum) - elif actionName == ShareDefine.OperationActionName_FlashGiftbag: PlayerFlashGiftbag.RefreshFlashGiftbagActionInfo(actNum) @@ -1074,12 +967,6 @@ elif actionName == ShareDefine.OperationActionName_FamilyCTGAssist: PlayerActFamilyCTGAssist.RefreshFamilyCTGAssistActionInfo(actNum) - - elif actionName == ShareDefine.OperationActionName_FairyCeremony: - PlayerFairyCeremony.RefreshOperationAction_FairyCeremony() - - elif actionName == ShareDefine.OperationActionName_NewFairyCeremony: - PlayerNewFairyCeremony.RefreshOperationAction_NewFairyCeremony() elif actionName == ShareDefine.OperationActionName_FlashSale: PlayerFlashSale.RefreshflashSaleActionInfo(actNum) @@ -1158,18 +1045,6 @@ elif actionName == ShareDefine.CrossActName_AllRecharge: CrossActAllRecharge.RefreshCrossActAllRechargeInfo() - elif actionName == ShareDefine.CrossActName_BossTrial: - PlayerActBossTrial.RefreshCrossActBossTrialInfo() - - elif actionName == ShareDefine.CrossActName_XianXiaMJ: - PlayerActXianXiaMJ.RefreshCrossActXianXiaMJInfo() - - elif actionName == ShareDefine.CrossActName_Gubao: - PlayerActGubao.RefreshCrossActGubaoInfo() - - elif actionName == ShareDefine.CrossActName_HorsePetTrain: - PlayerActHorsePetTrain.RefreshCrossActHorsePetTrainInfo() - elif actionName == ShareDefine.CrossActName_Lianqi: PlayerActLianqi.RefreshCrossActLianqiInfo() @@ -1196,14 +1071,6 @@ if key == ShareDefine.Def_Notify_WorldKey_LuckyCloudBuyInfo: PyGameData.g_luckyCloudBuyInfo = eval(msgValue) PlayerLuckyCloudBuy.OnLuckyCloudBuyChange() - return - - if key == ShareDefine.Def_Notify_WorldKey_CrossBattlefieldCallTeamInfo: - PyGameData.g_crossBattlefieldCallTeamInfo = eval(msgValue) - return - - if key == ShareDefine.Def_Notify_WorldKey_CrossBattlefieldSysCallBuyInfo: - PyGameData.g_crossBattlefieldSysCallBuyList = eval(msgValue) return if msgValue.isdigit(): @@ -1236,24 +1103,7 @@ # 跨服PK elif key == ShareDefine.Def_Notify_WorldKey_CrossPKSeasonID: PlayerCrossRealmPK.OnCrossRealmPKSeasonChange(value) - - # 守卫人皇 - elif key == ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_FamilyInvade: - if gameWorldMgr.GetGameWorldDictByKey(key) != value: - GameLogic_FamilyInvade.OnFamilyInvadeStateChange(value, tick) - # 上古战场 - elif key == ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_ElderBattlefield: - if gameWorldMgr.GetGameWorldDictByKey(key) != value: - GameLogic_ElderBattlefield.OnElderBattlefieldStateChange(value, tick) - # 多仙盟BOSS - elif key in [ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_FamilyBoss1]: - if gameWorldMgr.GetGameWorldDictByKey(key) != value: - GameLogic_AllFamilyBoss.OnAllFamilyBossStateChange(value, tick) - # 骑宠BOSS - elif key == ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_HorsePetBoss: - if gameWorldMgr.GetGameWorldDictByKey(key) != value: - GameLogic_HorsePetBoss.OnHorsePetBossStateChange(value, tick) - + # 跨服妖魔boss elif key == ShareDefine.Def_Notify_WorldKey_CrossDailyActionState % ShareDefine.CrossDailyActionID_YaomoBoss: if gameWorldMgr.GetGameWorldDictByKey(key) != value: @@ -1266,17 +1116,8 @@ #-------在设置了字典值以后处理--------------------------------- # 刷新世界boss if key.startswith('GameWorldBossReborn_'): - NPCCustomRefresh.ProcessAllNPCRefresh(tick) - - # 王者仙盟 - elif key == ShareDefine.Def_Notify_WorldKey_ChampionFamilyID: - GameLogic_FamilyWar.OnChampionFamilyIDChange() - - # 仙盟宴会 - elif key == ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_FamilyParty: - if befValue != value: - GameLogic_FamilyParty.OnFamilyPartyStateChange(value, tick) - + pass + #=============================================================================== # ---修改为上述的 统一字典处理 # if msg == ChConfig.Def_Notify_Key_PurTalk: -- Gitblit v1.8.0