LevelControl.js 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615
  1. cc.Class({
  2. extends: cc.Component,
  3. properties: {
  4. //起点 todo
  5. SprintStartLine:{//短跑起点
  6. default:null,
  7. type:cc.Prefab
  8. },
  9. LongJumpStartLine:{//跳远起点
  10. default:null,
  11. type:cc.Prefab
  12. },
  13. HurdleStartLine:{//跨栏起点
  14. default:null,
  15. type:cc.Prefab
  16. },
  17. JavelinStartLine:{//标枪起点
  18. default:null,
  19. type:cc.Prefab
  20. },
  21. BikeStartLine:{//骑车起点
  22. default:null,
  23. type:cc.Prefab
  24. },
  25. //终点 todo
  26. FinishLine_Sprint:{//短跑终点线
  27. default:null,
  28. type:cc.Prefab
  29. },
  30. LongJumpFinishLine:{//跳远终点
  31. default:null,
  32. type:cc.Prefab
  33. },
  34. FinishLine_Hurdle:{//跨栏终点
  35. default:null,
  36. type:cc.Prefab
  37. },
  38. JavelinFinishLine:{//标枪终点线
  39. default:null,
  40. type:cc.Prefab
  41. },
  42. // BikeFinishLine
  43. FinishLine_Bike:{//骑车终点
  44. default:null,
  45. type:cc.Prefab
  46. },
  47. Hero: {
  48. default: null,
  49. type: cc.Node
  50. },
  51. Canvas: {
  52. default: null,
  53. type: cc.Node
  54. },
  55. Blank:{//空白
  56. default:null,
  57. type:cc.Prefab
  58. },
  59. AccelerationBand30InTheMiddle:{//大加居中
  60. default:null,
  61. type:cc.Prefab
  62. },
  63. Cushion30AndRailingInTheMiddle:{//大缓跨栏居中
  64. default:null,
  65. type:cc.Prefab
  66. },
  67. JavelinModel:{//标枪模型
  68. default:null,
  69. type:cc.Prefab
  70. },
  71. LongAccelerationBand10ColumnTheLeftHalf1:{//长10加前半部分
  72. default:null,
  73. type:cc.Prefab
  74. },
  75. LongAccelerationBand10ColumnTheRightHalf2:{//长10加后半部分
  76. default:null,
  77. type:cc.Prefab
  78. },
  79. JavelinDistanceFirst:{//标枪计距带起点
  80. default:null,
  81. type:cc.Prefab
  82. },
  83. JavelinDistanceMiddle:{//标枪计距带中部10M-100M
  84. default:null,
  85. type:cc.Prefab
  86. },
  87. JavelinDistanceLast:{//标枪计距带尾部110M
  88. default:null,
  89. type:cc.Prefab
  90. },
  91. Cushion30AndBunker1M :{//沙坑1M
  92. default:null,
  93. type:cc.Prefab
  94. },
  95. Bunker2to4M:{//沙坑2-4M
  96. default:null,
  97. type:cc.Prefab
  98. },
  99. Bunker5to7M:{//沙坑5-7M
  100. default:null,
  101. type:cc.Prefab
  102. },
  103. Bunker8to10M:{//沙坑8-10M
  104. default:null,
  105. type:cc.Prefab
  106. },
  107. Bunker11M:{//沙坑11M
  108. default:null,
  109. type:cc.Prefab
  110. },
  111. BikeModelToTheRight:{//自行车模型
  112. default:null,
  113. type:cc.Prefab
  114. },
  115. TwoAcceleration30s:{//两个大加1
  116. default:null,
  117. type:cc.Prefab
  118. },
  119. Acceleration30AndAcceleration20:{//两个大加2
  120. default:null,
  121. type:cc.Prefab
  122. },
  123. Acceleration20ToTheLeft:{//一个大加靠左
  124. default:null,
  125. type:cc.Prefab
  126. },
  127. LongAccelerationBand7Column:{//长7加1
  128. default:null,
  129. type:cc.Prefab
  130. },
  131. LongAccelerationBand10ColumnTheLeftHalf3:{//长10带边框1左半部分
  132. default:null,
  133. type:cc.Prefab
  134. },
  135. LongAccelerationBand10ColumnTheRightHalf4:{//长10带边框1右半部分
  136. default:null,
  137. type:cc.Prefab
  138. },
  139. LongAccelerationBand10ColumnTheLeftHalf5:{//长10带边框2左大半部分
  140. default:null,
  141. type:cc.Prefab
  142. },
  143. LongAccelerationBand10ColumnTheRightHalfAndLeftHalf6:{//长10带边框2右半部分及长10带边框3左小半部分
  144. default:null,
  145. type:cc.Prefab
  146. },
  147. LongAccelerationBand10ColumnTheRightHalf7:{//长10带边框3右半部分
  148. default:null,
  149. type:cc.Prefab
  150. },
  151. LongAccelerationBand10ColumnTheLeftHalf8:{//长10带边框4左半部分
  152. default:null,
  153. type:cc.Prefab
  154. },
  155. LongAccelerationBand10ColumnTheRightHalf9:{//长10带边框4右半部分
  156. default:null,
  157. type:cc.Prefab
  158. },
  159. AccelerationBand20InTheMiddle:{//中加居中
  160. default:null,
  161. type:cc.Prefab
  162. },
  163. AccelerationBand10InTheMiddle:{//小加居中
  164. default:null,
  165. type:cc.Prefab
  166. },
  167. JumpDownBike:{//下自行车
  168. default:null,
  169. type:cc.Prefab
  170. },
  171. JavelinBeginJump:{//标枪起跳
  172. default:null,
  173. type:cc.Prefab
  174. },
  175. LocationLine: {
  176. default: null,
  177. type: cc.Prefab
  178. },
  179. YellowBG: {
  180. default: null,
  181. type: cc.Prefab
  182. },
  183. wriggle_prefab: {
  184. default: null,
  185. type: cc.Prefab
  186. },
  187. javeBg_prefab: {
  188. default: null,
  189. type: cc.Prefab
  190. },
  191. JavalinDistance:0,
  192. PrefabNumLabel: {
  193. default: null,
  194. type: cc.Prefab
  195. },
  196. PlayerInLvIndexLabel: {
  197. default: null,
  198. type: cc.Prefab
  199. },
  200. SprintPrefabsArr:[],
  201. LongJumpPrefabsArr:[],
  202. HurdlePrefabsArr:[],
  203. JavelinPrefabsArr:[],
  204. RideBikePrefabsArr:[],
  205. },
  206. start : function() {
  207. this.PlayerDistance=0;
  208. this.LastLoadedLvIndex=0;
  209. this.TargetNum=720*2;
  210. this.BgPrefabArray=[];
  211. this.AllBgPrefabArray=[];
  212. this.BAllSceneLoaded=false;
  213. this.PlayerInTheZone='None';
  214. this.PrePlayerInLvIndex=0;
  215. this.CurrentPlayerInLvIndex=0;
  216. this.FrontEnableLvIndex=0;
  217. this.TargetNum = 720*3;
  218. this.JavalinDistance=10;
  219. this.SprintPrefabsArr = [
  220. this.Blank,//空白
  221. this.SprintStartLine,//短跑起点
  222. this.AccelerationBand30InTheMiddle,//短跑5个大加
  223. this.AccelerationBand30InTheMiddle,
  224. this.AccelerationBand30InTheMiddle,
  225. this.AccelerationBand30InTheMiddle,
  226. this.AccelerationBand30InTheMiddle,
  227. this.AccelerationBand20InTheMiddle,//3个中加
  228. this.AccelerationBand20InTheMiddle,
  229. this.AccelerationBand20InTheMiddle,
  230. this.FinishLine_Sprint,//终点线
  231. ];
  232. this.LongJumpPrefabsArr = [
  233. this.LongJumpStartLine,//跳远起点
  234. this.AccelerationBand30InTheMiddle,//4个大加
  235. this.AccelerationBand30InTheMiddle,
  236. this.AccelerationBand30InTheMiddle,
  237. this.AccelerationBand30InTheMiddle,
  238. this.AccelerationBand20InTheMiddle,//3个中加
  239. this.AccelerationBand20InTheMiddle,
  240. this.AccelerationBand20InTheMiddle,
  241. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  242. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  243. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  244. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  245. this.Cushion30AndBunker1M,//沙坑1M
  246. this.Bunker2to4M,//沙坑2-4M
  247. this.Bunker5to7M,//沙坑5-7M
  248. this.Bunker8to10M,//沙坑8-10M
  249. this.Bunker11M,//沙坑11M
  250. this.LongJumpFinishLine,//终点线
  251. ];
  252. this.HurdlePrefabsArr = [
  253. this.HurdleStartLine,//跨栏起点
  254. this.Blank,//空白
  255. this.AccelerationBand30InTheMiddle,//连续4个大加交替4个大缓跨栏
  256. this.Cushion30AndRailingInTheMiddle,//连续4个大加交替4个大缓跨栏
  257. this.Blank,//空白
  258. this.Blank,//空白
  259. this.AccelerationBand30InTheMiddle,
  260. this.Cushion30AndRailingInTheMiddle,
  261. this.Blank,//空白
  262. this.AccelerationBand30InTheMiddle,
  263. this.Cushion30AndRailingInTheMiddle,
  264. this.Blank,//空白
  265. this.AccelerationBand30InTheMiddle,
  266. this.Cushion30AndRailingInTheMiddle,
  267. this.Blank,//空白
  268. this.AccelerationBand30InTheMiddle,
  269. this.Cushion30AndRailingInTheMiddle,
  270. this.Blank,//空白
  271. this.FinishLine_Hurdle,//终点线
  272. ];
  273. this.JavelinPrefabsArr = [
  274. this.JavelinStartLine,//标枪起点
  275. this.JavelinModel,//标枪模型 vvvvv
  276. this.AccelerationBand30InTheMiddle,//4个大加
  277. this.AccelerationBand30InTheMiddle,
  278. this.AccelerationBand30InTheMiddle,
  279. this.AccelerationBand30InTheMiddle,
  280. this.AccelerationBand20InTheMiddle,//3个中加
  281. this.AccelerationBand20InTheMiddle,
  282. this.AccelerationBand20InTheMiddle,
  283. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  284. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  285. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  286. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  287. this.javeBg_prefab,//起跳
  288. this.JavelinDistanceFirst,//标枪距离计算起点
  289. this.JavelinDistanceMiddle,//标枪距离计算中间部分共10个
  290. this.JavelinDistanceMiddle,
  291. this.JavelinDistanceMiddle,
  292. this.JavelinDistanceMiddle,
  293. this.JavelinDistanceMiddle,
  294. this.JavelinDistanceMiddle,
  295. this.JavelinDistanceMiddle,
  296. this.JavelinDistanceMiddle,
  297. this.JavelinDistanceMiddle,
  298. this.JavelinDistanceMiddle,
  299. this.JavelinDistanceLast,//标枪距离计算末尾部分*/
  300. this.JavelinFinishLine,//终点线
  301. ];
  302. this.RideBikePrefabsArr = [
  303. this.BikeStartLine,//骑车起点
  304. this.BikeModelToTheRight,//自行车模型
  305. this.TwoAcceleration30s,//3个大加2个中加
  306. this.Acceleration30AndAcceleration20,//
  307. this.Acceleration20ToTheLeft,//
  308. this.LongAccelerationBand7Column,//1个长7
  309. this.LongAccelerationBand10ColumnTheLeftHalf3,//4个长10
  310. this.LongAccelerationBand10ColumnTheRightHalf4,//
  311. this.LongAccelerationBand10ColumnTheLeftHalf5,//
  312. this.LongAccelerationBand10ColumnTheRightHalfAndLeftHalf6,//
  313. this.LongAccelerationBand10ColumnTheRightHalf7,//
  314. this.LongAccelerationBand10ColumnTheLeftHalf8,//
  315. this.LongAccelerationBand10ColumnTheRightHalf9,//
  316. this.Blank,//
  317. this.FinishLine_Bike,//终点线
  318. ];
  319. this.AllLevel = [
  320. this.SprintPrefabsArr,
  321. this.LongJumpPrefabsArr,
  322. this.HurdlePrefabsArr,
  323. this.JavelinPrefabsArr,
  324. this.RideBikePrefabsArr,
  325. ];
  326. this.AllBgPrefabArray = [
  327. // 短跑
  328. this.Blank,//空白
  329. this.SprintStartLine,//短跑起点
  330. this.AccelerationBand30InTheMiddle,//短跑5个大加
  331. this.AccelerationBand30InTheMiddle,
  332. this.AccelerationBand30InTheMiddle,
  333. this.AccelerationBand30InTheMiddle,
  334. this.AccelerationBand30InTheMiddle,
  335. this.AccelerationBand20InTheMiddle,//3个中加
  336. this.AccelerationBand20InTheMiddle,
  337. this.AccelerationBand20InTheMiddle,
  338. this.FinishLine_Sprint,//终点线
  339. // 跳远
  340. this.LongJumpStartLine,//跳远起点
  341. this.AccelerationBand30InTheMiddle,//4个大加
  342. this.AccelerationBand30InTheMiddle,
  343. this.AccelerationBand30InTheMiddle,
  344. this.AccelerationBand30InTheMiddle,
  345. this.AccelerationBand20InTheMiddle,//3个中加
  346. this.AccelerationBand20InTheMiddle,
  347. this.AccelerationBand20InTheMiddle,
  348. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  349. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  350. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  351. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  352. this.Cushion30AndBunker1M,//沙坑1M
  353. this.Bunker2to4M,//沙坑2-4M
  354. this.Bunker5to7M,//沙坑5-7M
  355. this.Bunker8to10M,//沙坑8-10M
  356. this.Bunker11M,//沙坑11M
  357. this.LongJumpFinishLine,//终点线
  358. // 跨栏
  359. this.HurdleStartLine,//跨栏起点
  360. this.Blank,//空白
  361. this.AccelerationBand30InTheMiddle,//连续4个大加交替4个大缓跨栏
  362. this.Cushion30AndRailingInTheMiddle,//连续4个大加交替4个大缓跨栏
  363. this.Blank,//空白
  364. this.Blank,//空白
  365. this.AccelerationBand30InTheMiddle,
  366. this.Cushion30AndRailingInTheMiddle,
  367. this.Blank,//空白
  368. this.AccelerationBand30InTheMiddle,
  369. this.Cushion30AndRailingInTheMiddle,
  370. this.Blank,//空白
  371. this.AccelerationBand30InTheMiddle,
  372. this.Cushion30AndRailingInTheMiddle,
  373. this.Blank,//空白
  374. this.AccelerationBand30InTheMiddle,
  375. this.Cushion30AndRailingInTheMiddle,
  376. this.Blank,//空白
  377. this.FinishLine_Hurdle,//终点线
  378. // 标枪
  379. this.JavelinStartLine,//标枪起点
  380. this.JavelinModel,//标枪模型 vvvvv
  381. this.AccelerationBand30InTheMiddle,//4个大加
  382. this.AccelerationBand30InTheMiddle,
  383. this.AccelerationBand30InTheMiddle,
  384. this.AccelerationBand30InTheMiddle,
  385. this.AccelerationBand20InTheMiddle,//3个中加
  386. this.AccelerationBand20InTheMiddle,
  387. this.AccelerationBand20InTheMiddle,
  388. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  389. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  390. this.LongAccelerationBand10ColumnTheLeftHalf1,//长10加前半部分
  391. this.LongAccelerationBand10ColumnTheRightHalf2,//长10加后半部分
  392. this.javeBg_prefab,//起跳
  393. this.JavelinDistanceFirst,//标枪距离计算起点
  394. this.JavelinDistanceMiddle,//标枪距离计算中间部分共10个
  395. this.JavelinDistanceMiddle,
  396. this.JavelinDistanceMiddle,
  397. this.JavelinDistanceMiddle,
  398. this.JavelinDistanceMiddle,
  399. this.JavelinDistanceMiddle,
  400. this.JavelinDistanceMiddle,
  401. this.JavelinDistanceMiddle,
  402. this.JavelinDistanceMiddle,
  403. this.JavelinDistanceMiddle,
  404. this.JavelinDistanceLast,//标枪距离计算末尾部分*/
  405. this.JavelinFinishLine,//终点线
  406. //骑车
  407. this.BikeStartLine,//骑车起点
  408. this.BikeModelToTheRight,//自行车模型
  409. this.TwoAcceleration30s,//3个大加2个中加
  410. this.Acceleration30AndAcceleration20,//
  411. this.Acceleration20ToTheLeft,//
  412. this.LongAccelerationBand7Column,//1个长7
  413. this.LongAccelerationBand10ColumnTheLeftHalf3,//4个长10
  414. this.LongAccelerationBand10ColumnTheRightHalf4,//
  415. this.LongAccelerationBand10ColumnTheLeftHalf5,//
  416. this.LongAccelerationBand10ColumnTheRightHalfAndLeftHalf6,//
  417. this.LongAccelerationBand10ColumnTheRightHalf7,//
  418. this.LongAccelerationBand10ColumnTheLeftHalf8,//
  419. this.LongAccelerationBand10ColumnTheRightHalf9,//
  420. this.Blank,//
  421. this.FinishLine_Bike,//终点线
  422. ];
  423. for (var i = 0; i < 4; i++)
  424. {
  425. this.LastLoadedLvIndex = i + 1;
  426. var tPrefab = cc.instantiate(this.AllBgPrefabArray[i]);
  427. this.setStartLine(tPrefab);
  428. tPrefab.parent = this.node;
  429. tPrefab.setAnchorPoint(0.5, 0.5);
  430. tPrefab.setLocalZOrder(-i);
  431. tPrefab.setPosition(i * (740), 0);
  432. this.BgPrefabArray.push(tPrefab);
  433. }
  434. this.PreLoad();
  435. cc.log("地图加载完毕",this.BgPrefabArray);
  436. },
  437. GetRandomLevelNum:function(){
  438. var RandomLevelNum = Math.floor(Math.random() * 5);
  439. return RandomLevelNum;
  440. },
  441. LoadRandomLevel:function(RandomLevelNum){
  442. this.AllBgPrefabArray = this.AllLevel[RandomLevelNum];
  443. },
  444. PreLoad:function(){
  445. var aPrefab = cc.instantiate(this.YellowBG);//开始时加载一个长加速带的黄色区域,后面再次加载就不会卡
  446. aPrefab.parent = this.node;
  447. aPrefab.setPosition(-1000,1000);
  448. aPrefab.destroy();
  449. },
  450. SetDistance:function(aPlayerDistance)
  451. {
  452. this.PlayerDistance=aPlayerDistance;
  453. },
  454. SetLocationLine:function(PlayerCollisionLinePosition)
  455. {
  456. var aPrefab = cc.instantiate(this.LocationLine);
  457. aPrefab.parent = this.node;
  458. aPrefab.setPosition(PlayerCollisionLinePosition);
  459. },
  460. CreateYellowBG:function(PlayerCollisionLinePosition)
  461. {
  462. var aPrefab = cc.instantiate(this.YellowBG);
  463. aPrefab.parent = this.node;
  464. // aPrefab.setAnchorPoint(0.5, 0.5);
  465. aPrefab.setPosition(PlayerCollisionLinePosition);
  466. return aPrefab;
  467. },
  468. sortNumber : function (a,b)
  469. {
  470. return b-a
  471. },
  472. update : function (dt)
  473. {
  474. if(this.AllBgPrefabArray.length ==this.LastLoadedLvIndex) {
  475. this.LastLoadedLvIndex = 0;
  476. }
  477. var MaxPositionX = 0;
  478. var MiniPosiitonX = 0;
  479. var HeroPositionX = cc.find('Hero').position.x;
  480. // var RivelPositionX = cc.find('Rivel').position.x;
  481. var JavalinHero = cc.find('javetemp_Hero');
  482. var JavalinHeroPositionX = 0;
  483. // var JavalinRivel = cc.find('javetemp_Rivel');
  484. // var JavalinRivelPositionX = 0;
  485. var arr = [];
  486. if(JavalinHero!=null )
  487. {
  488. if (JavalinHero!=null) {
  489. if (JavalinHero.isTag) {
  490. JavalinHeroPositionX = JavalinHero.position.x;
  491. arr.push(JavalinHeroPositionX);
  492. }
  493. arr.push(HeroPositionX);
  494. }
  495. //冒泡排序 HeroPositionX RivelPositionX JavalinHeroPositionX JavalinRivelPositionX
  496. arr.sort(this.sortNumber);
  497. MaxPositionX = arr[0];
  498. MiniPosiitonX =arr[arr.length-1];
  499. CustomLog("现在的数组是","max",MaxPositionX,"min",MiniPosiitonX);
  500. CustomLog("现在的数组是","arr",arr.length);
  501. }
  502. else
  503. {
  504. MaxPositionX = HeroPositionX;
  505. }
  506. var csPositionX = MaxPositionX+370;
  507. this.CurrentPlayerInLvIndex = Math.floor(csPositionX/740);
  508. if(this.LastLoadedLvIndex-this.CurrentPlayerInLvIndex<2 &&
  509. this.CurrentPlayerInLvIndex!=this.PrePlayerInLvIndex)
  510. {
  511. this.LastLoadedLvIndex++;
  512. // CustomLog("这个对象",this.BgPrefabArray[this.BgPrefabArray.length-1]);
  513. var LastLvPositionX = this.BgPrefabArray[this.BgPrefabArray.length - 1].position.x;
  514. var NewLvPositionX = LastLvPositionX + 740;
  515. // cc.log('this.LastLoadedLvIndex-1 is '+this.LastLoadedLvIndex);
  516. // cc.log('this.AllBgPrefabArray.length is '+this.AllBgPrefabArray.length);
  517. var tPrefab = cc.instantiate(this.AllBgPrefabArray[this.LastLoadedLvIndex-1]);
  518. // cc.log(this.AllBgPrefabArray[this.LastLoadedLvIndex].name+"======name"+this.LastLoadedLvIndex);
  519. tPrefab.parent = this.node;
  520. tPrefab.setAnchorPoint(0.5, 0.5);
  521. tPrefab.setLocalZOrder(-this.LastLoadedLvIndex);
  522. tPrefab.setPosition(NewLvPositionX, 0);
  523. // this.BgPrefabArray.shift().destroy();
  524. this.BgPrefabArray.push(tPrefab);
  525. // cc.log(tPrefab.name+"======name");
  526. if (tPrefab.name == 'JavelinDistanceMiddle') {
  527. var aLabel = tPrefab.getChildByName("JavelinDistanceNUM");
  528. var Labelcomp = aLabel.getComponent(cc.Label);
  529. Labelcomp.string = this.JavalinDistance.toString();
  530. this.JavalinDistance += 10;
  531. }
  532. this.setStartLine(tPrefab);
  533. // this.AddIndexLabelToPrefab(NewLvPositionX);//此为预制体添加数字标签,正式项目可注释
  534. }
  535. this.PrePlayerInLvIndex = this.CurrentPlayerInLvIndex;
  536. var MiniPlayerInIndex = Math.floor(MiniPosiitonX/740);
  537. // CustomLog("现在的数组是 索引",this.FrontEnableLvIndex);
  538. if(MiniPlayerInIndex-this.FrontEnableLvIndex>2)
  539. {
  540. this.BgPrefabArray[this.FrontEnableLvIndex].destroy();
  541. this.FrontEnableLvIndex++;
  542. }
  543. },
  544. AddIndexLabelToPrefab:function(NewLvPositionX)
  545. {
  546. /** **/
  547. var PrefabNumLabelInstance = cc.instantiate(this.PrefabNumLabel);
  548. PrefabNumLabelInstance.parent = this.node;
  549. PrefabNumLabelInstance.setAnchorPoint(0, 0.5);
  550. PrefabNumLabelInstance.setLocalZOrder(1000);
  551. PrefabNumLabelInstance.setPosition(NewLvPositionX, 0);
  552. this.BgPrefabArray.push(PrefabNumLabelInstance);
  553. PrefabNumLabelInstance.getChildByName('MyNumLeft').getComponent(cc.Label).string = 'Left ' + this.LastLoadedLvIndex;
  554. PrefabNumLabelInstance.getChildByName('MyNumRight').getComponent(cc.Label).string = 'Right ' + this.LastLoadedLvIndex;
  555. /** **/
  556. },
  557. setP : function (tPrefab)
  558. {
  559. if (tPrefab.getChildByName("New Node")!=null)
  560. {
  561. if (tPrefab.getChildByName("New Node").getComponent(cc.RigidBody)!=null) {
  562. // CustomLog("gangti",tPrefab);
  563. tPrefab.getChildByName("New Node").getComponent(cc.RigidBody).syncPosition();
  564. }
  565. }
  566. },
  567. /**
  568. * 这个是设置 每一个 项目开头的 位置的方法
  569. */
  570. setStartLine : function (node) {
  571. switch (node.name){
  572. case "SprintStartLine":
  573. this.tempStartNode = 0;
  574. cc.log("现在是什么开始",node.name);
  575. break;
  576. case "LongJumpStartLine":
  577. this.tempStartNode = 1;
  578. cc.log("现在是什么开始",node.name);
  579. break;
  580. case "HurdleStartLine":
  581. this.tempStartNode = 2;
  582. cc.log("现在是什么开始",node.name);
  583. break;
  584. case "JavelinStartLine":
  585. this.tempStartNode = 3;
  586. cc.log("现在是什么开始",node.name);
  587. break;
  588. case "BikeStartLine":
  589. this.tempStartNode = 4;
  590. cc.log("现在是什么开始",node.name);
  591. break;
  592. }
  593. }
  594. });