Exemple #1
0
    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");
    }
Exemple #2
0
    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);
    }
Exemple #3
0
    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);
        }
    }
Exemple #4
0
    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);
    }
Exemple #5
0
    void OnStartCraft()
    {
        NDictionary args = new NDictionary();

        args.Add("buildingID", selectionBuilding.BuildingID);
        args.Add("num", craftNum);
        FacadeSingleton.Instance.InvokeService("RPCCraft", ConstVal.Service_Sanctuary, args);
    }
Exemple #6
0
    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);
    }
Exemple #7
0
    public void DisconnectCallback()
    {
        NDictionary data = new NDictionary();

        data.Add("content", "已断线,请重开游戏");
        data.Add("method", 1);
        FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel");
        FacadeSingleton.Instance.SendEvent("OpenMsgBox", data);
    }
Exemple #8
0
        private static void CreatePtBr()
        {
            NDictionary portugues = new NDictionary("PtBr");

            portugues.Add("&File", "&Arquivo");
            portugues.Add("&Help", "&Ajuda");

            NLocalizationManager.Instance.Enabled = true;
            NLocalizationManager.Instance.GlobalDictionary.CombineWith(portugues);
        }
Exemple #9
0
    public void NameFormatError()
    {
        NDictionary data = new NDictionary();

        data.Add("title", "创建用户失败");
        data.Add("method", 1);
        data.Add("content", "用户名不合法\n用户名只允许中文,英文,数字与下划线,长度在4到10个字符之间");
        FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel");
        FacadeSingleton.Instance.SendEvent("OpenMsgBox", data);
    }
Exemple #10
0
    //-------------------------------------------------------------
    public void ProcessStoreHouseFull()
    {
        string      content = "仓库容量不足\n建议:出售物品或升级仓库";
        NDictionary args    = new NDictionary();

        args.Add("title", "领取失败");
        args.Add("content", content);
        args.Add("method", 1);
        FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel");
        FacadeSingleton.Instance.SendEvent("OpenMsgBox", args);
    }
    void OnCreateGroup()
    {
        FacadeSingleton.Instance.OpenUtilityPanel("UIInputWindowPanel");
        NDictionary args = new NDictionary();

        args.Add("title", "创建庄园");
        args.Add("desc", "庄园名称");
        args.Add("callback", new NInputCallback(CreateCallback));
        SendEvent("OpenInputWindow", args);
        //FacadeSingleton.Instance.InvokeService("RPCCreateGroup", ConstVal.Service_Common);
    }
Exemple #12
0
    void GetGroupRanking(int index)
    {
        NDictionary args = new NDictionary();

        args.Add("pagecount", index);
        FacadeSingleton.Instance.InvokeService("RPCGetGroupRanking", ConstVal.Service_Sanctuary, args);
    }
Exemple #13
0
    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);
    }
Exemple #15
0
    void GetPageCount()
    {
        NDictionary args = new NDictionary();

        args.Add("groupid", userPackage.GroupID);
        FacadeSingleton.Instance.InvokeService("RPCGetMailCount", ConstVal.Service_Sanctuary, args);
    }
    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();
    }
Exemple #17
0
    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();
    }
