From c215892f0f794eb86a641e56a99d535faeab3a7f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 20 十一月 2025 18:49:05 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(赵云所有技能;增加效果5023 6019 6020;5011效果增加可验证战斗类型;5022效果支持多属性;战斗增减伤改名;增加触发方式28~39)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 84 ++++++++++++-----------------------------
1 files changed, 25 insertions(+), 59 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
index c80f766..cff0141 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -85,7 +85,6 @@
import PlayerCrossYaomoBoss
import PlayerLuckyCloudBuy
import PlayerLuckyTreasure
-import Item_ResetAttrPoint
import CrossActCTGBillboard
import CrossActAllRecharge
import PlayerFuncSysPrivilege
@@ -103,7 +102,6 @@
import PlayerFaQi
import SkillShell
import PlayerGubao
-import PlayerShentong
import PlayerCustomAward
import PlayerZhanling
import PlayerTree
@@ -724,7 +722,6 @@
PlayerHJG.OnPlayerLogin(curPlayer)
PlayerXiangong.OnPlayerLogin(curPlayer)
PlayerGubao.OnPlayerLogin(curPlayer)
- PlayerShentong.OnPlayerLogin(curPlayer)
PlayerZhanling.OnPlayerLogin(curPlayer)
PlayerTask.OnPlayerLogin(curPlayer)
PlayerTree.OnPlayerLogin(curPlayer)
@@ -1367,30 +1364,6 @@
#if curPlayer.GetPlayerAction() != IPY_GameWorld.paEvent:
curPlayer.SetCanMove(True)
- #同步客户端tick
- #这个封包要在EndLoadMap, 上马之前发, 否则客户端处理时机不对(客户端封包缓存机制)
- #curPlayer.Sync_ClientTick()
-
- #做上一个地图的上马/骠车逻辑
- #恢复自己的状态
- playerVehicle = curPlayer.GetLastMapPlayerVehicle()
- if playerVehicle == IPY_GameWorld.pvHorse:
- #玩家在骑马中
- if not PlayerHorse.PlayerRideHorseUp(curPlayer, False, False):
- #=======================================================================
- # playerHorseState = curPlayer.GetLastMapPlayerRidehorseState()
- # if playerHorseState != IPY_GameWorld.prsNormal:
- # #切换地图, 恢复急行状态
- # curPlayer.SetPlayerRidehorseState(playerHorseState)
- #
- # #刷新人物属性 所有状态
- # playerControl = PlayerControl.PlayerControl(curPlayer)
- # playerControl.RefreshAllState()
- # else:
- #=======================================================================
- #此时已经是下马状态不需要刷状态 但是需要通知客户端下马
- PlayerHorse.PlayerRideHorseDown(curPlayer, False)
-
#激活玩家(保证持续性Buff处理间隔)
PlayerControl.SetIsNeedProcess(curPlayer, True)
@@ -1605,7 +1578,7 @@
return
ItemCommon.ReduceItem(curPlayer, itemPack, [delIndex], 1, False, ChConfig.ItemDel_ResetAttrPoint)
- Item_ResetAttrPoint.DoResetAttrPoint(curPlayer, 0, 0, 0)
+ #Item_ResetAttrPoint.DoResetAttrPoint(curPlayer, 0, 0, 0)
return
def NotifyPlayerBasePoint(curPlayer, syncAttrIDList=[]):
@@ -3244,7 +3217,7 @@
PlayerSuccess.GetSuccessAward(curPlayer, dataEx)
# 仙树免费减时
elif rewardType == ChConfig.Def_RewardType_TreeFreeTime:
- PlayerTree.FreeReduceTreeLVTime(curPlayer)
+ PlayerTree.FreeReduceTreeLVTime(curPlayer, dataEx)
# 广告奖励
elif rewardType == ChConfig.Def_RewardType_ADAward:
OnGetADAward(curPlayer, dataEx)
@@ -3254,12 +3227,17 @@
# 公会讨伐领取宝箱奖励
elif rewardType == ChConfig.Def_RewardType_FamilyTaofaBox:
PlayerFamilyTaofa.GetTaofaBoxAward(curPlayer)
+ # 阵容推荐奖励
+ elif rewardType == ChConfig.Def_RewardType_LineupRecommend:
+ PlayerHero.GetLineupRecommendAward(curPlayer, dataEx, dataExStr)
+ # 功能开启奖励
+ elif rewardType == ChConfig.Def_RewardType_OpenFunc:
+ GameFuncComm.GetFuncOpenAward(curPlayer, dataEx)
+
+
# 每日免费直购礼包
elif rewardType == ChConfig.Def_RewardType_DayFreeGoldGift:
PlayerDailyGiftbag.OnGetDailyFreeGiftbag(curPlayer)
- # 仙盟每日福利奖励
- #elif rewardType == ChConfig.Def_RewardType_FamilyDayAward:
- # PlayerFamily.GetFamilyDayAward(curPlayer)
# 玩家等级奖励
elif rewardType == ChConfig.Def_RewardType_LVAward:
PlayerLVAward.GetPlayerLVAward(curPlayer, dataEx)
@@ -3287,9 +3265,6 @@
# 领取许愿池奖励
elif rewardType == ChConfig.Def_RewardType_WishingWell:
PlayerWishingWell.DoGetWishingAward(curPlayer)
- # 功能开启奖励
- elif rewardType == ChConfig.Def_RewardType_OpenFunc:
- GameFuncComm.GetFuncOpenAward(curPlayer, dataEx)
# 领取周狂欢活动奖励
elif rewardType == ChConfig.Def_RewardType_WeekPartyAct:
PlayerWeekParty.GetWeekPartyActionAward(curPlayer, dataEx, dataExStr)
@@ -3400,22 +3375,31 @@
return
adCntMax = ipyData.GetADCntMax()
adCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ADCnt % adID)
- if adCnt >= adCntMax:
+ if adCntMax and adCnt >= adCntMax:
GameWorld.DebugLog("今日该广告奖励已达上限! adID=%s,adCnt=%s > %s" % (adID, adCnt, adCntMax))
return
adCnt += 1
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_ADCnt % adID, adCnt)
awardItemList = ipyData.GetADAwardItemList()
- adMapID = ipyData.GetADMapID()
- GameWorld.DebugLog("领取广告奖励! adID=%s,adCnt=%s,adMapID=%s,awardItemList=%s" % (adID, adCnt, adMapID, awardItemList))
+ adAwardType = ipyData.GetADAwardType()
+ adAwardValue = ipyData.GetADAwardValue()
+ GameWorld.DebugLog("领取广告奖励! adID=%s,adCnt=%s,adAwardType=%s,adAwardValue=%s,awardItemList=%s" % (adID, adCnt, adAwardType, adAwardValue, awardItemList))
SyncADCntInfo(curPlayer, [adID])
- if adMapID:
- FBCommon.AddFBADCnt(curPlayer, adMapID)
-
if awardItemList:
ItemControler.GivePlayerItemOrMail(curPlayer, awardItemList, event=["ADAward", False, {}])
+ # 领取祝福树充能奖励
+ if adAwardType == 1:
+ PlayerTree.GetTreeEnergyAward(curPlayer, False)
+ # 副本次数
+ elif adAwardType == 2:
+ adMapID = adAwardValue
+ FBCommon.AddFBADCnt(curPlayer, adMapID)
+ # 寻宝
+ elif adAwardType == 3:
+ treasureType = adAwardValue
+ PlayerTreasure.DoTreasure(curPlayer, treasureType, PlayerTreasure.CostType_ADFree)
return
def ADCntOnDay(curPlayer):
@@ -3770,24 +3754,6 @@
clientPack.NowMicSecond = serverTime.microsecond
clientPack.WeekOfYear = GameWorld.GetWeekOfYear()
NetPackCommon.SendFakePack(curPlayer, clientPack)
-
- #旧包先保留,之后删除
- gw = GameWorld.GetGameWorld()
- packData = ChPyNetSendPack.tagOpenServerDay()
- packData.Clear()
- packData.Day = gw.GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_ServerDay)
- packData.IsMixServer = gw.GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_IsMixServer)
- packData.MixDay = gw.GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_MixServerDay)
- packData.OpenWeekday = gw.GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_OpenServerWeekday)
- packData.NowYear = serverTime.year
- packData.NowMonth = serverTime.month
- packData.NowDay = serverTime.day
- packData.NowHour = serverTime.hour
- packData.NowMinute = serverTime.minute
- packData.NowSecond = serverTime.second
- packData.NowMicSecond = serverTime.microsecond
- packData.WeekOfYear = GameWorld.GetWeekOfYear()
- NetPackCommon.SendFakePack(curPlayer, packData)
return
#===============================================================================
--
Gitblit v1.8.0