Beispiel #1
0
    void RefreshPayInfo(int levelindex, ESlefContestType contestType)
    {
        Transform groupTransform = null;

        switch (contestType)
        {
        case ESlefContestType.TimeContest:
            groupTransform = rulepanel2_.transform.Find("Right");
            break;

        case ESlefContestType.PlayerNumberContest:
            groupTransform = rulepanel1_.transform.Find("Right");
            break;
        }

        byte gameid = SelfContestDataManager.instance().gameid;
        int  power  = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[0];
        int  level  = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[levelindex];

        int pay4appointment = power * level;

        groupTransform.Find("ImageBG/Button_chuangjian").gameObject.SetActive(pay4appointment > 0);
        groupTransform.Find("ImageBG/Button_chuangjian_0").gameObject.SetActive(pay4appointment <= 0);

        Text pay = groupTransform.Find("ImageBG/ImageBGcost").Find("Textnum").gameObject.GetComponent <Text>();

        pay.text = pay4appointment.ToString();

        playtimesindex_ = (byte)levelindex;
    }
Beispiel #2
0
    void ChangeRuleInfo(int pick, bool ison, ESlefContestType constType)
    {
        if (ison)
        {
            byte      CurGameId      = 0;
            Transform groupTransform = null;
            switch (constType)
            {
            case ESlefContestType.TimeContest:
                CurGameId      = (byte)TimeMatchGameIdData[pick];
                groupTransform = rulepanel2_.transform.Find("Right");
                break;

            case ESlefContestType.PlayerNumberContest:
                CurGameId      = (byte)PlayerNumberMatchGameIdData[pick];
                groupTransform = rulepanel1_.transform.Find("Right");
                break;
            }

            int lastIndex = groupTransform.childCount - 1;
            for (int index = 0; index < groupTransform.childCount; index++)
            {
                GameObject child = groupTransform.GetChild(index).gameObject;
                child.SetActive(lastIndex == index || pick == index);
            }

            SelfContestDataManager.instance().gameid = CurGameId;
            CurContestGameIndex = pick;
            SelfContestDataManager.instance().SetGameDataID((int)constType * 3 + pick);

            RefreshPayInfo(1, constType);
            RefreshPlayerNumber(CurGameId, constType);
            RefreshContestTime(groupTransform.parent);
        }
    }
Beispiel #3
0
    public static SelfContestDataManager instance()
    {
        if (instance_ == null)
        {
            instance_ = new SelfContestDataManager();
        }

        return(instance_);
    }
Beispiel #4
0
    void InitRulePanel(ESlefContestType createtype)
    {
        switch (createtype)
        {
        case ESlefContestType.PlayerNumberContest:
        {
            GameObject returnBtn1 = rulepanel1_.transform.Find("Top/ButtonReturn").gameObject;
            XPointEvent.AutoAddListener(returnBtn1, OnBack2SelfContest, null);

            Text diamond1 = rulepanel1_.transform.Find("Top/Image_DiamondFrame/Text_Diamond").gameObject.GetComponent <Text>();
            diamond1.text = (GameMain.hall_.GetPlayerData().GetDiamond() + GameMain.hall_.GetPlayerData().GetCoin()).ToString();

            GameObject togglebg1 = rulepanel1_.transform.Find("Left").gameObject;
            for (int index = 0; index < togglebg1.transform.childCount; index++)
            {
                Toggle toggle = togglebg1.transform.GetChild(index).gameObject.GetComponent <Toggle>();
                int    temp   = index;
                toggle.onValueChanged.AddListener(delegate(bool value) {
                        CustomAudio.GetInstance().PlayCustomAudio(1003);
                        ChangeRuleInfo(temp, value, createtype);
                    });
            }
            InitRightRuleEvents(rulepanel1_, createtype);
        }
        break;

        case ESlefContestType.TimeContest:
        {
            GameObject returnBtn2 = rulepanel2_.transform.Find("Top/ButtonReturn").gameObject;
            XPointEvent.AutoAddListener(returnBtn2, OnBack2SelfContest, null);

            Text diamond2 = rulepanel2_.transform.Find("Top/Image_DiamondFrame/Text_Diamond").gameObject.GetComponent <Text>();
            diamond2.text = (GameMain.hall_.GetPlayerData().GetDiamond() + GameMain.hall_.GetPlayerData().GetCoin()).ToString();

            GameObject togglebg2 = rulepanel2_.transform.Find("Left").gameObject;
            for (int index = 0; index < togglebg2.transform.childCount; index++)
            {
                Toggle toggle = togglebg2.transform.GetChild(index).gameObject.GetComponent <Toggle>();
                int    temp   = index;
                toggle.onValueChanged.AddListener(delegate(bool value) {
                        CustomAudio.GetInstance().PlayCustomAudio(1003);
                        ChangeRuleInfo(temp, value, createtype);
                    });
            }

            InitRightRuleEvents(rulepanel2_, createtype);
        }
        break;
        }
        InitMatchData(createtype);
        SelfContestDataManager.instance().gameid = (byte)GameKind_Enum.GameKind_LandLords;
        RefreshPayInfo(1, createtype);
        RefreshPlayerNumber(SelfContestDataManager.instance().gameid, createtype);
        CurContestGameIndex = 0;
        SelfContestDataManager.instance().SetGameDataID((int)createtype * 3);
    }
