123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- import { Framework } from "../../framework/Framework";
- import { AwardData, BaseItem, ItemEnum } from "../common/InterfaceAddEnum";
- import { GameEvent } from "../data/GameEvent";
- import { UserData } from "../data/UserData";
- import { GoodsManager } from "./GoodsManager";
- //所有manager的连接器
- export class UnionManager {
- // 解析奖励数据
- static parseServerAwards(data:{[key:string]:AwardData}) {
- let awards:Array<BaseItem> = [];
- console.log("parseServerAwards",Object.keys(data));
- for (const key in Object.keys(data)) {
- const element = data[key];
- console.log(element[0]);
- if (element[0] == ItemEnum.material) {
- let item = GoodsManager.addGoodsById(element[1].toString() , element[2]);
- awards.push(item);
- } else if (element[0] == ItemEnum.equip) {
- }else if (element[0] == ItemEnum.user) {
- let item: BaseItem = {
- conf: {},
- count: element[2],
- id: element[1].toString(),
- type: ItemEnum.user
- };
-
- let statu = UserData.status[element[1]]
- if (statu) {
- statu += element[2];
- UserData.status[element[1]] = statu;
- awards.push(item);
- }
- }
- }
- return awards;
- }
- // 触发物品刷新事件
- static fireEventWithItem(itemList:[BaseItem]){
- let updateEvent = [];
- for(let i in itemList){
- let item = itemList[i];
- if(item.type == ItemEnum.user){
- if(!updateEvent[GameEvent.StatusUpdate]){
- Framework.event.fireEvent(GameEvent.StatusUpdate);
- }
- updateEvent[GameEvent.StatusUpdate] = true
- }else if(item.type == ItemEnum.equip){
- if(!updateEvent[GameEvent.EquipChange]){
- Framework.event.fireEvent(GameEvent.EquipChange);
- }
- updateEvent[GameEvent.EquipChange] = true
- }else if(item.type == ItemEnum.material){
- if(!updateEvent[GameEvent.MaterialChange]){
- Framework.event.fireEvent(GameEvent.MaterialChange);
- }
- updateEvent[GameEvent.MaterialChange] = true
- }
- }
- }
- static showItemTips(awards:Array<BaseItem>) {
- let tipsStr:string = "";
- for (const key in awards) {
- const element = awards[key];
- tipsStr += element.count + "x" + element.id + " ";
- }
- Framework.tips.setTips(tipsStr);
- }
- }
|