StoreView.js 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  1. cc.Class({
  2. extends: cc.Component,
  3. properties: {
  4. Seed: {
  5. default: null,
  6. type: cc.Node,
  7. },
  8. Exchange: {
  9. default: null,
  10. type: cc.Node,
  11. },
  12. SeedBtn: {
  13. default: null,
  14. type: cc.Node,
  15. },
  16. ExchangeBtn: {
  17. default: null,
  18. type: cc.Node,
  19. },
  20. SelectedFrame: cc.Node,
  21. //Building40: cc.Node,
  22. ManageUI: cc.Node,
  23. //四个按钮对应的sprite
  24. Normal_Seed_Sprite: cc.SpriteFrame,
  25. Selecteded_Seed_Sprite: cc.SpriteFrame,
  26. Normal_Exchange_Sprite: cc.SpriteFrame,
  27. Selecteded_Exchange_Sprite: cc.SpriteFrame,
  28. //需要切换节点顺序的父节点
  29. container: cc.Node,
  30. //商城的列表
  31. mySeedList: [],
  32. seedPrefab: cc.Prefab,
  33. seedSpriteFrame: {
  34. default: [],
  35. type: [cc.SpriteFrame]
  36. },
  37. seedNodeArry: {
  38. default: [],
  39. type: [cc.Node]
  40. },
  41. snbAmount:0,
  42. cntAmount:0,
  43. ExchangePopView: {
  44. default: null,
  45. type: cc.Node,
  46. },
  47. PayCNTPopView: {
  48. default: null,
  49. type: cc.Node,
  50. },
  51. buySeedIndex:-1,
  52. snbAmountLabel: {
  53. default: null,
  54. type: [cc.Label]
  55. },
  56. },
  57. HiddenAll() {
  58. if (this.Seed.active)
  59. this.Seed.active = false;
  60. if (this.Exchange.active)
  61. this.Exchange.active = false;
  62. },
  63. start() {
  64. //默认设置第一个节点为 最上面
  65. this.SeedBtn.setSiblingIndex(10);
  66. console.log('SNB=======',GlobalD.GameData.SNB)
  67. this.snbAmountLabel.string = GlobalD.GameData.SNB;
  68. //获取种子和果实
  69. GlobalD.GameData.getMallSeed((res, vaule) => {
  70. console.log('vaule111111111=',vaule)
  71. this.mySeedList = vaule.data;
  72. for (let i = 0; i < this.mySeedList.length; i++) {
  73. //没有种子数量不显示 todo 看看后续需不需要处理删除
  74. if (this.mySeedList[i].amount < 1) continue;
  75. let _seed = cc.instantiate(this.seedPrefab);
  76. // _seed.getChildByName("buy_button").active = true;
  77. // _seed.getChildByName("Name").active = false;
  78. // _seed.getChildByName("Name").getChildByName("Num").getComponent(cc.Label).strng = '';//'x'+this.mySeedList[i].amount;
  79. this.seedNodeArry.push(_seed);
  80. _seed.parent = this.Seed;
  81. let _seedScript = _seed.getComponent("Content_Button");
  82. //设置一个生成点
  83. let _spawnScript = _seed.getComponent("Content_seed");
  84. _spawnScript.myIndex = i;
  85. _spawnScript.SpawnPoint = cc.find("Canvas/SpawnParent/SpawnPoint");
  86. _seedScript.NumLabel.string = this.mySeedList[i].amount;
  87. _seedScript.NameLabel.string = this.mySeedList[i].name;
  88. switch (this.mySeedList[i].picture) {
  89. case "Cabbage":
  90. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[0];
  91. break;
  92. case "Potato":
  93. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[1];
  94. break;
  95. case "Carrot":
  96. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[2];
  97. break;
  98. case "Broccoli":
  99. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[3];
  100. break;
  101. case "Tomato":
  102. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[4];
  103. break;
  104. case "Squash":
  105. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[5];
  106. break;
  107. case "Eggplant":
  108. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[6];
  109. break;
  110. case "Pepper":
  111. _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[7];
  112. break;
  113. default:
  114. break;
  115. }
  116. }
  117. });
  118. },
  119. //切换建筑的面板
  120. onSwitchBuildingContent(event, index) {
  121. this.SeedBtn.setScale(1);
  122. this.ExchangeBtn.setScale(1);
  123. this.SeedBtn.getComponent(cc.Sprite).spriteFrame = this.Normal_Seed_Sprite;
  124. this.ExchangeBtn.getComponent(cc.Sprite).spriteFrame = this.Normal_Exchange_Sprite;
  125. this.SeedBtn.setContentSize(100, 54);
  126. this.ExchangeBtn.setContentSize(100, 54);
  127. this.SeedBtn.y = -5;
  128. this.ExchangeBtn.y = -5;
  129. this.HiddenAll();
  130. //面板设置index
  131. //种子
  132. if ('0' == index) {
  133. this.SeedBtn.y = -20;
  134. this.SeedBtn.getComponent(cc.Sprite).spriteFrame = this.Selecteded_Seed_Sprite;
  135. this.Seed.active = true;
  136. if(this.seedNodeArry.length!=0)
  137. {
  138. this.SelectedFrame.parent = this.seedNodeArry[0];
  139. }
  140. //if (this.mySeedList.length > 0) {
  141. // let Synopsis = "成熟期:" + this.mySeedList[0].maturity;
  142. // this.ManageUI.getComponent('ManageUI').onSetButtonInfo(this.mySeedList[0].name, this.mySeedList[0].priceSnb, Synopsis);
  143. //}
  144. this.SeedBtn.setSiblingIndex(10);
  145. this.SeedBtn.setContentSize(86, 88);
  146. }
  147. //兑换
  148. else if ('1' == index) {
  149. this.ExchangeBtn.y = -20;
  150. this.ExchangeBtn.getComponent(cc.Sprite).spriteFrame = this.Selecteded_Exchange_Sprite;
  151. this.Exchange.active = true;
  152. this.ExchangeBtn.setSiblingIndex(10);
  153. this.ExchangeBtn.setContentSize(86, 88);
  154. }
  155. },
  156. switch: function () {
  157. var children = this.container.children;
  158. var length = children.length;
  159. if (length > 1) {
  160. var src = Math.floor(Math.random() * length);
  161. var node = children[src];
  162. var dst = src === length - 1 ? 0 : src + 1;
  163. node.setSiblingIndex(dst);
  164. }
  165. },
  166. SNBExchangeToCNT()
  167. {
  168. GlobalD.GameData.onSnbToCnt(this.snbAmount, (res, vaule) => {
  169. this.ExchangePopView.active = false;
  170. console.log('vaulet=',vaule)
  171. console.log('res=',res)
  172. });
  173. },
  174. onPayCNTPopView(myIndex)
  175. {
  176. this.buySeedIndex = myIndex;
  177. this.PayCNTPopView.active = true;
  178. // console.log('this.mySeedList[this.buySeedIndex] =',this.mySeedList[this.buySeedIndex])
  179. this.PayCNTPopView.getChildByName("BG").getChildByName("BG1_sprite_splash").getChildByName("NameLabel").getChildByName("label").getComponent(cc.Label).string = this.mySeedList[this.buySeedIndex].name;
  180. this.PayCNTPopView.getChildByName("BG").getChildByName("BG1_sprite_splash").getChildByName("PriceLabel").getChildByName("label").getComponent(cc.Label).string = this.mySeedList[this.buySeedIndex].priceCnt + ' CNT';
  181. this.PayCNTPopView.getChildByName("BG").getChildByName("BG1_sprite_splash").getChildByName("MutureDurLabel").getChildByName("label").getComponent(cc.Label).string = this.mySeedList[this.buySeedIndex].maturity;
  182. },
  183. PayCNT()
  184. {
  185. console.log('this.cntAmount=',this.cntAmount)
  186. GlobalD.GameData.payCNT(this.cntAmount, 4, this.mySeedList[this.buySeedIndex].id, (res, vaule) => {
  187. console.log('PayCNT1 res= ',res);
  188. console.log('PayCNT2 vaule= ',vaule);
  189. this.PayCNTPopView.active = false;
  190. });
  191. },
  192. //onEditDidBegan: function(editbox, customEventData) {
  193. // // 这里 editbox 是一个 cc.EditBox 对象
  194. // // 这里的 customEventData 参数就等于你之前设置的 "foobar"
  195. //},
  196. //// 假设这个回调是给 editingDidEnded 事件的
  197. //onEditDidEnded: function(editbox, customEventData) {
  198. // // 这里 editbox 是一个 cc.EditBox 对象
  199. // // 这里的 customEventData 参数就等于你之前设置的 "foobar"
  200. //},
  201. //// 假设这个回调是给 textChanged 事件的
  202. //onTextChanged: function(text, editbox, customEventData) {
  203. // // 这里的 text 表示 修改完后的 EditBox 的文本内容
  204. // // 这里 editbox 是一个 cc.EditBox 对象
  205. // // 这里的 customEventData 参数就等于你之前设置的 "foobar"
  206. // this.snbAmount = parseInt(text);
  207. //},
  208. //// 假设这个回调是给 editingReturn 事件的
  209. //onEditingReturn: function(editbox, customEventData) {
  210. // // 这里 editbox 是一个 cc.EditBox 对象
  211. // // 这里的 customEventData 参数就等于你之前设置的 "foobar"
  212. //}
  213. // 假设这个回调是给 textChanged 事件的
  214. onTextChanged1: function(text, editbox, customEventData) {
  215. // 这里的 text 表示 修改完后的 EditBox 的文本内容
  216. // 这里 editbox 是一个 cc.EditBox 对象
  217. // 这里的 customEventData 参数就等于你之前设置的 "foobar"
  218. this.cntAmount = parseInt(text);
  219. },
  220. // 假设这个回调是给 textChanged 事件的
  221. onTextChanged2: function(text, editbox, customEventData) {
  222. // 这里的 text 表示 修改完后的 EditBox 的文本内容
  223. // 这里 editbox 是一个 cc.EditBox 对象
  224. // 这里的 customEventData 参数就等于你之前设置的 "foobar"
  225. this.snbAmount = parseInt(text);
  226. },
  227. });