| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- var levelStates = require('LevelStates');
- cc.Class({
- extends: cc.Component,
- properties: {
- //空白预制 720 宽度todo
- Blank: {
- default: null,
- type: cc.Prefab
- },
- //起点 todo
- StartLine: {
- default: null,
- type: cc.Prefab
- },
- //终点 todo
- FinishLine: {
- default: null,
- type: cc.Prefab
- },
- //小的加速带
- SprintAB_10: {
- default: null,
- type: cc.Prefab
- },
- //中的加速带
- SprintAB_20: {
- default: null,
- type: cc.Prefab
- },
- //大的加速带
- SprintAB_30: {
- default: null,
- type: cc.Prefab
- },
- //长加速带
- LongABand: {
- default: null,
- type: cc.Prefab
- },
- //跳远沙坑
- LongJump_Bunker: {
- default: null,
- type: cc.Prefab
- },
- //跨栏垫
- Hurdle_Cushion: {
- default: null,
- type: cc.Prefab
- },
- //标枪模型
- Javelin_model: {
- default: null,
- type: cc.Prefab
- },
- //标枪距离模板
- Javelin_distanceModel: {
- default: null,
- type: cc.Prefab
- },
- //骑行模板
- BikeModel: {
- default: null,
- type: cc.Prefab
- },
- //当前生成的项目是什么,默认是短跑
- spawnSportsName: {
- default: levelStates.spawnSportsName.spawnAll,
- type: cc.Enum(levelStates.spawnSportsName)
- },
- //短跑项目
- SprintSports: {
- default: null,
- type: levelStates
- },
- //跳远项目
- LongJumpSports: {
- default: null,
- type: levelStates
- },
- //跨栏项目
- HurdleSports: {
- default: null,
- type: levelStates
- },
- //标枪项目
- JavelinSports: {
- default: null,
- type: levelStates
- },
- //骑行项目
- BikeSports: {
- default: null,
- type: levelStates
- },
- },
- onLoad() {
- GlobalData.levelManager = this;
-
- switch (this.spawnSportsName) {
- case levelStates.spawnSportsName.spawnAll:
- // console.log('初始化全部项目',this.spawnSportsName);
- this.initPrefabs(this.SprintSports);
- this.initPrefabs(this.LongJumpSports);
- this.initPrefabs(this.HurdleSports);
- this.initPrefabs(this.JavelinSports);
- this.initPrefabs(this.BikeSports);
- break;
- case levelStates.spawnSportsName.spawnSprint:
- // console.log('初始化短跑项目');
- this.initPrefabs(this.SprintSports);
- // console.log(this.SprintSports.itemPrefab);
- break;
- case levelStates.spawnSportsName.spawnLongJump:
- // console.log('初始化跳远项目');
- this.initPrefabs(this.LongJumpSports);
- // console.log(this.LongJumpSports.itemPrefab);
- break;
- case levelStates.spawnSportsName.spawnHurdle:
- // console.log('初始化跨栏项目');
- this.initPrefabs(this.HurdleSports);
- // console.log(this.HurdleSports.itemPrefab);
- break;
- case levelStates.spawnSportsName.spawnJavelin:
- // console.log('初始化标枪项目');
- this.initPrefabs(this.JavelinSports);
- // console.log(this.JavelinSports.itemPrefab);
- break;
- case levelStates.spawnSportsName.spawnBike:
- // console.log('初始化自行车项目');
- this.initPrefabs(this.BikeSports);
- // console.log(this.BikeSports.itemPrefab);
- break;
- }
- },
- //初始化预制
- initPrefabs(item) {
- for (var i = 0; i < item.itemArray.length; i++) {
- switch (item.itemArray[i]) {
- case levelStates.levelItem.Blank:
- item.itemPrefab.push(this.Blank);
- break;
- case levelStates.levelItem.StartLine:
- item.itemPrefab.push(this.StartLine);
- break;
- case levelStates.levelItem.FinishLine:
- item.itemPrefab.push(this.FinishLine);
- break;
- case levelStates.levelItem.SprintAB_10:
- item.itemPrefab.push(this.SprintAB_10);
- break;
- case levelStates.levelItem.SprintAB_20:
- item.itemPrefab.push(this.SprintAB_20);
- break;
- case levelStates.levelItem.SprintAB_30:
- item.itemPrefab.push(this.SprintAB_30);
- break;
- case levelStates.levelItem.LongABand:
- item.itemPrefab.push(this.LongABand);
- break;
- case levelStates.levelItem.LongJump_Bunker:
- item.itemPrefab.push(this.LongJump_Bunker);
- break;
- case levelStates.levelItem.Hurdle_Cushion:
- item.itemPrefab.push(this.Hurdle_Cushion);
- break;
- case levelStates.levelItem.Javelin_model:
- item.itemPrefab.push(this.Javelin_model);
- break;
- case levelStates.levelItem.Javelin_distanceModel:
- item.itemPrefab.push(this.Javelin_distanceModel);
- break;
- case levelStates.levelItem.BikeModel:
- item.itemPrefab.push(this.BikeModel);
- break;
- }
- }
- },
- });
|