From ba67d86ccc7dde96a4fe2bb2ae3abfbd0aacc561 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 03 十一月 2025 12:00:10 +0800
Subject: [PATCH] 237 【福利内容】每日任务/每周任务/章节奖励-服务端(增加每日任务类型 6 ~ 10)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py | 91 ++++++++++++++++++++++++---------------------
1 files changed, 48 insertions(+), 43 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py
index 1b854b5..f32029a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/TurnFight.py
@@ -67,18 +67,21 @@
clientData.TagID = tagPlayerID
index = curPlayer.GetIndex()
tick = GameWorld.GetGameWorld().GetTick()
- TurnAttack.OnTurnFight(index, clientData, tick)
+ if not TurnAttack.OnTurnFight(index, clientData, tick):
+ GameWorld.DebugAnswer(curPlayer, "请求失败,详见服务器日志!")
return
def __doSetAttr(curPlayer, msgList):
## 设置属性
attrID = msgList[1] if len(msgList) > 1 else 1
- attrValue = msgList[2] if len(msgList) > 2 else 1
- faction = msgList[3] if len(msgList) > 3 else 1
- posNum = msgList[4] if len(msgList) > 4 else 1
+ attrValue = msgList[2] if len(msgList) > 2 else 1
+ faction = msgList[3] if len(msgList) > 3 else 0
+ pNum = msgList[4] if len(msgList) > 4 else 0
- if faction not in FactionList:
- GameWorld.DebugAnswer(curPlayer, "阵营: 1-左边;2-右边")
+ factionList = [faction] if faction else FactionList
+
+ if attrID not in ChConfig.AttrIDList:
+ GameWorld.DebugAnswer(curPlayer, "不存在该属性ID:%s" % (attrID))
return
mainFightMgr = TurnAttack.GetMainFightMgr(curPlayer)
@@ -86,34 +89,35 @@
if not turnFight.isInFight():
GameWorld.DebugAnswer(curPlayer, "主线非战斗中")
return
- batFaction = turnFight.getBatFaction(faction)
- batLineup = batFaction.getBatlineup(1)
- objID = batLineup.posObjIDDict.get(posNum)
- batObj = None
+
+ GameWorld.DebugAnswer(curPlayer, "----- 设置属性 -----")
+
batObjMgr = BattleObj.GetBatObjMgr()
- if objID:
- batObj = batObjMgr.getBatObj(objID)
- if not batObj:
- GameWorld.DebugAnswer(curPlayer, "不存在该战斗对象:阵营:%s,位置:%s" % (faction, posNum))
- return
- if not batObj.IsAlive():
- GameWorld.DebugAnswer(curPlayer, "该对象已被击杀:阵营:%s,位置:%s" % (faction, posNum))
- return
-
- if attrID not in ChConfig.AttrIDList:
- GameWorld.DebugAnswer(curPlayer, "不存在该属性ID:%s" % (attrID))
- return
-
- objName = TurnAttack.GetObjName(batObj)
- GameWorld.DebugAnswer(curPlayer, "%s" % (objName))
- batObj.GMSetBatAttr(attrID, attrValue)
- if attrID == ChConfig.AttrID_HP:
- GameWorld.DebugAnswer(curPlayer, "设置生命:%s/%s" % (batObj.GetHP(), batObj.GetMaxHP()))
- elif attrID == ChConfig.AttrID_XP:
- GameWorld.DebugAnswer(curPlayer, "设置怒气:%s" % (batObj.GetXP()))
- else:
- GameWorld.DebugAnswer(curPlayer, "设置属性ID:%s,V=%s" % (attrID, attrValue))
-
+ for faction in factionList:
+ if faction not in FactionList:
+ GameWorld.DebugAnswer(curPlayer, "阵营: 1-左边;2-右边")
+ continue
+ batFaction = turnFight.getBatFaction(faction)
+ batLineup = batFaction.getBatlineup(1)
+ posNumList = [pNum] if pNum else batLineup.posObjIDDict.keys()
+ for posNum in posNumList:
+ objID = batLineup.posObjIDDict.get(posNum)
+ batObj = batObjMgr.getBatObj(objID)
+ if not batObj:
+ GameWorld.DebugAnswer(curPlayer, "对象不存在:阵营:%s,位置:%s" % (faction, posNum))
+ continue
+ if not batObj.IsAlive():
+ GameWorld.DebugAnswer(curPlayer, "对象已阵亡:阵营:%s,位置:%s" % (faction, posNum))
+ continue
+ objName = TurnAttack.GetObjName(batObj)
+ GameWorld.DebugAnswer(curPlayer, "%s" % (objName))
+ batObj.GMSetBatAttr(attrID, attrValue)
+ if attrID == ChConfig.AttrID_HP:
+ GameWorld.DebugAnswer(curPlayer, "设置生命:%s/%s" % (batObj.GetHP(), batObj.GetMaxHP()))
+ elif attrID == ChConfig.AttrID_XP:
+ GameWorld.DebugAnswer(curPlayer, "设置怒气:%s" % (batObj.GetXP()))
+ else:
+ GameWorld.DebugAnswer(curPlayer, "设置属性ID:%s,V=%s" % (attrID, attrValue))
return
def __doKillObj(curPlayer, msgList):
@@ -139,10 +143,10 @@
continue
batObj = batObjMgr.getBatObj(objID)
if not batObj:
- GameWorld.DebugAnswer(curPlayer, "不存在该战斗对象:阵营:%s,位置:%s" % (faction, posNum))
+ GameWorld.DebugAnswer(curPlayer, "对象不存在:阵营:%s,位置:%s" % (faction, posNum))
continue
if not batObj.IsAlive():
- GameWorld.DebugAnswer(curPlayer, "该对象已被击杀:阵营:%s,位置:%s" % (faction, posNum))
+ GameWorld.DebugAnswer(curPlayer, "对象已阵亡:阵营:%s,位置:%s" % (faction, posNum))
continue
GameWorld.DebugAnswer(curPlayer, "击杀: %s" % TurnAttack.GetObjName(batObj))
TurnAttack.SetObjKilled(turnFight, batObj)
@@ -156,7 +160,7 @@
def __doAddBuff(curPlayer, msgList):
faction = msgList[1] if len(msgList) > 1 else 2
posNum = msgList[2] if len(msgList) > 2 else 1
- skillID = msgList[3] if len(msgList) > 3 else 0
+ skillIDList = msgList[3:]
if faction not in FactionList:
GameWorld.DebugAnswer(curPlayer, "阵营: 1-左边;2-右边")
return
@@ -172,17 +176,18 @@
objID = batLineup.posObjIDDict.get(posNum)
batObj = batObjMgr.getBatObj(objID)
if not batObj:
- GameWorld.DebugAnswer(curPlayer, "不存在该战斗对象:阵营:%s,位置:%s" % (faction, posNum))
+ GameWorld.DebugAnswer(curPlayer, "对象不存在:阵营:%s,位置:%s" % (faction, posNum))
return
if not batObj.IsAlive():
- GameWorld.DebugAnswer(curPlayer, "该对象已被击杀:阵营:%s,位置:%s" % (faction, posNum))
+ GameWorld.DebugAnswer(curPlayer, "对象已阵亡:阵营:%s,位置:%s" % (faction, posNum))
return
- addBuff = TurnBuff.DoAddBuffBySkillID(turnFight, batObj, skillID)
- if addBuff:
- GameWorld.DebugAnswer(curPlayer, "添加buff成功! buffID=%s" % addBuff.GetBuffID())
- else:
- GameWorld.DebugAnswer(curPlayer, "添加buff失败")
+ for skillID in skillIDList:
+ addBuff = TurnBuff.DoAddBuffBySkillID(turnFight, batObj, skillID)
+ if addBuff:
+ GameWorld.DebugAnswer(curPlayer, "添加buff成功!skillID=%s,buffID=%s" % (skillID, addBuff.GetBuffID()))
+ else:
+ GameWorld.DebugAnswer(curPlayer, "添加buff失败!skillID=%s" % (skillID))
return
def __printInfo(curPlayer, msgList):
--
Gitblit v1.8.0