From 0c96af08f55d05ab40eae9f940467dd8eafae44c Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期二, 16 九月 2025 14:07:53 +0800 Subject: [PATCH] 129 【战斗】战斗系统-服务端(增加属性ID技能增伤65、技能减伤66;曹轶技能;被动触发增加属性支持;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py | 59 +++++++++++++++++++++++------------------------------------ 1 files changed, 23 insertions(+), 36 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py index 5cc7d0c..caf58b5 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py @@ -18,46 +18,31 @@ import SkillShell import BuffSkill import PlayerControl -import ChEquip import SkillCommon import FBLogic -import AttackCommon import ChItem import PlayerGMOper -import ItemCommon import OperControlManager import ShareDefine -import PlayerAutoCheckOnline -import PlayerGameWallow import ReadChConfig import PlayerDienstgrad -import PlayerVip import IpyGameDataPY -import PlayerFB import GameObj import GameMap import math import time import PetControl -import ItemControler -import PlayerGuaji import AICommon import PlayerSuccess -import CrossPlayerData import PassiveBuffEffMng import FunctionNPCCommon import FormulaControl -import PlayerGoldGift -import PlayerActLianqi -import PlayerActFamilyGCZ import PlayerFlashSale import PlayerChatBox import PlayerFace -import PlayerYinji -import PlayerActivity import PlayerBackup -import MirrorAttack import PlayerOnline +import PlayerGoldRush #--------------------------------------------------------------------- #--------------------------------------------------------------------- @@ -786,7 +771,7 @@ curPlayer.SetDict(ChConfig.Def_PlayerKey_SitForZhenQi, tick) vipLV = curPlayer.GetVIPLv() - vipRate = ShareDefine.Def_MaxRateValue#PlayerVip.GetVIPMuseSitRate(vipLV) + vipRate = ShareDefine.Def_MaxRateValue #取得人物当前经验 curTotalExp = PlayerControl.GetPlayerTotalExp(curPlayer) # 超过20亿支持,功能待定 @@ -802,7 +787,7 @@ isSysHint=False) if vipLV == 0: - canVipRate = ShareDefine.Def_MaxRateValue#PlayerVip.GetVIPMuseSitRate(ShareDefine.Def_VIPType_Platina) + canVipRate = ShareDefine.Def_MaxRateValue canVipExpValue = int(addExpValue * canVipRate / float(ShareDefine.Def_MaxRateValue)) #GeRen_chenxin_684833:获得经验%s点,成为VIP经验%s PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_684833", [addExpValue, canVipExpValue]) @@ -882,11 +867,8 @@ # @remarks 刷新玩家在线时间 def ProcessPlayer_OnlineTime(curPlayer, tick): if not CommonCheckTick(curPlayer, tick, ChConfig.TYPE_Player_Tick_PlayerOnlineTime): - return + return - #处理防沉迷在线时间, - PlayerGameWallow.DoLogic_WallowOnlineTime(curPlayer, tick) - return @@ -1009,9 +991,6 @@ #定时备档 PlayerBackup.CheckPlayerBackup(curPlayer) - #玩家镜像战斗AI - #MirrorAttack.ProcessPlayerMirrorAI(curPlayer, tick) - #被GM封状态响应 ProcessGMOperLogic(curPlayer, tick) @@ -1027,6 +1006,7 @@ #放在刷buff前 #ProcessPassiveSkill(curPlayer, tick) + ProcessPlayerSecond(curPlayer, tick) ProcessPlayerMinute(curPlayer, tick) PlayerOnline.GetOnlinePlayer(curPlayer).DoRefreshRoleAttr() @@ -1055,19 +1035,9 @@ #副本相关时间处理 #PlayerFB.DoPlayerFBTimeProcess(curPlayer, tick) - #挂机收益 - #PlayerGuaji.ProcessGuaji(curPlayer) - #恶意攻击时间处理 #AttackCommon.ProcessMaliciousAttackPlayer(curPlayer, tick) - #成就 - PlayerSuccess.FinishDelayAddSuccessProgress(curPlayer, tick, False) - #限时抢购 - PlayerFlashSale.ProcessFlashSaleMail(curPlayer, tick) - #地图经验 - #ProcessAreaExp(curPlayer, tick) - #神秘商店刷新 - FunctionNPCCommon.CheckMysticalShopRefresh(curPlayer, tick) + #活跃放置 #PlayerActivity.ProcessActivityPlace(curPlayer) #自定义场景 @@ -1080,6 +1050,23 @@ #CrossPlayerData.ProcessCrossPlayer(curPlayer, tick) return +def ProcessPlayerSecond(curPlayer, tick): + #玩家每秒处理,玩家Process可能每秒多次,所以增加一个每秒处理的,减少执行次数 + lastTick = curPlayer.GetDictByKey("ProcessPlayerSecond") + if tick - lastTick < 1000: + return + curPlayer.SetDict("ProcessPlayerSecond", tick) + + #成就 + PlayerSuccess.FinishDelayAddSuccessProgress(curPlayer, tick, False) + #限时抢购 + PlayerFlashSale.ProcessFlashSaleMail(curPlayer, tick) + #神秘商店刷新 + FunctionNPCCommon.CheckMysticalShopRefresh(curPlayer, tick) + #淘金 + PlayerGoldRush.OnProcess(curPlayer) + return + def ProcessPlayerMinute(curPlayer, tick): #玩家每分钟处理 lastTick = curPlayer.GetTickByType(ChConfig.TYPE_Player_Tick_Minute) -- Gitblit v1.8.0