{ "code": "var Vector3 = Laya.Vector3;\r\nimport { GameTools, Transform3DHelper } from \"../Tools/GameTools\";\r\nimport { EventManager, StageState } from \"../Tools/EventManager\";\r\nimport { AssetManager } from \"../Tools/AssetManager\";\r\nimport { NpcRunner } from \"./NpcRunner\";\r\nexport var CharacterState;\r\n(function (CharacterState) {\r\n CharacterState[CharacterState[\"Run\"] = 0] = \"Run\";\r\n CharacterState[CharacterState[\"Idle\"] = 1] = \"Idle\";\r\n CharacterState[CharacterState[\"Die\"] = 2] = \"Die\";\r\n CharacterState[CharacterState[\"Win\"] = 3] = \"Win\";\r\n CharacterState[CharacterState[\"Shoot\"] = 4] = \"Shoot\";\r\n})(CharacterState || (CharacterState = {}));\r\nexport class Runner extends Laya.Script3D {\r\n constructor() {\r\n super();\r\n this.m_raydistance = 1000;\r\n this.isdead = false;\r\n this.canmove = false;\r\n this._speed = 1;\r\n this._press = false;\r\n this.RayDir = new Vector3();\r\n this.DownHit = new Laya.HitResult();\r\n this.FowardHit = new Laya.HitResult();\r\n this.curspeed = 0;\r\n this.currotV = new Vector3();\r\n this.currot = new Laya.Quaternion;\r\n this.NormalizeSpeed = new Vector3();\r\n this.curpos = new Vector3();\r\n this.offest = new Vector3();\r\n }\r\n static get Instance() {\r\n if (Runner.ins) {\r\n return Runner.ins;\r\n }\r\n else {\r\n return new Runner();\r\n }\r\n }\r\n onAwake() {\r\n this.m_player = this.owner;\r\n this.m_animator = this.owner.getComponent(Laya.Animator);\r\n this.m_arrowpos = this.owner.getChildByName(\"arrowpos\");\r\n this.m_raypos = this.owner.getChildByName(\"raypos\");\r\n this.m_archerpos = this.owner.getChildByName(\"archerpos\");\r\n this.m_horseanimator = this.owner.getChildByName(\"horse\").getComponent(Laya.Animator);\r\n this.ChangeState(CharacterState.Idle);\r\n EventManager.StageOn(StageState.Start, this, this.Begin);\r\n }\r\n Begin() {\r\n this.canmove = true;\r\n this.ChangeState(CharacterState.Run);\r\n }\r\n onUpdate() {\r\n if (this.isdead) {\r\n this.ChangeState(CharacterState.Die);\r\n return;\r\n }\r\n if (this.canmove) {\r\n if (this._press) {\r\n this._speed = 2;\r\n }\r\n this.Move(new Vector3(0, 0, 1), this._speed);\r\n }\r\n this.RayCheck();\r\n }\r\n MoveX(_speed) {\r\n _speed *= 0.07;\r\n this.RayDir = new Vector3(_speed, 0, 0);\r\n this.m_player.transform.translate(new Vector3(_speed, 0, 0));\r\n }\r\n TurnDir(_dir) {\r\n if (_dir.x != 0) {\r\n Vector3.lerp(this.currotV, _dir, 0.35, _dir);\r\n this.currotV = _dir;\r\n Laya.Quaternion.rotationLookAt(_dir, new Vector3(0, 1, 0), this.currot);\r\n Laya.Quaternion.slerp(this.m_player.transform.rotation, this.currot, 0.025, this.currot);\r\n this.currot = new Laya.Quaternion(0, this.currot.y, 0);\r\n this.m_player.transform.rotation = this.currot;\r\n }\r\n else {\r\n }\r\n }\r\n Move(_dir, _speed) {\r\n var sp = GameTools.Instance.lerp(this.curspeed, _speed, 0.1);\r\n this.curspeed = sp;\r\n Vector3.scale(_dir, this.curspeed, this.offest);\r\n Vector3.add(this.m_player.transform.position, this.offest, this.curpos);\r\n Vector3.lerp(this.m_player.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_player.transform.position = this.curpos;\r\n }\r\n ChangeState(_state) {\r\n if (this.m_characterstate == _state)\r\n return;\r\n this.m_characterstate = _state;\r\n switch (this.m_characterstate) {\r\n case CharacterState.Idle:\r\n this.Idle();\r\n break;\r\n case CharacterState.Run:\r\n this.Run();\r\n break;\r\n case CharacterState.Die:\r\n this.Die();\r\n break;\r\n case CharacterState.Win:\r\n this.Win();\r\n break;\r\n case CharacterState.Shoot:\r\n this.Shoot();\r\n break;\r\n }\r\n }\r\n Idle() {\r\n this.m_animator.play(\"idle\");\r\n this.m_horseanimator.play(\"idle\");\r\n }\r\n Run() {\r\n this.m_animator.play(\"down\");\r\n this.m_horseanimator.play(\"run\");\r\n }\r\n Die() {\r\n this.canmove = false;\r\n this.m_animator.play(\"die\");\r\n this.m_horseanimator.play(\"idle\");\r\n this.m_raypos.destroy();\r\n this.m_arrowpos.destroy();\r\n this.m_archerpos.destroy();\r\n }\r\n Win() {\r\n }\r\n Shoot() {\r\n this.m_animator.play(\"shoot\");\r\n this.m_animator.play(\"run\");\r\n }\r\n RayCheck() {\r\n if (this.DownRayCheck) {\r\n this.m_player.transform.position = new Vector3(this.m_player.transform.position.x, this.DownHit.point.y, this.m_player.transform.position.z);\r\n }\r\n if (this.FowardRayCheck) {\r\n this.CrashBarrier();\r\n }\r\n }\r\n CrashBarrier() {\r\n var target = this.FowardHit.collider.owner;\r\n if (target.name == \"\") {\r\n }\r\n else if (target.name == \"fire\") {\r\n }\r\n else if (target.name == \"fence\") {\r\n }\r\n else if (target.name == \"\") {\r\n }\r\n }\r\n get DownRayCheck() {\r\n var isDownHit = false;\r\n var startPos = new Vector3(this.m_player.transform.position.x, this.m_player.transform.position.y + 1.5, this.m_player.transform.position.z + 0.5);\r\n var direction = new Vector3(0, -1, 0);\r\n var DownRay = new Laya.Ray(startPos, direction);\r\n if (AssetManager.Instance.mainscene.physicsSimulation.rayCast(DownRay, this.DownHit, 100)) {\r\n if (this.DownHit.collider.collisionGroup == 100) {\r\n isDownHit = true;\r\n }\r\n }\r\n return isDownHit;\r\n }\r\n get FowardRayCheck() {\r\n var isFowardHit = false;\r\n var startPos = new Vector3(this.m_player.transform.position.x, this.m_player.transform.position.y, this.m_player.transform.position.z + 0.5);\r\n var direction = new Vector3(0, 0, 1);\r\n var DownRay = new Laya.Ray(startPos, direction);\r\n if (AssetManager.Instance.mainscene.physicsSimulation.rayCast(DownRay, this.FowardHit, 1)) {\r\n if (this.FowardHit.collider.collisionGroup == 100) {\r\n isFowardHit = true;\r\n }\r\n }\r\n return isFowardHit;\r\n }\r\n Archery() {\r\n let ray = this.owner.getChildByName(\"raypos\").getChildAt(0);\r\n let forw = Transform3DHelper.getForward(ray.transform);\r\n let raypos = this.owner.getChildByName(\"raypos\");\r\n let trans = raypos.transform;\r\n let testRay = new Laya.Ray(new Vector3(trans.position.x, trans.position.y - 1, trans.position.z), forw);\r\n let hitRes = new Laya.HitResult();\r\n if (AssetManager.Instance.mainscene.physicsSimulation.rayCast(testRay, hitRes)) {\r\n let target = hitRes.collider.owner.parent;\r\n if (hitRes.collider.owner.name == \"npcfrontcollider\") {\r\n let npcrunner = target.getComponent(NpcRunner);\r\n npcrunner.frontdie = true;\r\n }\r\n else if (hitRes.collider.owner.name == \"npcrearcollider\") {\r\n let npcrunner = target.getComponent(NpcRunner);\r\n npcrunner.reardie = true;\r\n }\r\n console.log(\"射箭打到东西了---\", hitRes.collider.owner.name);\r\n }\r\n else {\r\n }\r\n }\r\n ArrowMove(_transform, _targetpos, _delay) {\r\n }\r\n}\r\n//# sourceMappingURL=Runner.js.map", "references": [ "E:/LayaProject/ArcherWorrior/src/Tools/GameTools.ts", "E:/LayaProject/ArcherWorrior/src/Tools/EventManager.ts", "E:/LayaProject/ArcherWorrior/src/Tools/AssetManager.ts", "E:/LayaProject/ArcherWorrior/src/Tools/GamePool.ts", "E:/LayaProject/ArcherWorrior/src/Game/GameManager.ts", "E:/LayaProject/ArcherWorrior/src/Game/NpcRunner.ts" ], "map": "{\"version\":3,\"file\":\"Runner.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/Game/Runner.ts\"],\"names\":[],\"mappings\":\"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\"}" }