fcfda51e7acdc9f58d6ae47c2bd7c6bbb07124c8 16 KB

123456789101112131415
  1. {
  2. "code": "var Vector3 = Laya.Vector3;\r\nimport { EventManager, StageState } from \"../Tools/EventManager\";\r\nimport { GameTools, Transform3DHelper } from \"../Tools/GameTools\";\r\nimport { PlayerControl } from \"./PlayerControl\";\r\nimport { AssetManager } from \"../Tools/AssetManager\";\r\nimport { Runner } from \"./Runner\";\r\nimport GamePool from \"../Tools/GamePool\";\r\nimport { AccountManager } from \"../Net/AccountManager\";\r\nexport var NpcState;\r\n(function (NpcState) {\r\n NpcState[NpcState[\"Attack\"] = 0] = \"Attack\";\r\n NpcState[NpcState[\"Idle\"] = 1] = \"Idle\";\r\n NpcState[NpcState[\"Win\"] = 2] = \"Win\";\r\n NpcState[NpcState[\"Pursue\"] = 3] = \"Pursue\";\r\n NpcState[NpcState[\"Run\"] = 4] = \"Run\";\r\n NpcState[NpcState[\"Die\"] = 5] = \"Die\";\r\n})(NpcState || (NpcState = {}));\r\nexport class NpcRunner extends Laya.Script {\r\n constructor() {\r\n super();\r\n this.m_distance = 20;\r\n this.m_distanceatk = 5;\r\n this.DIE = false;\r\n this.m_npcspeed = 0;\r\n this.atked = false;\r\n this.wined = false;\r\n this.begin = false;\r\n this.frontdie = false;\r\n this.reardie = false;\r\n this.canmove = false;\r\n this.dir = new Vector3();\r\n this.currotV = new Vector3();\r\n this.currot = new Laya.Quaternion;\r\n this.CurrectRotate = new Laya.Quaternion();\r\n this.offest = new Vector3();\r\n this.curpos = new Vector3();\r\n NpcRunner.ins = this;\r\n EventManager.StageOn(StageState.Start, this, this.Begin);\r\n }\r\n static get Instance() {\r\n if (NpcRunner.ins) {\r\n return NpcRunner.ins;\r\n }\r\n else {\r\n return new NpcRunner();\r\n }\r\n }\r\n onAwake() {\r\n this.m_npcmodel = this.owner;\r\n this.m_npcanimator = this.owner.getComponent(Laya.Animator);\r\n this.player = PlayerControl.Instance.Player;\r\n this.m_distance = AccountManager.Instance.curplayerData.NpcRunDistance * 1.65;\r\n this.m_distanceatk = AccountManager.Instance.curplayerData.NpcAtkDistance * 1.65;\r\n this.m_npcspeed = AccountManager.Instance.curplayerData.NpcSpeed;\r\n }\r\n Begin() {\r\n this.ChangeState(NpcState.Idle);\r\n this.begin = true;\r\n }\r\n onUpdate() {\r\n if (!this.begin)\r\n return;\r\n if (this.npc_state == NpcState.Die)\r\n return;\r\n if (this.frontdie || this.reardie) {\r\n this.ChangeState(NpcState.Die);\r\n return;\r\n }\r\n var distance = Vector3.distance(this.player.transform.position, this.m_npcmodel.transform.position);\r\n if (distance < this.m_distance && distance > this.m_distanceatk && !this.atked) {\r\n Vector3.subtract(this.player.transform.position, this.m_npcmodel.transform.position, this.currotV);\r\n Vector3.normalize(this.currotV, this.currotV);\r\n this.m_npcmodel.transform.lookAt(new Vector3(this.m_npcmodel.transform.position.x - this.currotV.x, this.m_npcmodel.transform.position.y, this.m_npcmodel.transform.position.z - this.currotV.z), new Vector3(0, 1, 0));\r\n this.NPCMoveDir = this.currotV;\r\n this.canmove = true;\r\n this.ChangeState(NpcState.Run);\r\n }\r\n else if (distance <= this.m_distanceatk && !this.atked) {\r\n Vector3.subtract(this.player.transform.position, this.m_npcmodel.transform.position, this.currotV);\r\n Vector3.normalize(this.currotV, this.currotV);\r\n this.m_npcmodel.transform.lookAt(new Vector3(this.m_npcmodel.transform.position.x - this.currotV.x, this.m_npcmodel.transform.position.y, this.m_npcmodel.transform.position.z - this.currotV.z), new Vector3(0, 1, 0));\r\n this.NPCMoveDir = this.currotV;\r\n this.canmove = false;\r\n this.atked = true;\r\n this.ChangeState(NpcState.Attack);\r\n }\r\n this.Move(this.NPCMoveDir, 2);\r\n this.RayCheck();\r\n }\r\n Move(_dir, _speed) {\r\n if (this.canmove && !this.atked) {\r\n var sp = GameTools.Instance.lerp(this.m_npcspeed, _speed, 0.1);\r\n this.m_npcspeed = sp;\r\n Vector3.scale(_dir, this.m_npcspeed, this.offest);\r\n Vector3.add(this.m_npcmodel.transform.position, this.offest, this.curpos);\r\n Vector3.lerp(this.m_npcmodel.transform.position, this.curpos, 0.15, this.curpos);\r\n this.curpos = new Vector3(this.curpos.x, this.curpos.y, this.curpos.z);\r\n this.m_npcmodel.transform.position = this.curpos;\r\n }\r\n }\r\n ChangeState(_state) {\r\n if (this.npc_state == _state)\r\n return;\r\n this.npc_state = _state;\r\n switch (this.npc_state) {\r\n case NpcState.Attack:\r\n this.Attack();\r\n break;\r\n case NpcState.Pursue:\r\n this.Pursue();\r\n break;\r\n case NpcState.Win:\r\n this.Win();\r\n break;\r\n case NpcState.Idle:\r\n this.Idle();\r\n break;\r\n case NpcState.Run:\r\n this.Run();\r\n break;\r\n case NpcState.Die:\r\n this.Die();\r\n break;\r\n }\r\n }\r\n Idle() {\r\n this.m_npcanimator.play(\"idle\");\r\n }\r\n Attack() {\r\n this.m_npcanimator.play(\"atk\");\r\n Laya.timer.frameLoop(1, this, () => {\r\n if (this.m_npcanimator.getCurrentAnimatorPlayState(0).normalizedTime >= 1) {\r\n this.m_npcanimator.play(\"win\");\r\n Laya.timer.clearAll(this);\r\n }\r\n });\r\n }\r\n Win() {\r\n this.m_npcanimator.play(\"win\");\r\n }\r\n Pursue() {\r\n }\r\n Run() {\r\n this.m_npcanimator.play(\"run\");\r\n }\r\n Die() {\r\n if (this.frontdie) {\r\n this.m_npcanimator.play(\"diefront\");\r\n return;\r\n }\r\n if (this.reardie) {\r\n this.m_npcanimator.play(\"dierear\");\r\n return;\r\n }\r\n this.m_npcanimator.play(\"diefront\");\r\n this.canmove = false;\r\n Laya.timer.clearAll(this);\r\n Laya.timer.once(2000, this, () => {\r\n GamePool.Instance.RecoveryModel(this.m_npcmodel);\r\n });\r\n }\r\n PiaoZi() {\r\n let help = new Laya.Image();\r\n help.skin = \"Game/res/textrue/help.png\";\r\n Laya.stage.addChild(help);\r\n let screenpos = new Vector3();\r\n Laya.timer.frameLoop(1, this, () => {\r\n AssetManager.Instance.maincamera.worldToViewportPoint(this.m_npcmodel.transform.position, screenpos);\r\n help.pos(screenpos.x, screenpos.y);\r\n });\r\n }\r\n RayCheck() {\r\n if (this.wined)\r\n return;\r\n let startpos = new Vector3(this.m_npcmodel.transform.position.x, this.m_npcmodel.transform.position.y + 1, this.m_npcmodel.transform.position.z);\r\n let dir = Transform3DHelper.getForward(this.m_npcmodel.transform);\r\n let ray = new Laya.Ray(startpos, dir);\r\n let hitres = new Laya.HitResult();\r\n let isHit = AssetManager.Instance.mainscene.physicsSimulation.rayCast(ray, hitres, 3, 200);\r\n if (isHit) {\r\n let target = hitres.collider.owner.parent;\r\n if (target.name == \"player\") {\r\n let runner = target.getComponent(Runner);\r\n let ani = target.getComponent(Laya.Animator);\r\n runner.isdead = true;\r\n this.wined = true;\r\n }\r\n else if (target.name == \"bonfire\") {\r\n this.ChangeState(NpcState.Die);\r\n this.wined = true;\r\n }\r\n else if (target.name == \"stone\") {\r\n }\r\n else if (target.name == \"\") {\r\n }\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=NpcRunner.js.map",
  3. "references": [
  4. "E:/LayaProject/ArcherWorrior/src/Game/GameManager.ts",
  5. "E:/LayaProject/ArcherWorrior/src/Tools/EventManager.ts",
  6. "E:/LayaProject/ArcherWorrior/src/Tools/GameTools.ts",
  7. "E:/LayaProject/ArcherWorrior/src/Game/PlayerControl.ts",
  8. "E:/LayaProject/ArcherWorrior/src/Tools/AssetManager.ts",
  9. "E:/LayaProject/ArcherWorrior/src/Game/Runner.ts",
  10. "E:/LayaProject/ArcherWorrior/src/Tools/GamePool.ts",
  11. "E:/LayaProject/ArcherWorrior/src/Net/AccountManager.ts"
  12. ],
  13. "map": "{\"version\":3,\"file\":\"NpcRunner.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/Game/NpcRunner.ts\"],\"names\":[],\"mappings\":\"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\"}"
  14. }