/** * 代码描述 */ import { Audio } from "../../common/src/Audio"; import { GameDataCenter } from "../../common/src/GameDataCenter"; import { UIManager } from "../../common/src/UIManager"; import { Utils } from "../../common/src/Utils"; const { ccclass, property } = cc._decorator; @ccclass export class TipPanel extends cc.Component { @property({ type: cc.Node, tooltip: '面板1' }) panel1: cc.Node = null; @property({ type: cc.Node, tooltip: '面板2' }) panel2: cc.Node = null; private insufficient: boolean = true; onEnable() { this.panel1.getChildByName('closeButton').on('click', this.onClose, this); this.panel1.getChildByName('ice').getChildByName('button').on('click', this.onClose, this); this.panel1.getChildByName('insufficient').getChildByName('button').on('click', this.onGet, this); this.panel2.getChildByName('closeButton').on('click', this.onClose, this); this.panel2.getChildByName('button').on('click', this.onDoubleGet, this); //type: 0.没有泡泡,1.泡泡不多了,2.冰球提示,3.炸弹使用提示 switch (GameDataCenter.tipType) { case 0: this.panel1.active = true; let node = this.panel1.getChildByName('insufficient'); node.active = true; node.getChildByName('label').getComponent(cc.Label).string = '泡泡用完了'; node.getChildByName('buduile').active = false; node.getChildByName('yongwanle').active = true; node.getChildByName('tip').getComponent(cc.Label).string = '获得10个泡泡+激光炮'; let item = node.getChildByName('picture').getChildByName('item'); item.getChildByName('add').active = true; item.getChildByName('bubble').active = true; this.insufficient = false; Utils.btnTween(this.panel1.getChildByName('insufficient').getChildByName('button')); break; case 1: this.panel1.active = true; this.panel1.getChildByName('insufficient').active = true; Utils.btnTween(this.panel1.getChildByName('insufficient').getChildByName('button')); break; case 2: this.panel1.active = true; this.panel1.getChildByName('ice').active = true; if (GameDataCenter.gameLevel == 31) { this.panel1.getChildByName('ice').getChildByName('ice').active = true; } if (GameDataCenter.gameLevel == 11) { this.panel1.getChildByName('ice').getChildByName('shitou').active = true; } if (GameDataCenter.gameLevel == 12) { this.panel1.getChildByName('ice').getChildByName('caihong').active = true; } break; case 3: this.panel2.active = true; this.panel2.getChildByName('tips').active = true; Utils.btnTween(this.panel2.getChildByName('button')); cc.tween(this.panel2.getChildByName('bg')) .by(0.05, { angle: 1 }) .repeatForever() .start(); break; case 4: this.panel2.active = true; this.panel2.getChildByName('online').active = true; this.panel2.getChildByName('button').children[0].getChildByName('label').getComponent(cc.Label).string = '领取'; Utils.btnTween(this.panel2.getChildByName('button')); cc.tween(this.panel2.getChildByName('bg')) .by(0.05, { angle: 1 }) .repeatForever() .start(); } Utils.openPanel(this.node.getChildByName('panel')); } /**关闭 */ private onClose(): void { Audio.playSoundByPath('tip:res/snd/click'); if (GameDataCenter.tipType == 0) { UIManager.open('fail:FailPanel'); } if (GameDataCenter.tipType == 1) { cc.systemEvent.emit('showTenButton', true); } this.node.destroy(); } /**领取 */ private onGet(): void { Audio.playSoundByPath('tip:res/snd/click'); this.get(); } private get(): void { cc.systemEvent.emit('updateBubble', 10); if (!this.insufficient) { cc.systemEvent.emit('updateUI', 'special2', 1); } UIManager.close('tip:TipPanel', true); } /**双倍领取 */ private onDoubleGet(): void { Audio.playSoundByPath('tip:res/snd/click'); this.doubleGet(); } /**双倍领取 */ private doubleGet(): void { if (GameDataCenter.tipType == 3) { cc.systemEvent.emit('updateUI', 'special1', 2); } else if (GameDataCenter.tipType == 4) { GameDataCenter.rewarded = [`${Math.floor(Math.random() * 4)}:1`, '4:80']; UIManager.open('rewarded:RewardedPanel'); cc.systemEvent.emit('startTimer'); } UIManager.close('tip:TipPanel', true); } }