public void InvokeEvent(string name, NDictionary data) { if (mEventHandlerMap.ContainsKey(name)) { mEventHandlerMap[name](data); } }
void GetGroupRanking(int index) { NDictionary args = new NDictionary(); args.Add("pagecount", index); FacadeSingleton.Instance.InvokeService("RPCGetGroupRanking", ConstVal.Service_Sanctuary, args); }
void OnBuildingUpgrade(NetMsgDef msg) { TSCUpgrade upgrade = TSCUpgrade.ParseFrom(msg.mBtsData); if (!upgrade.IsState && upgrade.IsGroup && upgrade.IsResource && upgrade.IsProduction) { sanctuaryPackage.StartUpgrade(upgrade); FacadeSingleton.Instance.InvokeService("RPCGetResourceInfo", ConstVal.Service_Sanctuary); } else { NDictionary data = new NDictionary(); data.Add("title", "升级失败"); string content = ""; if (upgrade.IsState) { content = "建筑正在升级中"; } else if (!upgrade.IsGroup) { content = "庄园等级低于要求\n解锁/升级建筑以提升等级"; } else if (!upgrade.IsResource) { content = "资源数量不足\n可至交易所中购买"; } else if (!upgrade.IsProduction) { content = "其他建筑正在升级或解锁中"; } data.Add("content", content); data.Add("method", 1); FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel"); SendEvent("OpenMsgBox", data); } }
public void Initialize(NDictionary args) { SanctuaryPackage sanctuaryPackage = FacadeSingleton.Instance.RetrieveData(ConstVal.Package_Sanctuary) as SanctuaryPackage; int configID = args.Value <int>("id"); bool isUnlock = args.Value <bool>("isunlock"); UILabel label = transform.Find("label").GetComponent <UILabel>(); BUILDING config = ConfigDataStatic.GetConfigDataTable("BUILDING")[configID] as BUILDING; if (isUnlock == true) { label.text = string.Format("{0} Lv.{1}", config.BldgName, sanctuaryPackage.GetBulidingLevelByConfigID(configID)); } else { UserPackage userPackage = FacadeSingleton.Instance.RetrieveData(ConstVal.Package_User) as UserPackage; int curLevel = userPackage.GetManorLevel(); int requireLevel = config.BldgLvLim; if (curLevel >= requireLevel) { label.text = string.Format("[90FF15]可解锁[-]"); } else { label.text = string.Format("庄园Lv.{0} 解锁", requireLevel); } } name = config.BldgName; }
void GetPageCount() { NDictionary args = new NDictionary(); args.Add("groupid", userPackage.GroupID); FacadeSingleton.Instance.InvokeService("RPCGetMailCount", ConstVal.Service_Sanctuary, args); }
public void Initialize(NDictionary data) { args = data; int id = args.Value <int>("id"); SetIcon(id); }
void RefreshPlayerLevel(NDictionary data = null) { float progres = 0f; levelLabel.text = string.Format("Lv.{0}", userPackage.GetPlayerLevel(out progres).ToString()); expProgressBar.value = progres; }
void RefreshStoreHouse(NDictionary data = null) { //update cap label capLabel.text = string.Format("仓库容量:{0}/{1}", itemPackage.GetRousourceTotalCap(), sanctuaryPackage.GetStoreHouseCap()); //refresh tableview tableView.TableChange(); }
public List <NItemInfo> GetBuildingUpgradeCost(NDictionary args) { if (args == null) { return(null); } int fromConfigID = args.Value <int>("configID"); List <NItemInfo> costInfoList = new List <NItemInfo>(); var buildingConfigDataMap = ConfigDataStatic.GetConfigDataTable("BUILDING"); BUILDING buildingConfigData = buildingConfigDataMap[fromConfigID] as BUILDING; for (int i = 0; i < buildingConfigData.CostTableCount; i++) { var costData = buildingConfigData.GetCostTable(i); int configID = costData.CostId; if (configID == 0) { continue; } int number = costData.CostQty; NItemInfo info = new NItemInfo(); info.configID = configID; info.number = number; costInfoList.Add(info); } return(costInfoList); }
void OnCollect() { NDictionary args = new NDictionary(); args.Add("buildingID", selectionBuilding.BuildingID); FacadeSingleton.Instance.InvokeService("RPCReceive", ConstVal.Service_Sanctuary, args); }
void CreateCallback(UIInput input) { NDictionary args = new NDictionary(); args.Add("name", input.value); FacadeSingleton.Instance.InvokeService("RPCCreateGroup", ConstVal.Service_Common, args); }
void OnGetJoinGroupResult(NetMsgDef msg) { TSCApplyGroup res = TSCApplyGroup.ParseFrom(msg.mBtsData); string title = "加入失败"; string content = ""; if (!res.Exist) { FacadeSingleton.Instance.OverlayerPanel("UIMsgBoxPanel"); NDictionary args = new NDictionary(); content = "该ID不存在"; args.Add("title", title); args.Add("content", content); SendEvent("OpenMsgBox", args); return; } if (res.Full) { FacadeSingleton.Instance.OverlayerPanel("UIMsgBoxPanel"); NDictionary args = new NDictionary(); content = "该庄园人员上限已满"; args.Add("title", title); args.Add("content", content); SendEvent("OpenMsgBox", args); return; } UserPackage userPackage = FacadeSingleton.Instance.RetrieveData(ConstVal.Package_User) as UserPackage; userPackage.SetGroupID(res.GroupId); SceneLoader.LoadScene("SLoading"); }
void InitView() { NBuildingInfo info = sanctuarytPackage.GetBuildingInfo(selecttionBuilding.BuildingID); var buildingDataMap = ConfigDataStatic.GetConfigDataTable("BUILDING"); BUILDING buildingData = buildingDataMap[info.configID] as BUILDING; int level = sanctuarytPackage.GetBulidingLevelByConfigID(info.configID); titleLabel.text = string.Format("{0} Lv.{1}", buildingData.BldgName, level); contentLable.text = buildingData.BldgInfo; //render 3d model string prefabName = buildingData.PrefabName; if (!string.IsNullOrEmpty(prefabName)) { NDictionary data = new NDictionary(); prefabName = prefabName.Substring(0, prefabName.IndexOf(".")); GameObject prefab = Resources.Load <GameObject>("Prefabs/Building/" + prefabName); if (prefab != null) { data.Add("model", prefab); modelGo = FacadeSingleton.Instance.InvokeService("OpenSubRenderer", ConstVal.Service_Sanctuary, data) as GameObject; } } //get attribute data int count = sanctuarytPackage.GetBuildingAttribute(selecttionBuilding, level); tableView.DataCount = count; tableView.TableChange(); }
void Close(NDictionary data = null) { if (isOpen) { FacadeSingleton.Instance.BackPanel(); } }
public void UpgradeBuilding(NDictionary args) { if (args == null) { return; } }
void OnReceive(NetMsgDef msg) { TSCReceive receive = TSCReceive.ParseFrom(msg.mBtsData); long buildingID = receive.BuildingId; int configID = receive.ConfigId; int num = receive.Number; sanctuaryPackage.Receive(buildingID, receive); NBuildingInfo info = sanctuaryPackage.GetBuildingInfo(buildingID); if (sanctuaryPackage.GetBuildingFuncByConfigID(info.configID) == BuildingFunc.Craft) { SendEvent("RefreshCraftPanel"); } NDictionary data = new NDictionary(); if (configID == 0) //elec { string content = string.Format("获得电力 x {0}", num); data.Add("content", content); } else { ITEM_RES itemConfig = itemPackage.GetItemDataByConfigID(configID); string content = string.Format("获得{0} x {1}", itemConfig.MinName, num); data.Add("content", content); } //info.number = Mathf.Max(0, info.number - num); //info.building.SetCollect(false); info.building.RefreshHud(); FacadeSingleton.Instance.OpenUtilityPanel("UITipsPanel"); FacadeSingleton.Instance.SendEvent("OpenTips", data); FacadeSingleton.Instance.InvokeService("RPCGetResourceInfo", ConstVal.Service_Sanctuary); }
void HideNameBoard(NDictionary args = null) { if (hudBinder != null) { hudBinder.RemoveHud(HudType.NameBoard); } }
void CheckIfCanUnlockOrUpgrade(NDictionary data = null) { if (hudBinder == null) { return; } hudBinder.RemoveHud(HudType.Exmind); int configID = 0; if (buildingID != 0) // if can upgrade { NBuildingInfo info = sanctuaryPackage.GetBuildingInfo(buildingID); configID = info.configID + 1; if (sanctuaryPackage.GetBulidingLevelByConfigID(configID) >= 20) { return; } } else { configID = sanctuaryPackage.GetConfigIDByBuildingType(buildingType); } if (sanctuaryPackage.IsAbleToUnlockOrUpgrade(configID)) { CanUnlockOrUpgrade = true; hudBinder.AddHud(HudType.Exmind); } else { CanUnlockOrUpgrade = false; } }
void BuyItemResponce(NetMsgDef msg) { TSCBuyGoods res = TSCBuyGoods.ParseFrom(msg.mBtsData); string content; if (res.IsChange) { content = "价格已改变, 请重新操作"; FacadeSingleton.Instance.InvokeService("RPCGetItemTradeInfo", ConstVal.Service_Sanctuary); } else if (res.IsLimit) { content = "购买达到上限"; FacadeSingleton.Instance.InvokeService("RPCGetPurchase", ConstVal.Service_Sanctuary); } else { ITEM_RES config = itemPackage.GetItemDataByConfigID(res.ConfigId); double price = itemPackage.GetItemPrice(res.ConfigId); content = string.Format("购买{0} x {1}单位\n消耗黄金{2}", config.MinName, res.Number, price * res.Number); FacadeSingleton.Instance.InvokeService("RPCGetPurchase", ConstVal.Service_Sanctuary); FacadeSingleton.Instance.InvokeService("RPCGetResourceInfo", ConstVal.Service_Sanctuary); } FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel"); NDictionary args = new NDictionary(); args.Add("content", content); args.Add("method", 1); SendEvent("OpenMsgBox", args); }
void OnUpgrade() { NDictionary args = new NDictionary(); args.Add("buildingID", sanctuaryPackage.GetSelectionBuilding().BuildingID); FacadeSingleton.Instance.InvokeService("RPCUpgradeBuliding", ConstVal.Service_Sanctuary, args); FacadeSingleton.Instance.BackPanel(); }
void ShowEventIcon(NDictionary data = null) { DynamicPackage dynamicPackage = FacadeSingleton.Instance.RetrieveData(ConstVal.Package_Dynamic) as DynamicPackage; dynamicPackage.CalculateBuff(); tableView.DataCount = dynamicPackage.GetBuffList().Count; tableView.TableChange(); }
void OnStartCraft() { NDictionary args = new NDictionary(); args.Add("buildingID", selectionBuilding.BuildingID); args.Add("num", craftNum); FacadeSingleton.Instance.InvokeService("RPCCraft", ConstVal.Service_Sanctuary, args); }
public void AddHud(HudType type, NDictionary args = null) { HudInfo info = new HudInfo(); info.type = type; info.args = args; hudInfoList.Add(info); }
void OnUnlock() { NDictionary data = new NDictionary(); data.Add("configID", sanctuaryPackage.GetConfigIDByBuildingType(sanctuaryPackage.GetSelectionBuilding().buildingType)); FacadeSingleton.Instance.InvokeService("RPCUnlockBuilding", ConstVal.Service_Sanctuary, data); FacadeSingleton.Instance.BackPanel(); }
void OnBuyItem() { FacadeSingleton.Instance.OverlayerPanel("UIItemValuePanel"); NDictionary args = new NDictionary(); args.Add("isbuy", true); FacadeSingleton.Instance.SendEvent("OpenItemValue", args); }
protected void OnClick() { NDictionary data = new NDictionary(); NTradeInfo info = dynamicPackage.GetFilteredTradeInfoList()[mIndex]; data.Add("id", info.configID); FacadeSingleton.Instance.SendEvent("TradeSelecItem", data); }
void GetPageList(int index) { NDictionary args = new NDictionary(); args.Add("pageidx", index); args.Add("groupid", userPackage.GroupID); FacadeSingleton.Instance.InvokeService("RPCGetMailPageList", ConstVal.Service_Sanctuary, args); }
void OnChat() { FacadeSingleton.Instance.OpenUtilityPanel("UITipsPanel"); NDictionary data = new NDictionary(); string content = string.Format("此功能尚未完成,请期待后续版本"); data.Add("content", content); FacadeSingleton.Instance.SendEvent("OpenTips", data); }
void OnLogin() { if (CheckString(userName.value)) { NDictionary data = new NDictionary(); data.Add("username", userName.value); FacadeSingleton.Instance.InvokeService("Login", ConstVal.Service_Common, data); } }
public void RPCGetGroupRanking(NDictionary args) { var builder = TCSGetGroupRanking.CreateBuilder(); builder.CurrentPage = args.Value <int>("pagecount"); TCSGetGroupRanking msg = builder.Build(); NetSingleton.Instance.SendNetMsg(NetType.Netty, (short)Cmd.GETGROUPRANKING, msg.ToByteArray()); }