public static void GotoCollectObj(int collectObjID, bool bCarry = false) { KCollectMissionInfo info = KConfigFileManager.GetInstance().GetCollectInfo(collectObjID); if (info != null) { if (info.strPosition != null && info.strPosition != "0") { string[] pos = info.strPosition.Split(';'); if (pos.Length != 0) { string[] posTemp = pos[0].Split(':'); if (posTemp.Length == 3) { if (bCarry) { Carry(info.nSceneID, new Vector3(int.Parse(posTemp[0]), int.Parse(posTemp[1]), int.Parse(posTemp[2]))); } else { Vector3 vecPosition = MapUtils.GetMetreFromInt(int.Parse(posTemp[0]), int.Parse(posTemp[2]), int.Parse(posTemp[1])); Goto(info.nSceneID, vecPosition); } CollectObjLogic.GetInstance().m_bAutoCollect = true; } } } } }
public static void FindNpc(int npcID) { KNpcPos npcPos = NpcLogic.GetInstance().GetNpcPosByID(npcID); if (npcPos != null) { Vector3 rolePosition = MapUtils.GetMetreFromInt(npcPos.nPathX, npcPos.nPathZ, npcPos.nPathY); Goto(npcPos.MapID, rolePosition); KHeroSetting npcInfo = NpcLogic.GetInstance().GetNpcLocalInfo(npcID); if (null != npcInfo && npcInfo.HeroType == Assets.Scripts.Define.KHeroObjectType.hotMonster) { NPC_ID = npcID; bAutoAttack = true; } //SceneLogic.GetInstance().MainHero.property.CmdAutoAttack = (npcInfo.HeroType == Assets.Scripts.Define.KHeroObjectType.hotMonster); } }
public static void FindNpcAndOpen(int npcID) { if (NpcLogic.GetInstance().CheckNpcNearby(npcID) == true) { EventDispatcher.GameWorld.Dispath(ControllerCommand.OPEN_NPC_PANEL_BYID, npcID); return; } KNpcPos npcPos = NpcLogic.GetInstance().GetNpcPosByID(npcID); if (npcPos != null) { NPC_ID = npcID; Vector3 rolePosition = MapUtils.GetMetreFromInt(npcPos.nPathX, npcPos.nPathZ, npcPos.nPathY); Goto(npcPos.MapID, rolePosition); KHeroSetting npcInfo = NpcLogic.GetInstance().GetNpcLocalInfo(npcID); if (null != npcInfo) { bAutoAttack = (npcInfo.HeroType == Assets.Scripts.Define.KHeroObjectType.hotMonster); } //SceneLogic.GetInstance().MainHero.property.CmdAutoAttack = (npcInfo.HeroType == Assets.Scripts.Define.KHeroObjectType.hotMonster); } }