From 38bdbd5e4429a852dc8b78cf0345016a8df83dd7 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 10 九月 2025 14:44:29 +0800
Subject: [PATCH] 121 【武将】武将系统-服务端(上阵星级加成属性取有效最大星级;吞噬升星优先随机提升有效的槽位;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py | 41 +++++++++++++++++++++++------------------
1 files changed, 23 insertions(+), 18 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 e05fd06..caf58b5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
@@ -24,7 +24,6 @@
import PlayerGMOper
import OperControlManager
import ShareDefine
-import PlayerGameWallow
import ReadChConfig
import PlayerDienstgrad
import IpyGameDataPY
@@ -43,6 +42,7 @@
import PlayerFace
import PlayerBackup
import PlayerOnline
+import PlayerGoldRush
#---------------------------------------------------------------------
#---------------------------------------------------------------------
@@ -771,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亿支持,功能待定
@@ -787,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])
@@ -867,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,6 +1006,7 @@
#放在刷buff前
#ProcessPassiveSkill(curPlayer, tick)
+ ProcessPlayerSecond(curPlayer, tick)
ProcessPlayerMinute(curPlayer, tick)
PlayerOnline.GetOnlinePlayer(curPlayer).DoRefreshRoleAttr()
@@ -1037,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)
#自定义场景
@@ -1062,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