| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- import { _decorator, Component, Node, Label } from 'cc';
- import { DataSystem } from '../core/data/DataSystem';
- import { WindowSystem } from '../core/ui/window/WindowSystem';
- import { ConfigData } from '../data/ConfigData';
- import { UserData } from '../data/UserData';
- const { ccclass, property } = _decorator;
- /**兵营升级 */
- @ccclass('BarracksGradeUp')
- export class BarracksGradeUp extends Component {
- @property({ type: Label, tooltip: "当前兵营等级文本" }) nowLvLabel: Label;
- @property({ type: Label, tooltip: "当前等级文本" }) lvLabel: Label;
- @property({ type: Label, tooltip: "下一级文本" }) nextLvLabel: Label;
- @property({ type: Label, tooltip: "下一次解锁新武将等级" }) nextUnLockGeneralLv: Label;
- @property({ type: Label, tooltip: "解锁新武将数量" }) numLabel: Label;
- @property({ type: Node, tooltip: "解锁新武将信息节点" }) unLockInfoNode: Node;
- @property({ type: Node, tooltip: "没有可以解锁节点" }) finishedNode: Node;
- private barrackConfig: any;
- private unLockGeneralLv: number = 0;
- onLoad() {
- this.barrackConfig = DataSystem.getData(ConfigData).get('barrack');
- let userData = DataSystem.getData(UserData);
- this.nowLvLabel.string = 'Lv.' + userData.campLv;
- this.lvLabel.string = 'Lv.' + (userData.campLv - 1);
- this.nextLvLabel.string = `Lv.${userData.campLv}`;
- }
- private openHandler() {
- let userData = DataSystem.getData(UserData);
- if (this.unLockGeneralLv <= userData.campLv) {
- let generalsStr = this.getUnLockGeneralLv();
- if (generalsStr) {
- let arr = generalsStr.split(",");
- this.nextUnLockGeneralLv.string = `Lv.${this.unLockGeneralLv}`;
- this.numLabel.string = arr.length + '名';
- this.unLockInfoNode.active = true;
- } else {
- this.finishedNode.active = true;
- }
- }
- }
- private getUnLockGeneralLv() {
- let lv = DataSystem.getData(UserData).campLv;
- for (const key in this.barrackConfig) {
- if (Number(key) > lv) {
- if (this.barrackConfig[key].unlockHero) {
- this.unLockGeneralLv = Number(key);
- return this.barrackConfig[key].unlockHero;
- }
- }
- }
- return '';
- }
- }
|