Exemple #18
0
    void OnBuyItem()
    {
        FacadeSingleton.Instance.OverlayerPanel("UIItemValuePanel");
        NDictionary args = new NDictionary();

        args.Add("isbuy", true);
        FacadeSingleton.Instance.SendEvent("OpenItemValue", 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 OnUpgrade()
    {
        NBuildingInfo buildingInfo = sanctuaryPackage.GetBuildingInfo(selectBuilding.BuildingID);

        if (sanctuaryPackage.GetBulidingLevelByConfigID(buildingInfo.configID) >= 20)
        {
            NDictionary data = new NDictionary();
            data.Add("title", "升级失败");
            data.Add("content", "等级达到上限");
            data.Add("method", 1);
            FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel");
            FacadeSingleton.Instance.SendEvent("OpenMsgBox", data);
            return;
        }
        FacadeSingleton.Instance.BackPanel();
        FacadeSingleton.Instance.OverlayerPanel("UIBuildingUpgradePanel");
    }
Exemple #21
0
    protected void OnClick()
    {
        NDictionary data = new NDictionary();
        NTradeInfo  info = dynamicPackage.GetFilteredTradeInfoList()[mIndex];

        data.Add("id", info.configID);
        FacadeSingleton.Instance.SendEvent("TradeSelecItem", data);
    }
Exemple #22
0
    void OnChat()
    {
        FacadeSingleton.Instance.OpenUtilityPanel("UITipsPanel");
        NDictionary data    = new NDictionary();
        string      content = string.Format("此功能尚未完成,请期待后续版本");

        data.Add("content", content);
        FacadeSingleton.Instance.SendEvent("OpenTips", data);
    }
Exemple #23
0
 void OnLogin()
 {
     if (CheckString(userName.value))
     {
         NDictionary data = new NDictionary();
         data.Add("username", userName.value);
         FacadeSingleton.Instance.InvokeService("Login", ConstVal.Service_Common, data);
     }
 }
Exemple #24
0
        private static void CreateSp()
        {
            NDictionary portugues = new NDictionary("Sp");

            portugues.Add("&Help", "&Ayuda");

            NLocalizationManager.Instance.Enabled = true;
            NLocalizationManager.Instance.GlobalDictionary.CombineWith(portugues);
        }
Exemple #25
0
    public void OnJoinGroup()
    {
        NDictionary args = new NDictionary();

        try
        {
            long id = System.Convert.ToInt64(input.value);
            args.Add("id", id);
            FacadeSingleton.Instance.InvokeService("RPCJoinGroup", ConstVal.Service_Common, args);
        }
        catch (Exception e)
        {
            args.Add("content", "该ID不合法,请检查输入是否有误");
            args.Add("method", 1);
            args.Add("title", "加入失败");
            FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel");
            SendEvent("OpenMsgBox", args);
        }
    }
Exemple #26
0
    void AskDataFromServer()
    {
        FacadeSingleton.Instance.InvokeService("RPCGetResourceInfo", ConstVal.Service_Sanctuary);
        FacadeSingleton.Instance.InvokeService("RPCGetItemTradeInfo", ConstVal.Service_Sanctuary);
        FacadeSingleton.Instance.InvokeService("RPCGetPurchase", ConstVal.Service_Sanctuary);
        long        startTime = GlobalFunction.GetGraphStartTimeStamp();
        NDictionary data      = new NDictionary();

        data.Add("time", startTime);
        FacadeSingleton.Instance.InvokeService("RPCGetWorldEvent", ConstVal.Service_Sanctuary, data);
    }
    void OnConfirm()
    {
        if (itemCap <= 0)
        {
            NDictionary data = new NDictionary();
            if (isBuy)
            {
                data.Add("content", "黄金不够哦");
            }
            else
            {
                data.Add("content", "没东西卖了哦");
            }
            FacadeSingleton.Instance.OpenUtilityPanel("UITipsPanel");
            FacadeSingleton.Instance.SendEvent("OpenTips", data);
            return;
        }
        if (value <= 0)
        {
            NDictionary data = new NDictionary();
            data.Add("content", "数量不能为0");
            FacadeSingleton.Instance.OpenUtilityPanel("UITipsPanel");
            FacadeSingleton.Instance.SendEvent("OpenTips", data);
            return;
        }
        NDictionary args = new NDictionary();

        args.Add("id", configID);
        args.Add("num", value);
        args.Add("price", itemPackage.GetItemPrice(configID));
        args.Add("tax", itemPackage.GetTaxRate());
        if (isBuy)
        {
            FacadeSingleton.Instance.InvokeService("RPCBuyItem", ConstVal.Service_Sanctuary, args);
        }
        else
        {
            FacadeSingleton.Instance.InvokeService("RPCSellItem", ConstVal.Service_Sanctuary, args);
        }
        FacadeSingleton.Instance.BackPanel();
    }
Exemple #28
0
    void ShowNameBoard(NDictionary args = null)
    {
        NDictionary data = new NDictionary();

        if (buildingID == 0)
        {
            data.Add("id", sanctuaryPackage.GetConfigIDByBuildingType(buildingType));
            data.Add("isunlock", false);
        }
        else
        {
            NBuildingInfo info = sanctuaryPackage.GetBuildingInfo(buildingID);
            data.Add("id", info.configID);
            data.Add("isunlock", true);
        }

        if (hudBinder != null)
        {
            hudBinder.AddHud(HudType.NameBoard, data);
        }
    }
    void OnCollect()
    {
        if (selectBuilding == null)
        {
            return;
        }
        FacadeSingleton.Instance.BackPanel();
        NDictionary args = new NDictionary();

        args.Add("buildingID", selectBuilding.BuildingID);
        FacadeSingleton.Instance.InvokeService("RPCReceive", ConstVal.Service_Sanctuary, args);
    }
Exemple #30
0
    void OnBuildingUnlock(NetMsgDef msg)
    {
        TSCUnlock unlock = TSCUnlock.ParseFrom(msg.mBtsData);

        if (unlock.IsGroup && unlock.IsResource && unlock.IsProduction && !unlock.IsState)
        {
            long     buildingID = unlock.BuildingId;
            long     finishTime = unlock.FinishTime;
            Building building   = sanctuaryPackage.GetSelectionBuilding();
            sanctuaryPackage.UnlockBuilding(buildingID, building, finishTime);
            building.RefreshView();
            FacadeSingleton.Instance.InvokeService("RPCGetResourceInfo", ConstVal.Service_Sanctuary);
        }
        else
        {
            NDictionary data = new NDictionary();
            data.Add("title", "解锁失败");
            string content = "";
            if (unlock.IsState)
            {
                content = "该建筑正在解锁中";
            }
            else if (!unlock.IsGroup)
            {
                content = "庄园等级低于要求\n解锁/升级以提升等级";
            }
            else if (!unlock.IsResource)
            {
                content = "资源数量不足\n可至交易所中购买";
            }
            else if (!unlock.IsProduction)
            {
                content = "其他建筑正在升级或解锁中";
            }
            data.Add("content", content);
            data.Add("method", 1);
            FacadeSingleton.Instance.OpenUtilityPanel("UIMsgBoxPanel");
            SendEvent("OpenMsgBox", data);
        }
    }