/** 设置界面 */ import GameM, { AUDIO_TYPE } from "../manager/GameM"; import UiM, { PANEL_NAME } from "../manager/UiM"; import EffectNode from "./EffectNode"; import AdM from "../manager/AdM"; import LogUtil from "../utils/LogUtil"; import RuleNode from "../prefabs/RuleNode"; import { Utils } from "../utils/Utils"; import DownLoadUI from "./DownLoadUI"; import { HTTP_TYPE } from "../datas/CommonData"; const { ccclass, property } = cc._decorator; @ccclass export default class Setting extends cc.Component { @property(cc.Sprite) iconHead: cc.Sprite = null; @property(cc.Label) labName: cc.Label = null; @property(cc.Label) labLv: cc.Label = null; @property(cc.Label) labID: cc.Label = null; @property(cc.Label) labRedMoney: cc.Label = null; @property(cc.Label) labVersion: cc.Label = null; @property(cc.Sprite) expFill: cc.Sprite = null; @property(cc.Toggle) toggleSound: cc.Toggle = null; @property(cc.Toggle) toggleMusic: cc.Toggle = null; @property(cc.Node) purseBtn: cc.Node = null; @property(cc.Node) cashBtn: cc.Node = null; @property(cc.Node) dropNode: cc.Node = null; @property(cc.Label) labMoney: cc.Label = null; onLoad() { this.setImg() this.purseBtn.active = false // GameM.commonData.redSwitch this.cashBtn.active = GameM.commonData.redSwitch } onEnable() { this.labName.string = GameM.commonData.nickname this.labLv.string = '' + GameM.commonData.roleData.lv LogUtil.logV("Setting uin", GameM.commonData.uin) let str = 'ID:' + GameM.commonData.uin this.labID.string = str.substr(0, 15) + '...' this.labRedMoney.string = GameM.commonData.redMoney.toString() this.labVersion.string = GameM.commonData.appVersion this.expFill.node.active = false this.expFill.fillRange = Number(GameM.commonData.roleData.exp) / Number(GameM.commonData.roleCft[GameM.commonData.roleData.lv - 1].exp) this.toggleMusic.isChecked = GameM.audioM.getSwitchMusic() this.toggleSound.isChecked = GameM.audioM.getSwitchEffect() if (GameM.commonData.isAuth) { GameM.httpM.sendDatas(HTTP_TYPE.getCashRecord, null, GameM.commonData.resultCashRecord.bind(GameM.commonData)) } else { this.labMoney.string = `0元` } } freshRecord() { let record = GameM.commonData.cashRecord let len = record.length let money = 0 for (var i = 0; i < len; i++) { money += record[i].amount } this.labMoney.string = `${(money * 0.01).toFixed(2)}元` } onDisable() { } setImg() { let self = this if (GameM.commonData.headimgurl != '') { cc.loader.load(GameM.commonData.headimgurl + "?aaa=aa.jpg", (err, res) => { if (err) { console.log('err:', err); return; } if (self.iconHead) { let tex: cc.Texture2D = res as cc.Texture2D; self.iconHead.spriteFrame = new cc.SpriteFrame(tex); } }) } this.labName.string = GameM.commonData.nickname } clickPurse() { GameM.audioM.playEffect(AUDIO_TYPE.button) if (!GameM.commonData.redSwitch) { EffectNode.instance.PlayTip('敬请期待') return } } clickCopy() { GameM.audioM.playEffect(AUDIO_TYPE.button) AdM.setClipboard(GameM.commonData.uin) } clickCashout() { GameM.audioM.playEffect(AUDIO_TYPE.button) if (!GameM.commonData.redSwitch) { EffectNode.instance.PlayTip('敬请期待') return } if (GameM.commonData.maxCarLevel < GameM.commonData.cashOpenLevel) { EffectNode.instance.PlayTip(`首次合成${GameM.commonData.cashOpenLevel}级武将可查看`) return } UiM.Instance.onPanel(PANEL_NAME.CashNode, true) } clickHelp() { GameM.audioM.playEffect(AUDIO_TYPE.button) EffectNode.instance.PlayTip("敬请期待") } clickToggleSound() { GameM.audioM.playEffect(AUDIO_TYPE.button) GameM.audioM.switchEffectFunc() } clickToggleMusic() { GameM.audioM.playEffect(AUDIO_TYPE.button) GameM.audioM.switchMusicFunc() } clickCopyN() { GameM.audioM.playEffect(AUDIO_TYPE.button) AdM.setClipboard('72183577@163.com') } clickService() { GameM.audioM.playEffect(AUDIO_TYPE.button); UiM.Instance.onPanel(PANEL_NAME.RuleNode, false, () => { UiM.Instance.ruleNode.getComponent(RuleNode).init(2) }) } clickPrivate() { GameM.audioM.playEffect(AUDIO_TYPE.button); UiM.Instance.onPanel(PANEL_NAME.RuleNode, false, () => { UiM.Instance.ruleNode.getComponent(RuleNode).init(3) }) } clickClose() { GameM.audioM.playEffect(AUDIO_TYPE.button); UiM.Instance.offPanel(PANEL_NAME.SettingNode) } private hasTap = false clickHead() { if (!GameM.commonData.isAuth) { GameM.audioM.playEffect(AUDIO_TYPE.button); if (!this.hasTap) { console.log('clickGoAuth') this.hasTap = true AdM.WxLogin() this.scheduleOnce(() => { this.hasTap = false }, 1) } } } clickDrop() { GameM.audioM.playEffect(AUDIO_TYPE.button); this.dropNode.active = true } clickDopSure() { GameM.audioM.playEffect(AUDIO_TYPE.button); this.dropNode.active = false } /** 检测更新 */ clickCheckUpdate() { GameM.audioM.playEffect(AUDIO_TYPE.button); let installVersion = GameM.commonData.installVersion let compare = Utils.versionCompareHandle(GameM.commonData.appVersion, installVersion) if (compare < 0) { UiM.Instance.onPanel(PANEL_NAME.DownLoadUI, false, () => { UiM.Instance.downLoadUI.getComponent(DownLoadUI).init(false) }) } else { EffectNode.instance.PlayTip('当前已是最新版本') } } }