12345678910111213141516171819202122 |
- {
- "code": "var Animator = Laya.Animator;\r\nvar Vector3 = Laya.Vector3;\r\nimport { GameManager, GameState } from \"./GameManager\";\r\nimport { ScenceManager } from \"./ScenceManager\";\r\nimport { GameUtils } from \"../../GameUtils/GameUtils\";\r\nimport { EventManager, EventType } from \"./EventManager\";\r\nimport PoolManager from \"./PoolManager\";\r\nimport { LevelManager } from \"./LevelManager\";\r\nimport { ResourcesManager } from \"./ResourcesManager\";\r\nimport { Rigbody } from \"./Rigbody\";\r\nimport { Stage } from \"./LevelData\";\r\nimport PlaySoundManager, { SoundType } from \"./PlaySoundManager\";\r\nimport WxApi from \"../../WXSDK/wxsdk\";\r\nimport { ThingsEffect } from \"../Network/PlayerAccount\";\r\nimport { Player } from \"./Player\";\r\nimport { Queue } from \"./Queue\";\r\nexport var ColliderLay;\r\n(function (ColliderLay) {\r\n ColliderLay[ColliderLay[\"Play\"] = Laya.Physics3DUtils.COLLISIONFILTERGROUP_CUSTOMFILTER1] = \"Play\";\r\n ColliderLay[ColliderLay[\"Npc\"] = Laya.Physics3DUtils.COLLISIONFILTERGROUP_CUSTOMFILTER2] = \"Npc\";\r\n ColliderLay[ColliderLay[\"Plane\"] = Laya.Physics3DUtils.COLLISIONFILTERGROUP_CUSTOMFILTER10] = \"Plane\";\r\n ColliderLay[ColliderLay[\"things\"] = Laya.Physics3DUtils.COLLISIONFILTERGROUP_CUSTOMFILTER3] = \"things\";\r\n ColliderLay[ColliderLay[\"dieplane\"] = Laya.Physics3DUtils.COLLISIONFILTERGROUP_CUSTOMFILTER5] = \"dieplane\";\r\n})(ColliderLay || (ColliderLay = {}));\r\nexport class Runner extends Laya.Script3D {\r\n constructor() {\r\n super(...arguments);\r\n this.Ai = false;\r\n this.aioffestx = 0;\r\n this.aimiss = 0;\r\n this.m_speed = 1;\r\n this.m_curstages = [];\r\n this.offest = new Vector3();\r\n this.outlandtime = 0;\r\n this.OnLand = true;\r\n this.hit = new Laya.HitResult();\r\n this.JS = false;\r\n this.delayMove = false;\r\n this.nextpoint = [];\r\n this.oldpoint = [];\r\n this.LandTime = 0;\r\n this.enteroutplane = false;\r\n this.fly = false;\r\n this.flytime = 0;\r\n this.flyspeed = 2;\r\n this.flycutrate = 0.01;\r\n this.flycounttime = 0;\r\n this.extracutrate = 0.01;\r\n this.extraspeed = 0;\r\n this.extraspeedtime = 0;\r\n this.JumpDuration = 0;\r\n this.jump = false;\r\n this.csp = 0;\r\n this.JumpHigth = 0;\r\n this.bacoZ = 2;\r\n this.currotV = new Vector3();\r\n this.currot = new Laya.Quaternion;\r\n this.NormalizeSpeed = new Vector3();\r\n this.turndir = new Vector3(1, 0, 0);\r\n this.backrot = false;\r\n this.canmove = false;\r\n this.die = false;\r\n this.curpos = new Vector3();\r\n this.endroad = false;\r\n this.curspeed = 0;\r\n this.AutoMoveSpeed = 0.5;\r\n this.curautospeed = 0;\r\n }\r\n onAwake() {\r\n this.m_sprite = this.owner;\r\n this.m_model = this.m_sprite.getChildAt(0);\r\n ;\r\n this.m_animator = this.m_sprite.getChildAt(0).getComponent(Animator);\r\n this.m_flySprite = PoolManager.Instance.CreatMeshSprite3D(ResourcesManager.Instance.FalconMesh, \"\");\r\n this.m_sprite.addChild(this.m_flySprite);\r\n this.m_flySprite.transform.localPosition = new Vector3(0, 0.95, 0);\r\n this.m_flySprite.transform.localScale = new Vector3(0.36, 0.36, 0.36);\r\n this.m_flySprite.active = false;\r\n this.m_hat = this.m_model.getChildAt(0).getChildAt(0);\r\n this.m_cb = this.m_model.getChildAt(1).getChildAt(0);\r\n this.m_head = this.m_model.getChildAt(0);\r\n this.m_crown = this.m_crown ? this.m_crown : PoolManager.Instance.CreatMeshSprite3D(ResourcesManager.Instance.crown, \"\");\r\n this.m_head.addChild(this.m_crown);\r\n this.m_crown.transform.localScale = new Vector3(13, 13, 13);\r\n this.m_crown.transform.localPosition = new Vector3(0, 0, 0);\r\n this.m_crown.transform.rotationEuler = new Vector3(0, 0, 0);\r\n this.m_crown.active = false;\r\n this.m_effect = this.m_sprite.getChildByName(\"effect\");\r\n this.GetStages();\r\n EventManager.GameStateEventOn(GameState.Playing, this, this.OnEnterPlaying);\r\n EventManager.EventOn(EventType.crownchange, this, this.OnCrownChange);\r\n }\r\n onStart() {\r\n }\r\n GetStages() {\r\n var curstages = LevelManager.Instance.curLevel.stages;\r\n var stages = [];\r\n for (var i = 0; i < curstages.length; i++) {\r\n var st = curstages[i];\r\n var news = new Stage(st.id.toString(), st.roadsdata);\r\n news.sprite = st.sprite;\r\n news.startz = st.startz;\r\n news.endz = st.endz;\r\n news.starty = st.starty;\r\n news.endy = st.endy;\r\n news.roadpointxs = st.roadpointxs;\r\n stages.push(news);\r\n }\r\n this.m_curstages = stages;\r\n }\r\n onDestroy() {\r\n EventManager.GameStateEventOff(GameState.Playing, this, this.OnEnterPlaying);\r\n EventManager.EventOff(EventType.crownchange, this, this.OnCrownChange);\r\n }\r\n OnEnterPlaying() {\r\n this.SetMove();\r\n }\r\n OnCrownChange(_id) {\r\n if (_id != this.Id) {\r\n this.CloseCrown();\r\n }\r\n else {\r\n this.GetCrown();\r\n }\r\n }\r\n SetMove() {\r\n this.Start();\r\n this.enteroutplane = false;\r\n this.fly = false;\r\n this.die = false;\r\n this.endroad = false;\r\n this.outlandtime = 0;\r\n Laya.timer.clearAll(this);\r\n Laya.timer.frameLoop(1, this, this.OnFrameLoop);\r\n }\r\n OnFrameLoop() {\r\n if (this.canmove) {\r\n var startpoint = new Vector3(this.m_sprite.transform.position.x, this.m_sprite.transform.position.y + 1, this.m_sprite.transform.position.z);\r\n var dir = new Vector3(0, -1, 0);\r\n var ray = new Laya.Ray(startpoint, dir);\r\n if (ScenceManager.Instance.GameScence.physicsSimulation.rayCast(ray, this.hit, 20)) {\r\n if (this.hit.collider.collisionGroup != ColliderLay.Plane && this.hit.collider.collisionGroup != ColliderLay.things)\r\n return;\r\n if (this.OnLand) {\r\n var dis = this.m_sprite.transform.position.y - this.hit.point.y;\r\n if (this.hit.collider.owner.name == \"JS\") {\r\n this.JS = true;\r\n }\r\n if (dis > 0.01) {\r\n this.OnLand = false;\r\n this.OnEnterOutPlane();\r\n return;\r\n }\r\n else {\r\n if (this.hit.collider.owner.name == \"Coin\") {\r\n this.OnEnterPlane();\r\n return;\r\n }\r\n this.m_sprite.transform.position = new Vector3(this.m_sprite.transform.position.x, this.hit.point.y, this.m_sprite.transform.position.z);\r\n }\r\n }\r\n else {\r\n var dis = this.m_sprite.transform.position.y - this.hit.point.y;\r\n if (dis < 0.0001) {\r\n this.OnEnterPlane();\r\n }\r\n }\r\n }\r\n else {\r\n this.OnLand = false;\r\n this.OnEnterOutPlane();\r\n }\r\n this.RayCastUpdate();\r\n }\r\n }\r\n OnGetRoadPoint(_ps) {\r\n this.nextpoint = _ps;\r\n this.TriggerAuto();\r\n this.oldpoint = _ps;\r\n }\r\n TriggerAuto(now = false) {\r\n if (this.nextpoint.length == 1) {\r\n if (this.oldpoint.length == 0 || this.oldpoint.length > 1) {\r\n if (this.aimiss <= Math.random()) {\r\n this.AutoMoveX(this.nextpoint[0]);\r\n }\r\n }\r\n if (this.oldpoint.length == 1) {\r\n this.delayMove = true;\r\n }\r\n }\r\n if (this.delayMove) {\r\n this.AutoMoveX(this.oldpoint[0]);\r\n }\r\n }\r\n OnEnterOutPlane() {\r\n if (this.enteroutplane)\r\n return;\r\n this.enteroutplane = true;\r\n if (!this.Ai)\r\n EventManager.EventTrigger(EventType.OutLand);\r\n if (this.JS) {\r\n this.SetExtraSpeed(ThingsEffect.JSEffect, ThingsEffect.Jstime);\r\n this.JS = false;\r\n }\r\n if (!this.fly) {\r\n this.m_animator.play(\"land1\");\r\n }\r\n }\r\n OnEnterPlane() {\r\n if (this.OnLand)\r\n return;\r\n if (this.hit.collider.collisionGroup == ColliderLay.things) {\r\n this.TriggerThings(this.hit.collider);\r\n }\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.land);\r\n WxApi.Shake();\r\n }\r\n if (!this.Ai)\r\n EventManager.EventTrigger(EventType.OnLand);\r\n this.enteroutplane = false;\r\n this.m_flySprite.active = false;\r\n this.fly = false;\r\n this.flytime = 0;\r\n this.flycounttime = 0;\r\n this.m_animator.play(\"run\");\r\n this.outlandtime = 0;\r\n this.LandTime = 0;\r\n if (!this.Ai)\r\n EventManager.EventTrigger(EventType.flytime, this.flytime);\r\n this.OnLand = true;\r\n this.jump = false;\r\n var cp = new Vector3(this.m_sprite.transform.position.x, this.hit.point.y, this.m_sprite.transform.position.z);\r\n Vector3.lerp(this.m_sprite.transform.position, cp, 0.3, this.curpos);\r\n this.m_sprite.transform.position = this.curpos;\r\n }\r\n Start() {\r\n this.JS = false;\r\n this.canmove = true;\r\n this.m_animator.play(\"run\");\r\n }\r\n Pause() {\r\n this.canmove = false;\r\n }\r\n Stop() {\r\n this.Pause();\r\n Laya.timer.clearAll(this);\r\n }\r\n LandDown() {\r\n this.curspeed = 0;\r\n }\r\n SetFly() {\r\n this.extraspeed = 0;\r\n this.extraspeedtime = 0;\r\n this.flytime = ThingsEffect.flytime;\r\n this.flyspeed = ThingsEffect.flyeffect;\r\n this.m_flySprite.active = true;\r\n this.fly = true;\r\n this.m_animator.play(\"fly\");\r\n this.BackRote();\r\n }\r\n SetExtraSpeed(_speed, time = 0) {\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.extraspeed);\r\n WxApi.Shake();\r\n }\r\n this.extraspeed = _speed;\r\n this.extraspeedtime += time;\r\n }\r\n Jump(_csp) {\r\n this.csp = _csp * 0.1;\r\n this.csp = Math.pow(this.csp, 0.5);\r\n this.JumpHigth = 1;\r\n this.JumpDuration = 0;\r\n this.jump = true;\r\n this.OnLand = false;\r\n }\r\n CurHight(csp = 1, dd, a = 3.5) {\r\n var hight = csp * dd - (dd * dd * a);\r\n if (hight < 0) {\r\n this.jump = false;\r\n }\r\n return hight;\r\n }\r\n HitObstacle(_node) {\r\n var target = _node;\r\n this.curspeed *= 0.5;\r\n var curpos = this.m_sprite.transform.position;\r\n var offesxx = curpos.x - target.transform.position.x >= 0 ? 0.4 : -0.4;\r\n this.m_sprite.transform.position = new Vector3(curpos.x + offesxx, curpos.y, curpos.z - this.bacoZ);\r\n }\r\n RayCastUpdate() {\r\n this.CheckForward();\r\n this.Gravity();\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_sprite.transform.rotation, this.currot, 0.025, this.currot);\r\n this.currot = new Laya.Quaternion(0, this.currot.y, 0);\r\n this.m_sprite.transform.rotation = this.currot;\r\n }\r\n else {\r\n Laya.Quaternion.slerp(this.m_sprite.transform.rotation, new Laya.Quaternion(0, 0, 0, 0), 0.1, this.currot);\r\n this.currot = new Laya.Quaternion(0, this.currot.y, 0);\r\n this.m_sprite.transform.rotation = this.currot;\r\n }\r\n }\r\n BackRote() {\r\n this.backrot = true;\r\n }\r\n Cheat() {\r\n var stage = Player.Instance.m_runner.completeStage;\r\n if (0.65 < Math.random())\r\n return;\r\n if (!stage || Player.Instance.m_runner.m_curstages[Player.Instance.m_runner.m_curstages.length - 1].enter || Player.Instance.m_runner.die)\r\n return;\r\n stage.complete = false;\r\n this.curstage = stage;\r\n this.die = false;\r\n this.m_crown.active = false;\r\n var pp = Player.Instance.m_runner;\r\n this.m_sprite.transform.position = new Vector3(pp.m_sprite.transform.position.x, stage.endy, stage.endz - 5);\r\n this.SetMove();\r\n this.SetExtraSpeed(0.01, 2);\r\n this.curspeed = this.m_speed;\r\n }\r\n onUpdate() {\r\n if (this.canmove) {\r\n this.Move(new Vector3(0, 0, 1), this.m_speed);\r\n }\r\n if (this.backrot) {\r\n Laya.Quaternion.slerp(this.m_sprite.transform.rotation, new Laya.Quaternion(0, 0, 0, 0), 0.25, this.currot);\r\n this.currot = new Laya.Quaternion(0, this.currot.y, 0);\r\n this.m_sprite.transform.rotation = this.currot;\r\n if (Math.abs(this.m_sprite.transform.rotation.y) < 0.0001) {\r\n this.backrot = false;\r\n }\r\n }\r\n if (this.m_curstages[this.m_curstages.length - 1].complete == false) {\r\n for (var i = 0; i < this.m_curstages.length; i++) {\r\n var stage = this.m_curstages[i];\r\n if (stage.complete == false && this.m_sprite.transform.position.z > stage.endz) {\r\n this.completeStage = stage;\r\n stage.complete = true;\r\n EventManager.EventTrigger(EventType.CompleteStage, stage);\r\n }\r\n if (stage.enter == false && this.m_sprite.transform.position.z > stage.startz - 3) {\r\n this.curstage = stage;\r\n stage.enter = true;\r\n if (!this.Ai) {\r\n if (i == this.m_curstages.length - 1)\r\n LevelManager.Instance.curLevel.endroadsprite.active = true;\r\n this.SetRoad(i);\r\n EventManager.EventTrigger(EventType.GetRoadPoint, i + 1);\r\n }\r\n else {\r\n this.OnEnterStage(stage);\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n this.curstage.endy = LevelManager.Instance.curLevel.endroadsprite.transform.position.y - 5;\r\n }\r\n if (this.curstage && this.flytime == 0 && !this.die && this.m_sprite.transform.position.y < this.curstage.endy - 8) {\r\n this.die = true;\r\n this.Stop();\r\n if (this.m_flySprite.active) {\r\n this.m_flySprite.active = false;\r\n }\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.die);\r\n WxApi.Shake(false);\r\n GameManager.Instance.ChangeState(GameState.Die);\r\n }\r\n }\r\n }\r\n SetRoad(_stageid) {\r\n if (_stageid + 2 < LevelManager.Instance.curLevel.stages.length) {\r\n var nextroads = LevelManager.Instance.curLevel.stages[_stageid + 2].roads;\r\n for (var i = 0; i < nextroads.length; i++) {\r\n var road = nextroads[i];\r\n road.SetActive(true);\r\n }\r\n var builds = LevelManager.Instance.curLevel.stages[_stageid + 2].builds;\r\n for (var i = 0; i < builds.length; i++) {\r\n var build = builds[i];\r\n build.active = true;\r\n }\r\n }\r\n if (_stageid - 1 >= 0) {\r\n var oldroads = LevelManager.Instance.curLevel.stages[_stageid - 1].roads;\r\n for (var i = 0; i < oldroads.length; i++) {\r\n var road = oldroads[i];\r\n Laya.timer.once(1000, this, () => {\r\n road.SetActive(false);\r\n });\r\n }\r\n var oldbuilds = LevelManager.Instance.curLevel.stages[_stageid - 1].builds;\r\n for (var i = 0; i < oldbuilds.length; i++) {\r\n var build = oldbuilds[i];\r\n build.active = false;\r\n }\r\n }\r\n }\r\n OnEnterStage(_stage) {\r\n this.OnGetRoadPoint(_stage.roadpointxs);\r\n }\r\n GetCrown() {\r\n this.m_crown.active = true;\r\n Laya.timer.clear(this, this.RotCrown);\r\n Laya.timer.frameLoop(1, this, this.RotCrown);\r\n }\r\n CloseCrown() {\r\n this.m_crown.active = false;\r\n Laya.timer.clear(this, this.RotCrown);\r\n }\r\n RotCrown() {\r\n this.m_crown.transform.rotate(new Vector3(0, 2, 0));\r\n }\r\n Move(_dir, _speed) {\r\n if (this.flytime > 0) {\r\n this.flytime -= this.flycutrate;\r\n this.flycounttime += (this.flycutrate * 0.6);\r\n if (!this.Ai)\r\n EventManager.EventTrigger(EventType.flytime, this.flytime);\r\n _speed = this.flyspeed + this.extraspeed;\r\n if (this.flytime < 0) {\r\n this.flytime = 0;\r\n this.flycounttime = 0;\r\n }\r\n }\r\n else {\r\n if (this.fly) {\r\n _speed = (this.flyspeed * 0.8) + this.extraspeed;\r\n }\r\n }\r\n if (this.extraspeedtime > 0 || this.extraspeed > 0) {\r\n this.extraspeedtime -= this.extracutrate;\r\n if (!this.Ai)\r\n EventManager.EventTrigger(EventType.extraspeedtime, this.extraspeedtime);\r\n var esp = _speed + this.extraspeed;\r\n _speed = GameUtils.lerp(_speed, esp, 0.9);\r\n if (this.extraspeedtime < 0) {\r\n this.extraspeed = 0;\r\n this.extraspeedtime = 0;\r\n }\r\n }\r\n var sp = GameUtils.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_sprite.transform.position, this.offest, this.curpos);\r\n Vector3.lerp(this.m_sprite.transform.position, this.curpos, 0.15, this.curpos);\r\n if (this.JumpHigth > 0) {\r\n this.JumpDuration += ThingsEffect.jumptime;\r\n this.JumpHigth = this.CurHight(this.csp, this.JumpDuration);\r\n this.curpos = new Vector3(this.curpos.x, this.curpos.y + this.JumpHigth, this.curpos.z);\r\n }\r\n this.curpos = new Vector3(this.curpos.x + this.aioffestx, this.curpos.y, this.curpos.z);\r\n this.m_sprite.transform.position = this.curpos;\r\n if (this.endroad == false && (this.m_sprite.transform.position.z > LevelManager.Instance.curLevel.endroadsprite.transform.position.z)) {\r\n this.endroad = true;\r\n if (this.fly) {\r\n this.fly = false;\r\n this.flytime = 0;\r\n this.flycounttime = 0;\r\n this.m_flySprite.active = false;\r\n if (this.OnLand) {\r\n this.m_animator.play(\"land1\");\r\n }\r\n }\r\n }\r\n }\r\n CheckForward() {\r\n var startpoint = new Vector3(this.m_sprite.transform.position.x, this.m_sprite.transform.position.y + 0.5, this.m_sprite.transform.position.z);\r\n var dir = new Vector3(0, 0, 1);\r\n var ray = new Laya.Ray(startpoint, dir);\r\n if (ScenceManager.Instance.GameScence.physicsSimulation.rayCast(ray, this.hit, 0.5)) {\r\n if (this.hit.collider.collisionGroup != ColliderLay.things)\r\n return;\r\n this.TriggerThings(this.hit.collider);\r\n }\r\n }\r\n TriggerThings(_collider) {\r\n if (this.curcollider == _collider && _collider.owner.name != \"obstacle\")\r\n return;\r\n this.curcollider = _collider;\r\n if (_collider.owner.name == \"Box\") {\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.crash);\r\n WxApi.Shake();\r\n }\r\n _collider.enabled = false;\r\n this.HitBox(_collider.owner);\r\n }\r\n else if (_collider.owner.name == \"obstacle\") {\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.crash);\r\n WxApi.Shake();\r\n }\r\n this.fly = false;\r\n this.flytime = 0;\r\n this.flycounttime = 0;\r\n this.extraspeed = 0;\r\n this.HitObstacle(_collider.owner);\r\n }\r\n else if (_collider.owner.name == \"fly\") {\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.fly);\r\n WxApi.Shake();\r\n }\r\n this.SetFly();\r\n }\r\n else if (_collider.owner.name == \"rocket\") {\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.xp);\r\n WxApi.Shake();\r\n }\r\n this.SetExtraSpeed(ThingsEffect.rocketeffect, ThingsEffect.rockettime);\r\n }\r\n else if (_collider.owner.name == \"Jump\") {\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.jump);\r\n WxApi.Shake();\r\n }\r\n this.outlandtime = 0;\r\n this.fly = false;\r\n this.flytime = 0;\r\n this.flycounttime = 0;\r\n this.Jump(ThingsEffect.jumpeffect);\r\n this.SetExtraSpeed(0.3, 0.2);\r\n }\r\n else if (_collider.owner.name == \"Coin\") {\r\n if (!this.Ai) {\r\n PlaySoundManager.Play(SoundType.gold);\r\n WxApi.Shake();\r\n EventManager.EventTrigger(EventType.GetMoney);\r\n }\r\n var sprite = _collider.owner.parent;\r\n sprite.active = false;\r\n }\r\n else if (_collider.owner.name == \"Win\") {\r\n this.m_animator.play(\"win\");\r\n if (this.m_flySprite.active) {\r\n this.m_flySprite.active = false;\r\n }\r\n if (!this.Ai) {\r\n if (Queue.Instance.GetPlayerScore == 1) {\r\n GameManager.Instance.ChangeState(GameState.Win);\r\n }\r\n else {\r\n Player.CanInput = false;\r\n this.Stop();\r\n this.m_animator.play(\"idle2\");\r\n GameManager.Instance.ChangeState(GameState.End, false);\r\n }\r\n }\r\n else {\r\n this.Stop();\r\n this.m_animator.play(\"fly\");\r\n }\r\n }\r\n }\r\n Gravity() {\r\n if (this.OnLand == false) {\r\n if (this.extraspeed > 0 && this.flytime <= 0) {\r\n if (this.jump) {\r\n this.outlandtime += 0.007;\r\n }\r\n else {\r\n this.outlandtime += 0.007;\r\n }\r\n }\r\n else if (this.flytime > 0) {\r\n if (this.flycounttime > 0 && this.flycounttime < 0.5) {\r\n this.outlandtime += 0.004;\r\n }\r\n else if (this.flycounttime > 0.5 && this.flycounttime < 1.3 && this.outlandtime > 0) {\r\n this.outlandtime -= 0.004;\r\n }\r\n else {\r\n this.outlandtime += 0.0035;\r\n }\r\n }\r\n else {\r\n if (this.fly) {\r\n this.outlandtime += 0.003;\r\n }\r\n else {\r\n this.outlandtime += 0.011;\r\n }\r\n }\r\n var offesty = this.outlandtime * this.outlandtime;\r\n this.m_sprite.transform.position = new Vector3(this.m_sprite.transform.position.x, this.m_sprite.transform.position.y - offesty, this.m_sprite.transform.position.z);\r\n }\r\n }\r\n delayDestory(_sprite) {\r\n _sprite.destroy();\r\n }\r\n HitBox(_box) {\r\n var bp = _box;\r\n var boxspite = _box.parent.getChildAt(0);\r\n var pps = _box.parent;\r\n Laya.timer.once(1000, this, this.delayDestory, [_box.parent]);\r\n this.TriggerHit(boxspite, bp.transform.position.clone());\r\n }\r\n TriggerHit(_node, _center) {\r\n var childNumber = _node.numChildren;\r\n for (var i = 0; i < childNumber; i++) {\r\n var box = _node.getChildAt(i);\r\n var rig = box.addComponent(Rigbody);\r\n var dir = new Vector3();\r\n Vector3.subtract(box.transform.position, _center, dir);\r\n Vector3.normalize(dir, dir);\r\n rig.AddVelocity(dir, GameUtils.getRandoms(0.1, 0.5));\r\n }\r\n }\r\n MoveX(_speed) {\r\n _speed *= 0.07;\r\n this.m_sprite.transform.translate(new Vector3(_speed, 0, 0));\r\n this.m_sprite.transform.position = this.m_sprite.transform.position.x < -4.5 ? new Vector3(-4.5, this.m_sprite.transform.position.y, this.m_sprite.transform.position.z) : this.m_sprite.transform.position;\r\n this.m_sprite.transform.position = this.m_sprite.transform.position.x > 4.5 ? new Vector3(4.5, this.m_sprite.transform.position.y, this.m_sprite.transform.position.z) : this.m_sprite.transform.position;\r\n }\r\n AutoMoveX(_targetx) {\r\n this.curautospeed = 0;\r\n Laya.timer.clear(this, this.AutoMoveLoop);\r\n Laya.timer.frameLoop(1, this, this.AutoMoveLoop, [_targetx]);\r\n }\r\n AutoMoveLoop(_targetx) {\r\n if (Math.abs(_targetx - this.m_sprite.transform.position.x) < 0.01) {\r\n Laya.timer.clear(this, this.AutoMoveLoop);\r\n }\r\n var speed = GameUtils.lerp(this.curautospeed, this.AutoMoveSpeed, 0.25);\r\n if (_targetx > this.m_sprite.transform.position.x) {\r\n this.MoveX(speed);\r\n }\r\n else {\r\n this.MoveX(-speed);\r\n }\r\n }\r\n}\r\n",
- "references": [
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/GameManager.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/ScenceManager.ts",
- "C:/Users/admin/Desktop/runner/src/GameUtils/GameUtils.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/EventManager.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/PoolManager.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/LevelManager.ts",
- "C:/Users/admin/Desktop/runner/src/Window/InGameWindow.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/ResourcesManager.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/Rigbody.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/LevelData.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/PlaySoundManager.ts",
- "C:/Users/admin/Desktop/runner/src/WXSDK/wxsdk.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Network/PlayerAccount.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/Player.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/Queue.ts",
- "C:/Users/admin/Desktop/runner/src/Scripts/Game/CameraManager.ts"
- ]
- }
|