Beispiel #5
0
    //创建比赛
    private void OnCreateContest()
    {
        CustomAudio.GetInstance().PlayCustomAudio(1002);

        if (selfcreateNumber_ >= 10)
        {
            CCustomDialog.OpenCustomConfirmUI(1651);
            return;
        }

        byte gameid = SelfContestDataManager.instance().gameid;
        int  power  = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[0];
        int  level  = SelfContestDataManager.instance().selfcontestcsvs[gameid].datas[playtimesindex_];

        int pay4appointment = power * level;

        if (GameMain.hall_.GetPlayerData().GetDiamond() + GameMain.hall_.GetPlayerData().GetCoin() < pay4appointment)
        {
            CCustomDialog.OpenCustomConfirmUI(1501);
            return;
        }

        UMessage createContestDataMsg = new UMessage((uint)GameCity.EMSG_ENUM.Contestmsg_PlayerCreateContestRequest);

        createContestDataMsg.Add(GameMain.hall_.GetPlayerId());
        createContestDataMsg.Add(SelfContestDataManager.instance().gamedataid);
        createContestDataMsg.Add(scr_.playernumber);
        createContestDataMsg.Add(scr_.cost);
        createContestDataMsg.Add(scr_.precontest);
        createContestDataMsg.Add(scr_.finalcontest);

        Debug.Log(" 比赛游戏:" + SelfContestDataManager.instance().gamedataid + " 比赛人数:" + scr_.playernumber + " 报名费:" + scr_.cost + "预赛场数:" + scr_.precontest + " 决赛场数" + scr_.finalcontest);

        if (rulepanel2_ == null)
        {
            createContestDataMsg.Add((uint)0);
        }
        else
        {
            if (!rulepanel2_.activeSelf)
            {
                createContestDataMsg.Add((uint)0);
            }
            else
            {
                createContestDataMsg.Add(scr_.timeseconds);
            }
        }

        NetWorkClient.GetInstance().SendMsg(createContestDataMsg);

        UnityEngine.Transform groupTransform = rulepanel1_ ? rulepanel1_.transform : rulepanel2_.transform;
        groupTransform.Find("Right/ImageBG/Button_chuangjian").GetComponent <Button>().interactable   = false;
        groupTransform.Find("Right/ImageBG/Button_chuangjian_0").GetComponent <Button>().interactable = false;
    }
Beispiel #6
0
    private void OnPickContestType(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype == EventTriggerType.PointerClick)
        {
            CustomAudio.GetInstance().PlayCustomAudio(1002);

            ESlefContestType createtype = (ESlefContestType)button;

            LoadRulePanel(createtype);

            if (rulepanel1_ != null)
            {
                rulepanel1_.SetActive(false);
            }
            if (rulepanel2_ != null)
            {
                rulepanel2_.SetActive(false);
            }

            createPanel_.SetActive(false);

            int SelfGameDataIndex = ((int)createtype) * 3 + CurContestGameIndex;
            SelfContestDataManager.instance().SetGameDataID(SelfGameDataIndex);
            switch (createtype)
            {
            case ESlefContestType.TimeContest:
            {
                rulepanel2_.SetActive(true);
                GameObject BG = rulepanel2_.transform.Find("Right").gameObject;
                for (int index = 0; index < 3; index++)
                {
                    Text texttips = BG.transform.GetChild(index).Find("shijian/Text_tips").gameObject.GetComponent <Text>();
                    RefreshContestTimeTipsText(texttips);
                }
            }
            break;

            case ESlefContestType.PlayerNumberContest:
            {
                rulepanel1_.SetActive(true);
            }
            break;
            }

            UnityEngine.Transform groupTransform = rulepanel1_ ? rulepanel1_.transform : rulepanel2_.transform;
            groupTransform.Find("Right/ImageBG/Button_chuangjian").GetComponent <Button>().interactable   = true;
            groupTransform.Find("Right/ImageBG/Button_chuangjian_0").GetComponent <Button>().interactable = true;
            RefreshContestTime(groupTransform);
        }
    }