first commit
This commit is contained in:
104
assets/scripts/union/UnionMemberLogic.ts
Normal file
104
assets/scripts/union/UnionMemberLogic.ts
Normal file
@@ -0,0 +1,104 @@
|
||||
import { _decorator, Component, ScrollView, Node, instantiate } from 'cc';
|
||||
const { ccclass, property } = _decorator;
|
||||
|
||||
import UnionCommand from "./UnionCommand";
|
||||
import { Member, Union } from "./UnionProxy";
|
||||
import { MapCityData } from "../map/MapCityProxy";
|
||||
import MapCommand from "../map/MapCommand";
|
||||
import UnionMemberItemOpLogic from "./UnionMemberItemOpLogic";
|
||||
import { EventMgr } from '../utils/EventMgr';
|
||||
|
||||
@ccclass('UnionMemberLogic')
|
||||
export default class UnionMemberLogic extends Component {
|
||||
|
||||
@property(ScrollView)
|
||||
memberView:ScrollView = null;
|
||||
|
||||
@property(Node)
|
||||
disMissButton: Node = null;
|
||||
|
||||
@property(Node)
|
||||
exitButton: Node = null;
|
||||
|
||||
@property(Node)
|
||||
opNode: Node = null;
|
||||
|
||||
protected _op: Node = null;
|
||||
|
||||
protected onLoad():void{
|
||||
|
||||
EventMgr.on("update_union_member",this.updateMember,this);
|
||||
EventMgr.on("kick_union_success",this.getMember,this);
|
||||
EventMgr.on("union_appoint",this.getMember,this);
|
||||
EventMgr.on("union_abdicate",this.getMember,this);
|
||||
EventMgr.on("clickUnionMemberItem",this.onClickItem,this);
|
||||
|
||||
|
||||
}
|
||||
|
||||
protected onDestroy():void{
|
||||
EventMgr.targetOff(this);
|
||||
}
|
||||
|
||||
protected click():void{
|
||||
if(this._op != null){
|
||||
this._op.active = false;
|
||||
}
|
||||
}
|
||||
|
||||
protected onClickItem(menberData):void{
|
||||
if (this._op == null){
|
||||
var node = instantiate(this.opNode);
|
||||
node.parent = this.node;
|
||||
this._op = node;
|
||||
}
|
||||
this._op.active = true;
|
||||
this._op.getComponent(UnionMemberItemOpLogic).setData(menberData);
|
||||
}
|
||||
|
||||
protected updateMember(data:any[]){
|
||||
|
||||
let city:MapCityData = MapCommand.getInstance().cityProxy.getMyMainCity();
|
||||
let unionData:Union = UnionCommand.getInstance().proxy.getUnion(city.unionId);
|
||||
|
||||
var comp = this.memberView.node.getComponent("ListLogic");
|
||||
var list:Member[] = UnionCommand.getInstance().proxy.getMemberList(unionData.id).concat();
|
||||
|
||||
comp.setData(list);
|
||||
|
||||
this.updateBtn();
|
||||
}
|
||||
|
||||
protected updateBtn(){
|
||||
let city:MapCityData = MapCommand.getInstance().cityProxy.getMyMainCity();
|
||||
let unionData:Union = UnionCommand.getInstance().proxy.getUnion(city.unionId);
|
||||
if(unionData.getChairman().rid == city.rid){
|
||||
this.exitButton.active = false;
|
||||
this.disMissButton.active = true;
|
||||
}else{
|
||||
this.exitButton.active = true;
|
||||
this.disMissButton.active = false;
|
||||
}
|
||||
}
|
||||
|
||||
protected getMember():void{
|
||||
let city:MapCityData = MapCommand.getInstance().cityProxy.getMyMainCity();
|
||||
let unionData:Union = UnionCommand.getInstance().proxy.getUnion(city.unionId);
|
||||
UnionCommand.getInstance().unionMember(unionData.id);
|
||||
}
|
||||
|
||||
protected onEnable():void{
|
||||
this.updateBtn();
|
||||
this.getMember();
|
||||
}
|
||||
|
||||
protected dismiss():void{
|
||||
UnionCommand.getInstance().unionDismiss();
|
||||
}
|
||||
|
||||
protected exit():void{
|
||||
UnionCommand.getInstance().unionExit();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user