123456789101112131415161718 |
- {
- "code": "var Vector3 = Laya.Vector3;\r\nimport { PlayerControl } from \"./PlayerControl\";\r\nimport { AccountManager } from \"../Net/AccountManager\";\r\nimport GamePool from \"../Tools/GamePool\";\r\nimport { AssetManager } from \"../Tools/AssetManager\";\r\nimport { GameTools, Transform3DHelper } from \"../Tools/GameTools\";\r\nimport { Runner } from \"./Runner\";\r\nimport { StageControl } from \"./StageControl\";\r\nimport { EventManager, StageState } from \"../Tools/EventManager\";\r\nimport { GameManager } from \"./GameManager\";\r\nimport InGameView from \"../View/InGameView\";\r\nimport { WXSDK } from \"../Net/WXSDK\";\r\nexport var BossState;\r\n(function (BossState) {\r\n BossState[BossState[\"Idle\"] = 0] = \"Idle\";\r\n BossState[BossState[\"Run\"] = 1] = \"Run\";\r\n BossState[BossState[\"Die\"] = 2] = \"Die\";\r\n BossState[BossState[\"Walk\"] = 3] = \"Walk\";\r\n})(BossState || (BossState = {}));\r\n;\r\nexport class Boss extends Laya.Script {\r\n constructor() {\r\n super();\r\n this.canmove = false;\r\n this.FowardHit = new Laya.HitResult();\r\n this.isfence = false;\r\n this.arrowarray = [];\r\n this.m_arrowspeed = 0;\r\n this.AtkInterval = 0;\r\n this.BossSpeed = 1;\r\n this.CreatGround = false;\r\n this.randomdir = false;\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 this.offestx = 0;\r\n this.atk = false;\r\n this.run = false;\r\n this.curspeed = 0;\r\n this.BossMoveDir = new Vector3(0, 0, 1);\r\n this.CurrectRotate = new Laya.Quaternion();\r\n this.recover = false;\r\n this.speed = 0;\r\n this.arrowoffset = new Vector3();\r\n this.arrowcurpos = new Vector3();\r\n EventManager.StageOn(StageState.Press, this, this.AddSpeed);\r\n EventManager.StageOn(StageState.UnPress, this, this.SlowSpeed);\r\n EventManager.StageOn(StageState.Win, this, this.GameOver);\r\n EventManager.StageOn(StageState.Lose, this, this.GameOver);\r\n }\r\n static get Instance() {\r\n if (Boss.ins) {\r\n return Boss.ins;\r\n }\r\n else {\r\n return new Boss();\r\n }\r\n }\r\n onAwake() {\r\n this.m_bossmodel = this.owner;\r\n this.m_horsemodel = this.m_bossmodel.parent;\r\n this.m_bossanimator = this.m_bossmodel.getComponent(Laya.Animator);\r\n this.m_horseanimator = this.m_horsemodel.getComponent(Laya.Animator);\r\n this.arrowpos = this.m_bossmodel.getChildByName(\"arrowpos\");\r\n this.archerpos = this.m_bossmodel.getChildByName(\"archerpos\");\r\n this.raypos = this.m_bossmodel.getChildByName(\"raypos\");\r\n this.CreatRay(this.raypos.transform.position.clone(), this.raypos.transform.rotationEuler.clone(), this.raypos);\r\n this.CreatArcher(this.archerpos.transform.position.clone(), this.archerpos.transform.rotationEuler.clone(), this.archerpos);\r\n this.Player = PlayerControl.Instance.Player;\r\n let stage = Number(AccountManager.Instance.curplayerData.GainAccount(\"stage\"));\r\n this.BossHp = Number(StageControl.Instance.curstagedic[stage].BossHp);\r\n this.NowBossHp = this.BossHp;\r\n this.AddHpUI();\r\n this.BossDistance = AccountManager.Instance.curplayerData.BossDistance * 1.65;\r\n this.level = AccountManager.Instance.curplayerData.GainAccount(\"stage\");\r\n this.AtkInterval = AccountManager.Instance.curplayerData.BossAtkInterval - (this.level - 1) * 0.5;\r\n this.m_arrowspeed = AccountManager.Instance.curplayerData.ArrowSpeed;\r\n }\r\n onUpdate() {\r\n if (this.isdead)\r\n return;\r\n var dis = Vector3.distance(this.Player.transform.position, this.m_bossmodel.transform.position);\r\n if (dis <= this.BossDistance && !this.run) {\r\n this.run = true;\r\n WXSDK.Shake();\r\n this.ChangeState(BossState.Run);\r\n }\r\n if (dis >= AccountManager.Instance.curplayerData.MaxBossDistance * 1.65 && this.run) {\r\n this.canmove = false;\r\n }\r\n else if (dis > AccountManager.Instance.curplayerData.MinBossDistance * 1.65 && dis < AccountManager.Instance.curplayerData.MaxBossDistance * 1.65 && this.run) {\r\n this.ChangeState(BossState.Run);\r\n this.canmove = true;\r\n this.BossSpeed = StageControl.Instance.curstage.mainrolespeed;\r\n }\r\n if (!this.canmove)\r\n return;\r\n this.Move(this.BossMoveDir, this.BossSpeed);\r\n if (!this.atk) {\r\n this.atk = true;\r\n Laya.timer.once(this.AtkInterval * 1000, this, this.Atk);\r\n }\r\n if (!this.CreatGround && this.m_bossmodel.transform.position.z > StageControl.Instance.LastGround - 50) {\r\n StageControl.Instance.CreatGround(5);\r\n }\r\n if (!this.randomdir) {\r\n this.randomdir = true;\r\n Laya.timer.once(2000, this, this.RandomDir);\r\n }\r\n this.RayCheck();\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_horsemodel.transform.rotation, this.currot, 0.025, this.currot);\r\n this.currot = new Laya.Quaternion(0, this.currot.y, 0);\r\n this.m_horsemodel.transform.rotation = this.currot;\r\n }\r\n }\r\n MoveX(_speed) {\r\n if (this.m_horsemodel.transform.position.x < 0 && _speed < 0 && this.isfence) {\r\n return;\r\n }\r\n else if (this.m_horsemodel.transform.position.x > 0 && _speed > 0 && this.isfence) {\r\n return;\r\n }\r\n else if (this.m_horsemodel.transform.position.x >= GameManager.Instance.fenceleftpos && _speed > 0) {\r\n return;\r\n }\r\n else if (this.m_horsemodel.transform.position.x <= GameManager.Instance.fencerightpos && _speed < 0) {\r\n return;\r\n }\r\n _speed *= 0.07;\r\n this.m_horsemodel.transform.translate(new Vector3(_speed, 0, 0));\r\n }\r\n RandomDir() {\r\n let _dir = Math.random() > 0.5 ? -0.5 : 0.5;\r\n this.BossMoveDir = new Vector3(_dir, 0, 1);\r\n Laya.timer.once(200, this, () => {\r\n this.BossMoveDir = new Vector3(0, 0, 1);\r\n this.randomdir = false;\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_horsemodel.transform.position, this.offest, this.curpos);\r\n Vector3.lerp(this.m_horsemodel.transform.position, this.curpos, 0.15, this.curpos);\r\n this.m_horsemodel.transform.position = this.curpos;\r\n this.m_horsemodel.transform.position = this.m_horsemodel.transform.position.x < GameManager.Instance.fencerightpos + 0.5 ? new Vector3(GameManager.Instance.fencerightpos + 0.5, this.m_horsemodel.transform.position.y, this.m_horsemodel.transform.position.z) : this.m_horsemodel.transform.position;\r\n this.m_horsemodel.transform.position = this.m_horsemodel.transform.position.x > GameManager.Instance.fenceleftpos - 0.5 ? new Vector3(GameManager.Instance.fenceleftpos - 0.5, this.m_horsemodel.transform.position.y, this.m_horsemodel.transform.position.z) : this.m_horsemodel.transform.position;\r\n }\r\n Atk() {\r\n Laya.timer.frameLoop(1, this, this.RotationMove);\r\n }\r\n SlowSpeed() {\r\n if (this.run) {\r\n this.ChangeState(BossState.Walk);\r\n this.BossSpeed = AccountManager.Instance.curplayerData.BossSpeed / 2;\r\n }\r\n }\r\n AddSpeed() {\r\n if (this.run) {\r\n this.ChangeState(BossState.Run);\r\n this.BossSpeed = AccountManager.Instance.curplayerData.BossSpeed;\r\n }\r\n }\r\n GameOver() {\r\n EventManager.StageOff(StageState.Press, this, this.AddSpeed);\r\n EventManager.StageOff(StageState.UnPress, this, this.SlowSpeed);\r\n }\r\n RotationMove() {\r\n Vector3.subtract(this.Player.transform.position, this.m_bossmodel.transform.position, this.currotV);\r\n Vector3.normalize(this.currotV, this.currotV);\r\n var curdir = new Vector3(-this.currotV.x, -this.currotV.y, -this.currotV.z);\r\n Laya.Quaternion.rotationLookAt(curdir, new Vector3(0, 10, 0), this.CurrectRotate);\r\n this.CurrectRotate.invert(this.CurrectRotate);\r\n Laya.Quaternion.slerp(this.m_bossmodel.transform.rotation, this.CurrectRotate, 0.05, this.CurrectRotate);\r\n this.m_bossmodel.transform.rotation = this.CurrectRotate;\r\n var bossfoward = Transform3DHelper.getForward(this.m_bossmodel.transform);\r\n let _angle = this.JupdeAngle(bossfoward, this.currotV);\r\n if (_angle > 0.995) {\r\n Laya.timer.clear(this, this.RotationMove);\r\n this.Shoot();\r\n let rotation2 = GameTools.tweenRotate(this.m_bossmodel.transform, new Vector3(0, 0, 0), 700, Laya.Ease.linearInOut, Laya.Handler.create(this, () => {\r\n rotation2.clear();\r\n this.atk = false;\r\n }));\r\n }\r\n }\r\n JupdeAngle(dir1, dir2) {\r\n let Dir1 = new Vector3(dir1.x, 0, dir1.z);\r\n let Dir2 = new Vector3(dir2.x, 0, dir2.z);\r\n Vector3.normalize(Dir1, Dir1);\r\n Vector3.normalize(Dir2, Dir2);\r\n var dot = Vector3.dot(Dir1, Dir2);\r\n return dot;\r\n }\r\n Shoot() {\r\n this.CreatArrow();\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 this.m_bossanimator.play(\"shoot\");\r\n if (AssetManager.Instance.mainscene.physicsSimulation.rayCast(testRay, hitRes)) {\r\n let target = hitRes.collider.owner.parent;\r\n Laya.timer.frameLoop(1, this, this.ArrowMove, [this.m_arrow, forw, target]);\r\n }\r\n else {\r\n Laya.timer.frameLoop(1, this, this.ArrowMove, [this.m_arrow, forw]);\r\n }\r\n }\r\n ArrowMove(arrow, _dir, target) {\r\n if (target) {\r\n if (this.m_arrow.destroyed)\r\n return;\r\n if (arrow.transform.position.z <= target.transform.position.z) {\r\n if (target.name == \"player\") {\r\n let _runner = target.getComponent(Runner);\r\n _runner.isdead = true;\r\n this.BossProgress.visible = false;\r\n }\r\n Laya.timer.clear(this, this.ArrowMove);\r\n GamePool.Instance.RecoveryModel(arrow);\r\n }\r\n else {\r\n var sp = GameTools.Instance.lerp(this.speed, this.m_arrowspeed, 0.1);\r\n this.speed = sp;\r\n Vector3.scale(_dir, this.speed, this.arrowoffset);\r\n Vector3.add(arrow.transform.position, this.arrowoffset, this.arrowcurpos);\r\n Vector3.lerp(arrow.transform.position, this.arrowcurpos, 0.15, this.arrowcurpos);\r\n arrow.transform.position = this.arrowcurpos;\r\n }\r\n }\r\n else {\r\n var sp = GameTools.Instance.lerp(this.speed, this.m_arrowspeed, 0.1);\r\n this.speed = sp;\r\n Vector3.scale(_dir, this.speed, this.arrowoffset);\r\n Vector3.add(arrow.transform.position, this.arrowoffset, this.arrowcurpos);\r\n Vector3.lerp(arrow.transform.position, this.arrowcurpos, 0.15, this.arrowcurpos);\r\n arrow.transform.position = this.arrowcurpos;\r\n if (!this.recover) {\r\n this.recover = true;\r\n Laya.timer.once(1000, this, () => {\r\n Laya.timer.clear(this, this.ArrowMove);\r\n GamePool.Instance.RecoveryModel(arrow);\r\n this.recover = false;\r\n });\r\n }\r\n }\r\n }\r\n ChangeState(_state) {\r\n if (this._bossstate == _state)\r\n return;\r\n this._bossstate = _state;\r\n switch (this._bossstate) {\r\n case BossState.Idle:\r\n this.Idle();\r\n break;\r\n case BossState.Run:\r\n this.Run();\r\n break;\r\n case BossState.Die:\r\n this.Die();\r\n break;\r\n case BossState.Walk:\r\n this.Walk();\r\n break;\r\n }\r\n }\r\n Idle() {\r\n this.m_bossanimator.play(\"idle\");\r\n this.m_horseanimator.play(\"idle\");\r\n }\r\n Walk() {\r\n this.m_horseanimator.play(\"walk\");\r\n this.m_bossanimator.play(\"down\");\r\n }\r\n Run() {\r\n this.canmove = true;\r\n this.m_bossanimator.play(\"down\");\r\n this.m_horseanimator.play(\"run\");\r\n }\r\n Die() {\r\n this.BossProgress.visible = false;\r\n this.isdead = true;\r\n Laya.timer.clearAll(this);\r\n this.m_horseanimator.play(\"idle\");\r\n this.m_bossanimator.play(\"die\");\r\n EventManager.StageTrigger(StageState.Win);\r\n }\r\n RayCheck() {\r\n if (this.FowardRayCheck) {\r\n this.CrashBarrier();\r\n }\r\n else {\r\n this.isfence = false;\r\n }\r\n }\r\n CrashBarrier() {\r\n var target = this.FowardHit.collider.owner.parent;\r\n if (target.name == \"small_fence\") {\r\n this.isfence = true;\r\n }\r\n }\r\n get FowardRayCheck() {\r\n var isFowardHit = false;\r\n var startPos = new Vector3(this.m_bossmodel.transform.position.x, this.m_bossmodel.transform.position.y + 0.5, this.m_bossmodel.transform.position.z + 2);\r\n let dir = Transform3DHelper.getForward(this.m_bossmodel.transform);\r\n var DownRay = new Laya.Ray(startPos, dir);\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 CreatRay(pos, euler, raypos) {\r\n var ray = this.CreatRayPrefab();\r\n raypos.addChild(ray);\r\n ray.transform.position = pos;\r\n ray.transform.rotationEuler = euler;\r\n }\r\n CreatRayPrefab() {\r\n var ray = GamePool.Instance.GetModel(AssetManager.Instance.Prop.get(18), \"\");\r\n return ray;\r\n }\r\n CreatArcher(_pos, _euler, archerpos) {\r\n var archer = GamePool.Instance.GetModel(AssetManager.Instance.Prop.get(16), \"\");\r\n archerpos.addChild(archer);\r\n archer.transform.position = _pos;\r\n archer.transform.rotationEuler = _euler;\r\n var scale = archer.transform.scale.clone();\r\n scale.x = 0.3;\r\n scale.y = 0.3;\r\n scale.z = 0.6;\r\n archer.transform.scale = scale;\r\n }\r\n CreatArrow() {\r\n var arrow = GamePool.Instance.GetModel(AssetManager.Instance.Prop.get(17), \"\");\r\n AssetManager.Instance.mainscene.addChild(arrow);\r\n this.arrowarray.push(arrow);\r\n arrow.transform.position = this.arrowpos.transform.position.clone();\r\n var euler = this.arrowpos.transform.rotationEuler.clone();\r\n arrow.transform.rotationEuler = euler;\r\n let scale = arrow.transform.scale.clone();\r\n scale.z = 0.5;\r\n scale.x = 0.5;\r\n scale.y = 0.5;\r\n arrow.transform.scale = scale;\r\n this.m_arrow = arrow;\r\n }\r\n AddHpUI() {\r\n this.BossProgress = new Laya.ProgressBar();\r\n this.BossProgress.skin = \"Game/res/textrue/healthbar1.png\";\r\n this.BossProgress.scaleX = 0.4;\r\n this.BossProgress.scaleY = 0.4;\r\n this.BossProgress.anchorX = 0.5;\r\n this.BossProgress.anchorY = 0.5;\r\n Laya.stage.addChild(this.BossProgress);\r\n GameManager.Instance.UIArray.push(this.BossProgress);\r\n let UIPos = this.m_bossmodel.getChildByName(\"UIPos\");\r\n this.InitHpUI();\r\n Laya.timer.frameLoop(1, this, () => {\r\n let ScreenPos = new Vector3();\r\n AssetManager.Instance.maincamera.worldToViewportPoint(UIPos.transform.position, ScreenPos);\r\n this.BossProgress.pos(ScreenPos.x, ScreenPos.y);\r\n });\r\n }\r\n InitHpUI() {\r\n this.BossProgress.value = this.NowBossHp / this.BossHp;\r\n }\r\n LoseHp(_damage) {\r\n GameManager.Instance.KillNum++;\r\n InGameView.Instance.InitUI();\r\n if (this.NowBossHp >= _damage) {\r\n this.NowBossHp = this.NowBossHp -= _damage;\r\n }\r\n else if (this.NowBossHp < _damage && this.NowBossHp > 0) {\r\n this.NowBossHp = 0;\r\n }\r\n if (this.NowBossHp == 0) {\r\n this.ChangeState(BossState.Die);\r\n this.BossProgress.destroy();\r\n }\r\n else {\r\n this.InitHpUI();\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=Boss.js.map",
- "references": [
- "E:/LayaProject/ArcherWorrior/src/Game/PlayerControl.ts",
- "E:/LayaProject/ArcherWorrior/src/Net/AccountManager.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/GamePool.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/AssetManager.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/GameTools.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/Runner.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/StageControl.ts",
- "E:/LayaProject/ArcherWorrior/src/Tools/EventManager.ts",
- "E:/LayaProject/ArcherWorrior/src/Game/GameManager.ts",
- "E:/LayaProject/ArcherWorrior/src/View/InGameView.ts",
- "E:/LayaProject/ArcherWorrior/src/Net/WXSDK.ts"
- ],
- "map": "{\"version\":3,\"file\":\"Boss.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/Game/Boss.ts\"],\"names\":[],\"mappings\":\"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\"}"
- }
|