first commit
This commit is contained in:
89
assets/scripts/map/ui/GeneralListLogic.ts
Normal file
89
assets/scripts/map/ui/GeneralListLogic.ts
Normal file
@@ -0,0 +1,89 @@
|
||||
|
||||
import { _decorator, Component, ScrollView, Label } from 'cc';
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
import GeneralCommand from "../../general/GeneralCommand";
|
||||
import MapUICommand from "./MapUICommand";
|
||||
import { EventMgr } from '../../utils/EventMgr';
|
||||
|
||||
@ccclass('GeneralListLogic')
|
||||
export default class GeneralListLogic extends Component {
|
||||
|
||||
@property(ScrollView)
|
||||
scrollView:ScrollView = null;
|
||||
|
||||
@property(Label)
|
||||
cntLab:Label = null;
|
||||
|
||||
private _cunGeneral:number[] = [];
|
||||
private _type:number = 0;
|
||||
private _position:number = 0;
|
||||
|
||||
protected onEnable():void{
|
||||
EventMgr.on("update_my_generals", this.initGeneralCfg, this);
|
||||
EventMgr.on("general_convert", this.initGeneralCfg, this);
|
||||
EventMgr.on("chosed_general", this.onClickClose, this);
|
||||
}
|
||||
|
||||
|
||||
protected onDisable():void{
|
||||
EventMgr.targetOff(this);
|
||||
}
|
||||
|
||||
protected onClickClose(): void {
|
||||
this.node.active = false;
|
||||
}
|
||||
|
||||
protected onClickConvert(): void {
|
||||
EventMgr.emit("open_general_convert");
|
||||
this.node.active = false;
|
||||
}
|
||||
|
||||
protected onTuJianConvert(): void {
|
||||
EventMgr.emit("open_general_roster");
|
||||
this.node.active = false;
|
||||
}
|
||||
|
||||
protected initGeneralCfg():void{
|
||||
|
||||
var basic = MapUICommand.getInstance().proxy.getBasicGeneral();
|
||||
var cnt = GeneralCommand.getInstance().proxy.getMyActiveGeneralCnt();
|
||||
this.cntLab.string = "(" + cnt + "/" + basic.limit + ")";
|
||||
|
||||
let list:any[] = GeneralCommand.getInstance().proxy.getUseGenerals();
|
||||
let listTemp = list.concat();
|
||||
|
||||
|
||||
listTemp.forEach(item => {
|
||||
item.type = this._type;
|
||||
item.position = this._position;
|
||||
})
|
||||
|
||||
|
||||
for(var i = 0; i < listTemp.length ;i++){
|
||||
if(this._cunGeneral.indexOf(listTemp[i].id) >= 0 ){
|
||||
listTemp.splice(i,1);
|
||||
i--;
|
||||
}
|
||||
}
|
||||
|
||||
var comp = this.scrollView.node.getComponent("ListLogic");
|
||||
comp.setData(listTemp);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public setData(data:number[],type:number = 0,position:number = 0):void{
|
||||
this._cunGeneral = [];
|
||||
if(data && data.length > 0){
|
||||
this._cunGeneral = data;
|
||||
}
|
||||
|
||||
this._type = type;
|
||||
this._position = position;
|
||||
|
||||
this.initGeneralCfg();
|
||||
GeneralCommand.getInstance().qryMyGenerals();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user