cc.Class({ extends: cc.Component, properties: { Seed: { default: null, type: cc.Node, }, Exchange: { default: null, type: cc.Node, }, SeedBtn: { default: null, type: cc.Node, }, ExchangeBtn: { default: null, type: cc.Node, }, SelectedFrame: cc.Node, //Building40: cc.Node, ManageUI: cc.Node, //四个按钮对应的sprite Normal_Seed_Sprite: cc.SpriteFrame, Selecteded_Seed_Sprite: cc.SpriteFrame, Normal_Exchange_Sprite: cc.SpriteFrame, Selecteded_Exchange_Sprite: cc.SpriteFrame, //需要切换节点顺序的父节点 container: cc.Node, //商城的列表 mySeedList: [], seedPrefab: cc.Prefab, seedSpriteFrame: { default: [], type: [cc.SpriteFrame] }, seedNodeArry: { default: [], type: [cc.Node] }, snbAmount:0, cntAmount:0, ExchangePopView: { default: null, type: cc.Node, }, PayCNTPopView: { default: null, type: cc.Node, }, buySeedIndex:-1, snbAmountLabel: { default: null, type: [cc.Label] }, }, HiddenAll() { if (this.Seed.active) this.Seed.active = false; if (this.Exchange.active) this.Exchange.active = false; }, start() { //默认设置第一个节点为 最上面 this.SeedBtn.setSiblingIndex(10); console.log('SNB=======',GlobalD.GameData.SNB) this.snbAmountLabel.string = GlobalD.GameData.SNB; //获取种子和果实 GlobalD.GameData.getMallSeed((res, vaule) => { console.log('vaule111111111=',vaule) this.mySeedList = vaule.data; for (let i = 0; i < this.mySeedList.length; i++) { //没有种子数量不显示 todo 看看后续需不需要处理删除 if (this.mySeedList[i].amount < 1) continue; let _seed = cc.instantiate(this.seedPrefab); // _seed.getChildByName("buy_button").active = true; // _seed.getChildByName("Name").active = false; // _seed.getChildByName("Name").getChildByName("Num").getComponent(cc.Label).strng = '';//'x'+this.mySeedList[i].amount; this.seedNodeArry.push(_seed); _seed.parent = this.Seed; let _seedScript = _seed.getComponent("Content_Button"); //设置一个生成点 let _spawnScript = _seed.getComponent("Content_seed"); _spawnScript.myIndex = i; _spawnScript.SpawnPoint = cc.find("Canvas/SpawnParent/SpawnPoint"); _seedScript.NumLabel.string = this.mySeedList[i].amount; _seedScript.NameLabel.string = this.mySeedList[i].name; switch (this.mySeedList[i].picture) { case "Cabbage": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[0]; break; case "Potato": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[1]; break; case "Carrot": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[2]; break; case "Broccoli": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[3]; break; case "Tomato": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[4]; break; case "Squash": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[5]; break; case "Eggplant": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[6]; break; case "Pepper": _seedScript.bgSprite.spriteFrame = this.seedSpriteFrame[7]; break; default: break; } } }); }, //切换建筑的面板 onSwitchBuildingContent(event, index) { this.SeedBtn.setScale(1); this.ExchangeBtn.setScale(1); this.SeedBtn.getComponent(cc.Sprite).spriteFrame = this.Normal_Seed_Sprite; this.ExchangeBtn.getComponent(cc.Sprite).spriteFrame = this.Normal_Exchange_Sprite; this.SeedBtn.setContentSize(100, 54); this.ExchangeBtn.setContentSize(100, 54); this.SeedBtn.y = -5; this.ExchangeBtn.y = -5; this.HiddenAll(); //面板设置index //种子 if ('0' == index) { this.SeedBtn.y = -20; this.SeedBtn.getComponent(cc.Sprite).spriteFrame = this.Selecteded_Seed_Sprite; this.Seed.active = true; if(this.seedNodeArry.length!=0) { this.SelectedFrame.parent = this.seedNodeArry[0]; } //if (this.mySeedList.length > 0) { // let Synopsis = "成熟期:" + this.mySeedList[0].maturity; // this.ManageUI.getComponent('ManageUI').onSetButtonInfo(this.mySeedList[0].name, this.mySeedList[0].priceSnb, Synopsis); //} this.SeedBtn.setSiblingIndex(10); this.SeedBtn.setContentSize(86, 88); } //兑换 else if ('1' == index) { this.ExchangeBtn.y = -20; this.ExchangeBtn.getComponent(cc.Sprite).spriteFrame = this.Selecteded_Exchange_Sprite; this.Exchange.active = true; this.ExchangeBtn.setSiblingIndex(10); this.ExchangeBtn.setContentSize(86, 88); } }, switch: function () { var children = this.container.children; var length = children.length; if (length > 1) { var src = Math.floor(Math.random() * length); var node = children[src]; var dst = src === length - 1 ? 0 : src + 1; node.setSiblingIndex(dst); } }, SNBExchangeToCNT() { GlobalD.GameData.onSnbToCnt(this.snbAmount, (res, vaule) => { this.ExchangePopView.active = false; console.log('vaulet=',vaule) console.log('res=',res) }); }, onPayCNTPopView(myIndex) { this.buySeedIndex = myIndex; this.PayCNTPopView.active = true; // console.log('this.mySeedList[this.buySeedIndex] =',this.mySeedList[this.buySeedIndex]) this.PayCNTPopView.getChildByName("BG").getChildByName("BG1_sprite_splash").getChildByName("NameLabel").getChildByName("label").getComponent(cc.Label).string = this.mySeedList[this.buySeedIndex].name; this.PayCNTPopView.getChildByName("BG").getChildByName("BG1_sprite_splash").getChildByName("PriceLabel").getChildByName("label").getComponent(cc.Label).string = this.mySeedList[this.buySeedIndex].priceCnt + ' CNT'; this.PayCNTPopView.getChildByName("BG").getChildByName("BG1_sprite_splash").getChildByName("MutureDurLabel").getChildByName("label").getComponent(cc.Label).string = this.mySeedList[this.buySeedIndex].maturity; }, PayCNT() { console.log('this.cntAmount=',this.cntAmount) GlobalD.GameData.payCNT(this.cntAmount, 4, this.mySeedList[this.buySeedIndex].id, (res, vaule) => { console.log('PayCNT1 res= ',res); console.log('PayCNT2 vaule= ',vaule); this.PayCNTPopView.active = false; }); }, //onEditDidBegan: function(editbox, customEventData) { // // 这里 editbox 是一个 cc.EditBox 对象 // // 这里的 customEventData 参数就等于你之前设置的 "foobar" //}, //// 假设这个回调是给 editingDidEnded 事件的 //onEditDidEnded: function(editbox, customEventData) { // // 这里 editbox 是一个 cc.EditBox 对象 // // 这里的 customEventData 参数就等于你之前设置的 "foobar" //}, //// 假设这个回调是给 textChanged 事件的 //onTextChanged: function(text, editbox, customEventData) { // // 这里的 text 表示 修改完后的 EditBox 的文本内容 // // 这里 editbox 是一个 cc.EditBox 对象 // // 这里的 customEventData 参数就等于你之前设置的 "foobar" // this.snbAmount = parseInt(text); //}, //// 假设这个回调是给 editingReturn 事件的 //onEditingReturn: function(editbox, customEventData) { // // 这里 editbox 是一个 cc.EditBox 对象 // // 这里的 customEventData 参数就等于你之前设置的 "foobar" //} // 假设这个回调是给 textChanged 事件的 onTextChanged1: function(text, editbox, customEventData) { // 这里的 text 表示 修改完后的 EditBox 的文本内容 // 这里 editbox 是一个 cc.EditBox 对象 // 这里的 customEventData 参数就等于你之前设置的 "foobar" this.cntAmount = parseInt(text); }, // 假设这个回调是给 textChanged 事件的 onTextChanged2: function(text, editbox, customEventData) { // 这里的 text 表示 修改完后的 EditBox 的文本内容 // 这里 editbox 是一个 cc.EditBox 对象 // 这里的 customEventData 参数就等于你之前设置的 "foobar" this.snbAmount = parseInt(text); }, });