1234567891011121314151617181920212223242526 |
- {
- "code": "import { Role, RoleState, RoleData } from \"./Role\";\r\nimport { AssetManager } from \"./AssetManager\";\r\nimport { SceneManager } from \"./SceneManager\";\r\nimport PoolManager from \"../Util/PoolManager\";\r\nvar Vector3 = Laya.Vector3;\r\nimport { ColliderLay, GameState, TouchState } from \"./DataMaker\";\r\nimport { EventManager, EventType } from \"./EventManager\";\r\nimport { GameManager } from \"./GameManager\";\r\nimport { LevelManager } from \"./LevelManager\";\r\nimport { GameUtils } from \"../Util/GameUtils\";\r\nimport { CameraManager } from \"./CameraManager\";\r\nimport { WeaponTrigger } from \"./WeaponTrigger\";\r\nimport { InputManager } from \"./InputManager\";\r\nimport { WxApi } from \"../WXSDK/Sdk\";\r\nimport { AudioControl, VoiceType } from \"./AudioControl\";\r\nexport class PlayerData extends RoleData {\r\n constructor(_id, _startpos) {\r\n super(_id, _startpos);\r\n }\r\n}\r\nexport class Player extends Role {\r\n constructor() {\r\n super(...arguments);\r\n this.onland = true;\r\n this.runpoint = [];\r\n this.movespeed = 1.25;\r\n this.curpos = new Vector3();\r\n this.currot = new Laya.Quaternion();\r\n this.landhit = new Laya.HitResult();\r\n this.forwardhit = new Laya.HitResult();\r\n this.playfall = false;\r\n this.canfowardmove = true;\r\n this.landg = 0;\r\n this.startcamerapos = new Vector3();\r\n this.startcamerarot = new Laya.Quaternion();\r\n this.find = false;\r\n }\r\n static Create(_data, _roleskin) {\r\n var roleid = _roleskin.skinid;\r\n var roleasset = AssetManager.role.getValue(roleid);\r\n if (roleasset == null)\r\n roleasset = AssetManager.role.getValue(1);\r\n var model = PoolManager.GetSprite3D(roleasset);\r\n SceneManager.mainscene.addChild(model);\r\n model.transform.position = new Vector3(_data.startpos.x, _data.startpos.y, _data.startpos.z);\r\n model.transform.rotationEuler = new Vector3(model.transform.rotationEuler.x, 360 - _data.startpos.w, model.transform.rotationEuler.z);\r\n var mainrole = model.addComponent(Player);\r\n Player.mainpalyer = mainrole;\r\n var mneck;\r\n if (roleid > 1) {\r\n mneck = model.getChildAt(0).getChildAt(0).getChildAt(0).getChildAt(0).getChildAt(2).getChildAt(0).getChildAt(0);\r\n }\r\n else {\r\n mneck = model.getChildAt(0).getChildAt(0).getChildAt(0).getChildAt(0).getChildAt(2).getChildAt(0);\r\n }\r\n mainrole.lefthandpoint = mneck.getChildAt(1).getChildAt(0).getChildAt(0).getChildAt(0).getChildAt(0);\r\n mainrole.righthandpoint = mneck.getChildAt(2).getChildAt(0).getChildAt(0).getChildAt(0).getChildAt(0);\r\n mainrole.WeaponShow(1);\r\n mainrole.jseffect = PoolManager.GetSprite3D(AssetManager.effect.getValue(3));\r\n model.addChild(mainrole.jseffect);\r\n mainrole.jseffect.transform.localPosition = new Vector3(0, 0, 0);\r\n mainrole.jseffect.active = false;\r\n mainrole.mcollider = model.getChildAt(1).getComponent(Laya.PhysicsCollider);\r\n mainrole.mcollider.collisionGroup = ColliderLay.player;\r\n mainrole.Init(model);\r\n mainrole.OnInit();\r\n return mainrole;\r\n }\r\n OnInit() {\r\n this.mlevel = LevelManager.Instance.curlevel;\r\n this.movespeed = this.mlevel.leveldata.missiondata.move;\r\n this.RegEvent();\r\n CameraManager.Instance.SetFollow(this.cursprite);\r\n Laya.timer.frameLoop(1, this, this.OnLifeLoop);\r\n this.runpoint.push(this.cursprite.transform.position.clone());\r\n }\r\n OnClear() {\r\n PoolManager.RecoverSprite3D(this.jseffect, true);\r\n if (this.wineffect)\r\n PoolManager.RecoverSprite3D(this.wineffect);\r\n EventManager.InputOff(TouchState.slider, this, this.OnSlider);\r\n EventManager.InputOff(TouchState.up, this, this.OnUp);\r\n EventManager.Off(EventType.Hit, this, this.OnHit);\r\n EventManager.GameOff(GameState.Playing, this, this.OnGamePlaying);\r\n Laya.timer.clear(this, this.OnLifeLoop);\r\n this.runpoint = [];\r\n }\r\n RegEvent() {\r\n EventManager.InputOn(TouchState.slider, this, this.OnSlider);\r\n EventManager.InputOn(TouchState.up, this, this.OnUp);\r\n EventManager.On(EventType.Hit, this, this.OnHit);\r\n EventManager.GameOn(GameState.Playing, this, this.OnGamePlaying);\r\n }\r\n OnGamePlaying() {\r\n }\r\n onStateChange(_state, _data) {\r\n if (_state == RoleState.Die) {\r\n this.OnEnterDie();\r\n }\r\n else if (_state == RoleState.Runing) {\r\n this.OnEnterRunning();\r\n }\r\n else if (_state == RoleState.Idle) {\r\n this.OnEnterIdle();\r\n }\r\n else if (_state == RoleState.Attack) {\r\n this.OnEnterAttack(_data);\r\n }\r\n else if (_state == RoleState.Win) {\r\n this.OnEnterWin();\r\n }\r\n }\r\n OnEnterWin() {\r\n WxApi.Shake(false);\r\n this.curanimator.play(\"idle\");\r\n Laya.timer.clear(this, this.OnLifeLoop);\r\n this.wineffect = PoolManager.GetSprite3D(AssetManager.effect.getValue(6));\r\n SceneManager.mainscene.addChild(this.wineffect);\r\n this.wineffect.transform.position = this.cursprite.transform.position;\r\n AudioControl.ClearBgm();\r\n AudioControl.PlayVoice(VoiceType.win);\r\n Laya.timer.once(1500, this, () => {\r\n GameManager.Instance.ChangeGameState(GameState.Win);\r\n });\r\n }\r\n OnHit(_monster) {\r\n this.ChangeState(RoleState.Die);\r\n }\r\n OnEnterAttack(_sprite) {\r\n }\r\n OnEnterIdle() {\r\n if (!this.playfall)\r\n this.curanimator.play(\"idle\");\r\n }\r\n OnEnterRunning() {\r\n if (!this.playfall)\r\n this.curanimator.play(\"run\");\r\n }\r\n OnEnterDie() {\r\n WxApi.Shake(false);\r\n AudioControl.ClearBgm();\r\n AudioControl.PlayVoice(VoiceType.lose);\r\n this.curanimator.play(\"die\");\r\n CameraManager.Instance.StopFollow();\r\n Laya.timer.frameOnce(80, this, () => {\r\n GameManager.Instance.ChangeGameState(GameState.Lose);\r\n });\r\n }\r\n OnEnterLose() {\r\n }\r\n OnGameWin(_player) {\r\n }\r\n OnSlider(_dir) {\r\n if (GameManager.Instance.curgamestate != GameState.Playing)\r\n return;\r\n var rotdir = _dir;\r\n this.Move(_dir, rotdir);\r\n }\r\n get revivepoint() {\r\n if (this.runpoint.length > 0) {\r\n return this.runpoint[0];\r\n }\r\n var datapos = LevelManager.Instance.curlevel.leveldata.playerdata.startpos;\r\n return new Vector3(datapos.x, datapos.y, datapos.z);\r\n }\r\n Revive() {\r\n this.cursprite.transform.position = this.revivepoint;\r\n this.end = false;\r\n this.ChangeState(RoleState.Idle, true);\r\n CameraManager.Instance.ResetTarget(this.cursprite);\r\n this.wudi = true;\r\n Laya.timer.once(5000, this, () => {\r\n this.wudi = false;\r\n });\r\n }\r\n Move(_dir, rotdir) {\r\n this.ChangeState(RoleState.Runing);\r\n if (this.currolestate != RoleState.Runing)\r\n return;\r\n var curdir = new Vector3(-rotdir.x, -rotdir.y, -rotdir.z);\r\n Laya.Quaternion.rotationLookAt(curdir, new Vector3(0, 1, 0), this.currot);\r\n this.currot.invert(this.currot);\r\n Laya.Quaternion.slerp(this.cursprite.transform.rotation, this.currot, 0.06, this.currot);\r\n this.cursprite.transform.rotation = this.currot;\r\n Vector3.add(this.cursprite.transform.position, _dir, this.curpos);\r\n var addv = 0.1 * this.movespeed;\r\n Vector3.lerp(this.cursprite.transform.position, this.curpos, addv, this.curpos);\r\n if (this.canfowardmove) {\r\n this.cursprite.transform.position = this.curpos;\r\n }\r\n EventManager.Trigger(EventType.Running, [this.cursprite.transform.position.clone()]);\r\n }\r\n OnUp() {\r\n this.ChangeState(RoleState.Idle);\r\n }\r\n WeaponShow(_id) {\r\n for (var i = 0; i < this.lefthandpoint.numChildren; i++) {\r\n var weapon = this.lefthandpoint.getChildAt(i);\r\n weapon.active = _id - 1 == i;\r\n if (_id - 1 == i) {\r\n this.curlweapon = weapon;\r\n this.curlweapon.getChildAt(0).addComponent(WeaponTrigger);\r\n }\r\n }\r\n for (var i = 0; i < this.righthandpoint.numChildren; i++) {\r\n var weapon = this.righthandpoint.getChildAt(i);\r\n weapon.active = _id - 1 == i;\r\n if (_id - 1 == i) {\r\n this.currweapon = weapon;\r\n this.currweapon.getChildAt(0).addComponent(WeaponTrigger);\r\n }\r\n }\r\n }\r\n get LandCheck() {\r\n var hitenter = false;\r\n var curpos = this.cursprite.transform.position;\r\n var startpoint = new Vector3(curpos.x, curpos.y + 10, curpos.z);\r\n var dir = new Vector3(0, -1, 0);\r\n var ray = new Laya.Ray(startpoint, dir);\r\n var landlay = ColliderLay.plane | ColliderLay.end;\r\n if (SceneManager.mainscene.physicsSimulation.rayCast(ray, this.landhit, 100, 1, landlay)) {\r\n var hight = startpoint.y - this.landhit.point.y;\r\n hitenter = true;\r\n hitenter = (hight > 9 && hight < 11) ? true : false;\r\n if (hitenter == false) {\r\n }\r\n if (this.landhit.collider.collisionGroup == ColliderLay.end) {\r\n this.ChangeState(RoleState.Win);\r\n }\r\n }\r\n return hitenter;\r\n }\r\n get ForwardCheck() {\r\n var hitenter = true;\r\n var curpos = this.cursprite.transform.position;\r\n var startpoint = new Vector3(curpos.x, curpos.y + 0.1, curpos.z);\r\n var dir = new Vector3();\r\n this.cursprite.transform.getForward(dir);\r\n dir = new Vector3(-dir.x, -dir.y, -dir.z);\r\n var ray = new Laya.Ray(startpoint, dir);\r\n if (SceneManager.mainscene.physicsSimulation.rayCast(ray, this.forwardhit, 0.5)) {\r\n if (this.forwardhit.collider.collisionGroup == ColliderLay.obstacle) {\r\n return false;\r\n }\r\n }\r\n return hitenter;\r\n }\r\n OnLifeLoop() {\r\n if (GameManager.Instance.curgamestate != GameState.Playing)\r\n return;\r\n var curland = this.LandCheck;\r\n if (curland) {\r\n var mpos = this.cursprite.transform.position;\r\n if (this.landhit) {\r\n this.cursprite.transform.position = new Vector3(mpos.x, this.landhit.point.y, mpos.z);\r\n this.runpoint.push(this.cursprite.transform.position.clone());\r\n if (this.runpoint.length > 50) {\r\n this.runpoint.splice(0, 1);\r\n }\r\n }\r\n }\r\n if (!this.onland && curland) {\r\n this.playfall = false;\r\n this.jseffect.active = false;\r\n if (this.currolestate == RoleState.Idle) {\r\n this.curanimator.play(\"idle\");\r\n }\r\n else if (this.currolestate == RoleState.Runing) {\r\n this.curanimator.play(\"run\");\r\n }\r\n this.landg = 0;\r\n }\r\n this.onland = curland;\r\n if (!this.onland) {\r\n if (this.playfall == false) {\r\n this.playfall = true;\r\n this.curanimator.play(\"fall\");\r\n this.jseffect.active = true;\r\n }\r\n if (this.landg != 0.1)\r\n this.landg = GameUtils.lerp(this.landg, 0.1, 0.025);\r\n var mpos = this.cursprite.transform.position;\r\n this.cursprite.transform.position = new Vector3(mpos.x, mpos.y - this.landg, mpos.z);\r\n this.CheckFallDie();\r\n }\r\n this.canfowardmove = this.ForwardCheck;\r\n }\r\n CheckFallDie() {\r\n if (this.cursprite.transform.position.y < LevelManager.Instance.curlevel.minhight - 3) {\r\n GameManager.Instance.ChangeGameState(GameState.Lose);\r\n }\r\n }\r\n FindBoos(_boos) {\r\n if (this.find)\r\n return;\r\n this.find = true;\r\n InputManager.Instance.OnTouchOut();\r\n InputManager.caninput = false;\r\n this.startcamerapos = SceneManager.maincamera.transform.position.clone();\r\n this.startcamerarot = SceneManager.maincamera.transform.rotation.clone();\r\n CameraManager.Instance.StopFollow();\r\n this.ChangeState(RoleState.Wait);\r\n var lookdir = new Vector3();\r\n var boospos = _boos.cursprite.transform.position.clone();\r\n var mpos = Player.mainpalyer.cursprite.transform.position.clone();\r\n Vector3.subtract(mpos, boospos, lookdir);\r\n Vector3.normalize(lookdir, lookdir);\r\n Vector3.scale(lookdir, 6, lookdir);\r\n var lookpos = new Vector3();\r\n Vector3.add(boospos, lookdir, lookpos);\r\n lookpos = new Vector3(lookpos.x, lookpos.y + 3, lookpos.z);\r\n var booslookpos = new Vector3(boospos.x, boospos.y + 1, boospos.z);\r\n var ssf = GameUtils.TweenMove(SceneManager.maincamera.transform, lookpos, 1.2, Laya.Handler.create(this, () => {\r\n ssf.clear();\r\n _boos.Provocation(() => {\r\n this.BackCa();\r\n });\r\n }), Laya.Ease.quadOut, booslookpos);\r\n }\r\n BackCa() {\r\n SceneManager.maincamera.transform.rotation = this.startcamerarot;\r\n CameraManager.Instance.ResetTarget(this.cursprite);\r\n InputManager.caninput = true;\r\n this.find = false;\r\n }\r\n}\r\n//# sourceMappingURL=Player.js.map",
- "references": [
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/Role.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/AssetManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/SceneManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Util/PoolManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/DataMaker.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/EventManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/GameManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/Warrior.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/LevelMaker.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/LevelManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Util/GameUtils.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Util/BezierCurve.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Window/InGameWindow.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/CameraManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/WeaponTrigger.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/InputManager.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/WXSDK/Sdk.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/AudioControl.ts",
- "D:/Ver/samuraiflash/laya/samuraiflash/src/Main/SkinMaker.ts"
- ],
- "map": "{\"version\":3,\"file\":\"Player.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/Main/Player.ts\"],\"names\":[],\"mappings\":\"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\"}"
- }
|