44c768a41d43eea52d703fbf774eec92920cd727 9.2 KB

1234567891011121314151617181920212223242526
  1. {
  2. "code": "var Vector3 = Laya.Vector3;\r\nimport { SceneManager } from \"./SceneManager\";\r\nimport { GameManager } from \"./GameManager\";\r\nimport { Player } from \"./Player\";\r\nimport { Warrior } from \"./Warrior\";\r\nimport { Shooter } from \"./Shooter\";\r\nimport { RoleState } from \"./Role\";\r\nimport { Road } from \"./Road\";\r\nimport { BallBoos } from \"./BallBoos\";\r\nimport { Girl } from \"./Girl\";\r\nimport { MonsterType } from \"./MonsterDataManager\";\r\nimport { EventManager, EventType } from \"./EventManager\";\r\nimport { skintype, AccountUser } from \"./DataMaker\";\r\nimport { PlayerAccount } from \"../Network/PlayerAccount\";\r\nexport class missiondata {\r\n constructor(_id) {\r\n this.color = new Laya.Vector4(130 / 255, 201 / 255, 254 / 255);\r\n this.trial = false;\r\n this.ID = _id;\r\n }\r\n}\r\nexport class LevelData {\r\n constructor(id) {\r\n this.camerapos = new Vector3();\r\n this.cameraerot = new Vector3();\r\n this.girldatas = [];\r\n this.enemydatas = [];\r\n this.builddatas = [];\r\n this.roaddatas = [];\r\n this.move = 1.25;\r\n this.color = new Laya.Vector4();\r\n this.id = Number(id);\r\n }\r\n getbooslevel() {\r\n var ss = false;\r\n for (var i = 0; i < this.enemydatas.length; i++) {\r\n var curenemy = this.enemydatas[i];\r\n if (curenemy.boos) {\r\n ss = true;\r\n }\r\n }\r\n for (var i = 0; i < this.builddatas.length; i++) {\r\n var curbuild = this.builddatas[i];\r\n if (curbuild.boos) {\r\n ss = true;\r\n }\r\n }\r\n return ss;\r\n }\r\n}\r\nexport class Level {\r\n constructor(_id, _config) {\r\n this.simple = false;\r\n this.gameroles = [];\r\n this.booss = [];\r\n this.roads = [];\r\n this.builds = [];\r\n this.minhight = 100;\r\n this.create = false;\r\n this.clear = false;\r\n this.levelid = _id;\r\n this.leveldata = _config;\r\n this.Init();\r\n }\r\n Init() {\r\n this.map = new Laya.Node();\r\n this.levelname = \"stage\" + this.levelid;\r\n this.map.name = this.levelname;\r\n }\r\n Create() {\r\n if (this.create)\r\n return;\r\n EventManager.On(EventType.BoosDie, this, this.OnBoosDie);\r\n EventManager.On(EventType.UseSkin, this, this.OnUseSkin);\r\n SceneManager.maincamera.clearColor = this.leveldata.missiondata.color;\r\n SceneManager.maincamera.transform.position = this.leveldata.camerapos;\r\n SceneManager.maincamera.transform.rotationEuler = this.leveldata.cameraerot;\r\n if (this.leveldata.endpos) {\r\n SceneManager.endsprite.active = true;\r\n SceneManager.endsprite.transform.position = this.leveldata.endpos;\r\n SceneManager.endsprite.transform.rotationEuler = new Vector3(0, this.leveldata.enderoty, 0);\r\n }\r\n else {\r\n SceneManager.endsprite.active = false;\r\n }\r\n var equip = PlayerAccount.CurAccountData.GetUser(AccountUser.equip_themes)[skintype.role];\r\n var equiipskin = PlayerAccount.CurAccountData.m_skinDic.getValue(equip);\r\n equiipskin = equiipskin == null ? PlayerAccount.CurAccountData.m_skinDic.getValue(1) : equiipskin;\r\n var mainplayer = Player.Create(this.leveldata.playerdata, equiipskin);\r\n this.gameroles.push(mainplayer);\r\n for (var i = 0; i < this.leveldata.enemydatas.length; i++) {\r\n var curenemydata = this.leveldata.enemydatas[i];\r\n var monster;\r\n if (curenemydata.monsterconfig.monstertype == MonsterType.Warrior) {\r\n monster = Warrior.Create(curenemydata);\r\n }\r\n else if (curenemydata.monsterconfig.monstertype == MonsterType.Shooter) {\r\n monster = Shooter.Create(curenemydata);\r\n }\r\n else {\r\n monster = BallBoos.Create(curenemydata);\r\n }\r\n if (curenemydata.boos) {\r\n this.booss.push(monster);\r\n }\r\n this.gameroles.push(monster);\r\n }\r\n for (var i = 0; i < this.leveldata.girldatas.length; i++) {\r\n var girldata = this.leveldata.girldatas[i];\r\n var mgirl = Girl.Create(girldata);\r\n this.gameroles.push(mgirl);\r\n }\r\n for (var i = 0; i < this.leveldata.builddatas.length; i++) {\r\n var curbuilddata = this.leveldata.builddatas[i];\r\n var mbuild = GameManager.GetBuild(curbuilddata);\r\n SceneManager.mainscene.addChild(mbuild.cursprite);\r\n mbuild.cursprite.transform.position = new Vector3(curbuilddata.startpos.x, curbuilddata.startpos.y, curbuilddata.startpos.z);\r\n mbuild.cursprite.transform.rotationEuler = new Vector3(-mbuild.cursprite.transform.rotationEuler.x, 360 - curbuilddata.starteroty, mbuild.cursprite.transform.rotationEuler.z);\r\n mbuild.OnInit();\r\n this.builds.push(mbuild);\r\n }\r\n for (var i = 0; i < this.leveldata.roaddatas.length; i++) {\r\n var curroad = this.leveldata.roaddatas[i];\r\n var mroad = new Road(curroad);\r\n this.roads.push(mroad);\r\n if (mroad.cursprite.transform.position.y < this.minhight) {\r\n this.minhight = mroad.cursprite.transform.position.y;\r\n }\r\n }\r\n console.log(\"minhight:\", this.minhight);\r\n console.log(\"Create Level\", this.levelid);\r\n this.create = true;\r\n this.clear = false;\r\n }\r\n Clear() {\r\n if (this.clear)\r\n return;\r\n SceneManager.endsprite.active = false;\r\n EventManager.Off(EventType.UseSkin, this, this.OnUseSkin);\r\n EventManager.Off(EventType.BoosDie, this, this.OnBoosDie);\r\n for (var i = 0; i < this.gameroles.length; i++) {\r\n var currole = this.gameroles[i];\r\n currole.Clear();\r\n }\r\n this.gameroles = [];\r\n this.booss = [];\r\n for (var i = 0; i < this.builds.length; i++) {\r\n var curbuild = this.builds[i];\r\n curbuild.Clear();\r\n }\r\n this.builds = [];\r\n for (var i = 0; i < this.roads.length; i++) {\r\n var curroad = this.roads[i];\r\n curroad.Clear();\r\n }\r\n this.roads = [];\r\n console.log(\"Clear Level\", this.levelid);\r\n this.create = false;\r\n this.clear = true;\r\n }\r\n OnBoosDie(_role) {\r\n var alldie = true;\r\n console.log(\"BoosDie\", this.booss.length);\r\n var curboosindex = this.booss.indexOf(_role);\r\n if (curboosindex != -1) {\r\n this.booss.splice(curboosindex, 1);\r\n }\r\n if (this.booss.length == 0) {\r\n Player.mainpalyer.ChangeState(RoleState.Win);\r\n }\r\n }\r\n OnUseSkin(_skin) {\r\n if (_skin.skintype == skintype.role) {\r\n var curplayer = Player.mainpalyer;\r\n var curindex = this.gameroles.indexOf(curplayer);\r\n this.gameroles.splice(curindex, 1);\r\n curplayer.Clear();\r\n var mainplayer = Player.Create(this.leveldata.playerdata, _skin);\r\n this.gameroles.push(mainplayer);\r\n }\r\n else if (_skin.skintype == skintype.weapon) {\r\n var curplayer = Player.mainpalyer;\r\n curplayer.WeaponShow(_skin);\r\n }\r\n }\r\n}\r\nexport class StreetData {\r\n constructor(_type) {\r\n this.roads = [];\r\n this.height_offset = [];\r\n this.type = _type;\r\n }\r\n}\r\n",
  3. "references": [
  4. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/SceneManager.ts",
  5. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/GameManager.ts",
  6. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/AssetManager.ts",
  7. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/LevelManager.ts",
  8. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Util/GameUtils.ts",
  9. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Util/Dictionary.ts",
  10. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Player.ts",
  11. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Warrior.ts",
  12. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Shooter.ts",
  13. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Building.ts",
  14. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Barrier.ts",
  15. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Role.ts",
  16. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Road.ts",
  17. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/BallBoos.ts",
  18. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/Girl.ts",
  19. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/MonsterDataManager.ts",
  20. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/EventManager.ts",
  21. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/SkinMaker.ts",
  22. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/DataMaker.ts",
  23. "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Network/PlayerAccount.ts"
  24. ]
  25. }