From 93591a53c1cdabb4e595fa4d5c36eb89998a6e6f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 25 五月 2019 18:50:56 +0800
Subject: [PATCH] 6805 【后端】【2.0】副本前端化(召唤木桩由玩家召唤兽改为普通NPC)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SummonNPC.py | 25 +++++++++++++++++++++++--
1 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SummonNPC.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SummonNPC.py
index 6d274af..1afdd2c 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SummonNPC.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SummonNPC.py
@@ -16,6 +16,9 @@
import ChConfig
import GameWorld
import NPCCommon
+import PlayerFB
+import PlayerControl
+import ShareDefine
#
#逻辑实现
@@ -26,8 +29,9 @@
# @remarks 函数详细说明.
def OnExec(curPlayer, paramList):
#输入命令格式错误
- if not paramList or len(paramList) > 2:
+ if not paramList:
GameWorld.DebugAnswer(curPlayer, "SummonNPC npcID 个数")
+ GameWorld.DebugAnswer(curPlayer, "SummonNPC npcID 个数 前端场景ID lineID 血量")
return
#NPC对象ID
@@ -40,7 +44,24 @@
npcType = npcData.GetType()
if npcType in [ChConfig.ntPriWoodPilePVE, ChConfig.ntPriWoodPilePVP]:
- NPCCommon.SummonPriWoodPile(curPlayer, npcID, npcCount)
+ mapID = paramList[2] if len(paramList) > 2 else 0
+ lineID = paramList[3] if len(paramList) > 3 else 0
+ setHP = paramList[4] if len(paramList) > 4 else 0
+ if not mapID:
+ GameWorld.DebugAnswer(curPlayer, "木桩怪必须指定地图ID才能召唤!")
+ return
+
+ customMapID = PlayerControl.GetCustomMapID(curPlayer)
+ customLineID = PlayerControl.GetCustomLineID(curPlayer)
+ if mapID != customMapID or lineID != customLineID:
+ if customMapID:
+ PlayerFB.DoExitCustomScene(curPlayer)
+ tick = GameWorld.GetGameWorld().GetTick()
+ PlayerFB.DoEnterCustomScene(curPlayer, mapID, lineID, tick)
+
+ hp = setHP % ShareDefine.Def_PerPointValue
+ hpEx = setHP / ShareDefine.Def_PerPointValue
+ NPCCommon.SummonPriWoodPile(curPlayer, npcID, npcCount, hp, hpEx)
return
for _ in range(npcCount):
--
Gitblit v1.8.0