1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import { _decorator, Component, Label, Node, ProgressBar } from 'cc';
- import { GameMgr } from '../manager/GameMgr';
- import { StorageUtil } from '../util/StorageUtil';
- import { EventMgr } from '../manager/EventMgr';
- import { EventType } from '../enum/EventType';
- const { ccclass, property } = _decorator;
- @ccclass('UIItem/PassRewardItem')
- export class PassRewardItem extends Component {
- @property(ProgressBar)
- private progressBar: ProgressBar = null
- @property(Label)
- private lbProgress: Label = null
- protected onLoad(): void {
- EventMgr.on(EventType.GetPassReward, this.onUpdateState, this)
- }
- protected onDestroy(): void {
- EventMgr.off(EventType.GetPassReward, this.onUpdateState, this)
- }
- protected start(): void {
- this.onUpdateState()
- }
- private onUpdateState(): void {
- const passRewardLevel: number = StorageUtil.getItem('passRewardLevel', 0)
- const passLevel: number = GameMgr.CurPassedLevel
- let targetPassLevel: number = Math.ceil(passLevel / 5) * 5
- if (passRewardLevel === targetPassLevel) targetPassLevel += 5
- const progress: number = passLevel / targetPassLevel
- this.progressBar.progress = progress
- this.lbProgress.string = `${passLevel}/${targetPassLevel}`
- }
- }
|