| | |
| | | import ChConfig
|
| | | import GameWorld
|
| | | import NPCCommon
|
| | | import PlayerFB
|
| | | import ShareDefine
|
| | |
|
| | | #
|
| | | #逻辑实现
|
| | |
| | | #输入命令格式错误
|
| | | if not paramList:
|
| | | GameWorld.DebugAnswer(curPlayer, "SummonNPC npcID 个数")
|
| | | GameWorld.DebugAnswer(curPlayer, "SummonNPC npcID 个数 前端场景ID lineID")
|
| | | GameWorld.DebugAnswer(curPlayer, "SummonNPC npcID 个数 血量")
|
| | | return
|
| | |
|
| | | #NPC对象ID
|
| | |
| | |
|
| | | npcType = npcData.GetType()
|
| | | if npcType in [ChConfig.ntPriWoodPilePVE, ChConfig.ntPriWoodPilePVP]:
|
| | | mapID = paramList[2] if len(paramList) > 2 else 0
|
| | | lineID = paramList[3] if len(paramList) > 3 else 0
|
| | | if not mapID:
|
| | | GameWorld.DebugAnswer(curPlayer, "木桩怪必须指定地图ID才能召唤!")
|
| | | return
|
| | | |
| | | sceneMapID = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomSceneMapID)
|
| | | sceneLineID = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomSceneLineID)
|
| | | if mapID != sceneMapID or lineID != sceneLineID:
|
| | | if sceneMapID:
|
| | | PlayerFB.DoExitCustomScene(curPlayer)
|
| | | tick = GameWorld.GetGameWorld().GetTick()
|
| | | PlayerFB.DoEnterCustomScene(curPlayer, mapID, lineID, tick)
|
| | | NPCCommon.SummonPriWoodPile(curPlayer, npcID, npcCount)
|
| | | setHP = paramList[2] if len(paramList) > 2 else 0
|
| | | hp = setHP % ShareDefine.Def_PerPointValue
|
| | | hpEx = setHP / ShareDefine.Def_PerPointValue
|
| | | NPCCommon.SummonPriWoodPile(curPlayer, npcID, npcCount, hp, hpEx)
|
| | | return
|
| | |
|
| | | for _ in range(npcCount):
|