Пример #1
0
    // Token: 0x06000FC0 RID: 4032 RVA: 0x001B9134 File Offset: 0x001B7334
    public override void OnButtonClick(UIButton sender)
    {
        if (this.DelayInit > 0)
        {
            this.Init();
            this.DelayInit = 0;
        }
        StringTable  mStringTable   = DataManager.Instance.mStringTable;
        GUIManager   instance       = GUIManager.Instance;
        WarlobbyData warlobbyDetail = DataManager.Instance.WarlobbyDetail;

        Rally.ClickType btnID = (Rally.ClickType)sender.m_BtnID1;
        switch (btnID)
        {
        case Rally.ClickType.Filter:
        {
            Door door = GUIManager.Instance.FindMenu(EGUIWindow.Door) as Door;
            door.OpenMenu(EGUIWindow.UI_BuffList, 1, 0, false);
            return;
        }

        default:
            if (btnID == Rally.ClickType.RallySpeed)
            {
                Door door2 = GUIManager.Instance.FindMenu(EGUIWindow.Door) as Door;
                door2.OpenMenu(EGUIWindow.UI_BagFilter, 2, 200, false);
                return;
            }
            if (btnID != Rally.ClickType.JoinNPC)
            {
                base.OnButtonClick(sender);
                return;
            }
            break;

        case Rally.ClickType.Join:
            break;

        case Rally.ClickType.Cancel:
            GUIManager.Instance.OpenOKCancelBox(instance.FindMenu(EGUIWindow.UI_Rally), mStringTable.GetStringByID(4975u), mStringTable.GetStringByID(4976u), 3, 0, mStringTable.GetStringByID(4977u), mStringTable.GetStringByID(4978u));
            return;
        }
        List <WarlobbyTroop> warTroop = DataManager.Instance.WarTroop;
        string stringByID             = mStringTable.GetStringByID(5748u);
        string stringByID2            = mStringTable.GetStringByID(5750u);
        byte   b = 0;

        if (ActivityManager.Instance.IsInKvK(0, false) && DataManager.MapDataController.kingdomData.kingdomID != warlobbyDetail.AllyHomeKingdom)
        {
            instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(982u), stringByID2, null, 0, 0, false, false, false, false, false);
            return;
        }
        if (warTroop.Count > 30)
        {
            b = 1;
            instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(5749u), stringByID2, null, 0, 0, false, false, false, false, false);
        }
        else if (warlobbyDetail.AllyCurrTroop == warlobbyDetail.AllyMAXTroop)
        {
            b = 1;
            instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(5813u), stringByID2, null, 0, 0, false, false, false, false, false);
        }
        else if (DataManager.MapDataController.CheckLenght(GameConstants.getTileMapPosbyPointCode(warlobbyDetail.AllyCapitalPoint.zoneID, warlobbyDetail.AllyCapitalPoint.pointID)) == 0f)
        {
            b           = 1;
            stringByID  = mStringTable.GetStringByID(4030u);
            stringByID2 = mStringTable.GetStringByID(4031u);
            instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(119u), stringByID2, null, 0, 0, false, false, false, false, false);
        }
        else
        {
            stringByID  = mStringTable.GetStringByID(3967u);
            stringByID2 = mStringTable.GetStringByID(4034u);
            int num = 0;
            if (DataManager.Instance.beCaptured.nowCaptureStat == LoadCaptureState.Returning)
            {
                num++;
            }
            uint effectBaseVal = DataManager.Instance.AttribVal.GetEffectBaseVal(GATTR_ENUM.EGA_MARCH_NUM);
            for (int i = 0; i < 8; i++)
            {
                if (DataManager.Instance.MarchEventData[i].Type != EMarchEventType.EMET_Standby)
                {
                    num++;
                    if ((long)num == (long)((ulong)effectBaseVal))
                    {
                        b = 1;
                        instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(3959u), stringByID2, null, 0, 0, false, false, false, false, false);
                        break;
                    }
                }
            }
        }
        if (b == 0)
        {
            Door door3 = GUIManager.Instance.FindMenu(EGUIWindow.Door) as Door;
            if (door3)
            {
                if (sender.m_BtnID1 == 2)
                {
                    door3.OpenMenu(EGUIWindow.UI_Expedition, 1, 3, true);
                }
                else
                {
                    door3.OpenMenu(EGUIWindow.UI_Expedition, 1, 9, true);
                }
            }
        }
    }
Пример #2
0
    // Token: 0x06000FD5 RID: 4053 RVA: 0x001BBD80 File Offset: 0x001B9F80
    public override void OnButtonClick(UIButton sender)
    {
        if (this.DelayInit > 0)
        {
            this.Init();
            this.DelayInit = 0;
        }
        StringTable  mStringTable   = DataManager.Instance.mStringTable;
        GUIManager   instance       = GUIManager.Instance;
        WarlobbyData warlobbyDetail = DataManager.Instance.WarlobbyDetail;

        Rally.ClickType btnID = (Rally.ClickType)sender.m_BtnID1;
        switch (btnID)
        {
        case Rally.ClickType.CancelWonders:
            GUIManager.Instance.OpenOKCancelBox(instance.FindMenu(EGUIWindow.UI_Rally), mStringTable.GetStringByID(8571u), mStringTable.GetStringByID(8572u), 7, sender.m_BtnID2, mStringTable.GetStringByID(4846u), mStringTable.GetStringByID(4847u));
            break;

        case Rally.ClickType.CancelJoin:
            this.MessageStr.ClearString();
            this.MessageStr.StringToFormat(DataManager.MapDataController.GetYolkName((ushort)warlobbyDetail.WonderID, 0));
            this.MessageStr.AppendFormat(mStringTable.GetStringByID(8576u));
            GUIManager.Instance.OpenOKCancelBox(instance.FindMenu(EGUIWindow.UI_Rally), mStringTable.GetStringByID(4844u), this.MessageStr.ToString(), 8, sender.m_BtnID2, mStringTable.GetStringByID(4846u), mStringTable.GetStringByID(4847u));
            break;

        default:
            switch (btnID)
            {
            case Rally.ClickType.Filter:
            {
                Door door = GUIManager.Instance.FindMenu(EGUIWindow.Door) as Door;
                door.OpenMenu(EGUIWindow.UI_BuffList, 1, 0, false);
                return;
            }

            case Rally.ClickType.Join:
            {
                List <WarlobbyTroop> warTroop = DataManager.Instance.WarTroop;
                string stringByID             = mStringTable.GetStringByID(5748u);
                string stringByID2            = mStringTable.GetStringByID(5750u);
                byte   b = 0;
                if (ActivityManager.Instance.IsInKvK(0, false) && DataManager.MapDataController.kingdomData.kingdomID != warlobbyDetail.AllyHomeKingdom)
                {
                    instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(4827u), stringByID2, null, 0, 0, false, false, false, false, false);
                    return;
                }
                if (warTroop.Count == 1 && warlobbyDetail.AllyCurrTroop == warlobbyDetail.AllyMAXTroop)
                {
                    b          = 1;
                    stringByID = mStringTable.GetStringByID(8563u);
                    this.MessageStr.ClearString();
                    this.MessageStr.StringToFormat(DataManager.MapDataController.GetYolkName((ushort)warlobbyDetail.WonderID, 0));
                    this.MessageStr.AppendFormat(mStringTable.GetStringByID(8566u));
                    stringByID2 = mStringTable.GetStringByID(8565u);
                    instance.OpenMessageBox(stringByID, this.MessageStr.ToString(), stringByID2, null, 0, 0, false, false, false, false, false);
                }
                else if (warTroop.Count > 30)
                {
                    b          = 1;
                    stringByID = mStringTable.GetStringByID(8563u);
                    this.MessageStr.ClearString();
                    this.MessageStr.StringToFormat(DataManager.MapDataController.GetYolkName((ushort)warlobbyDetail.WonderID, 0));
                    this.MessageStr.AppendFormat(mStringTable.GetStringByID(8568u));
                    instance.OpenMessageBox(stringByID, this.MessageStr.ToString(), stringByID2, null, 0, 0, false, false, false, false, false);
                }
                else if (warlobbyDetail.AllyCurrTroop >= warlobbyDetail.AllyMAXTroop)
                {
                    b          = 1;
                    stringByID = mStringTable.GetStringByID(8563u);
                    this.MessageStr.ClearString();
                    this.MessageStr.StringToFormat(DataManager.MapDataController.GetYolkName((ushort)warlobbyDetail.WonderID, 0));
                    this.MessageStr.AppendFormat(mStringTable.GetStringByID(8567u));
                    instance.OpenMessageBox(stringByID, this.MessageStr.ToString(), stringByID2, null, 0, 0, false, false, false, false, false);
                }
                else if (DataManager.MapDataController.CheckLenght(GameConstants.getTileMapPosbyPointCode(warlobbyDetail.EnemyCapitalPoint.zoneID, warlobbyDetail.EnemyCapitalPoint.pointID)) == 0f)
                {
                    b           = 1;
                    stringByID  = mStringTable.GetStringByID(4030u);
                    stringByID2 = mStringTable.GetStringByID(4031u);
                    instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(119u), stringByID2, null, 0, 0, false, false, false, false, false);
                }
                else
                {
                    stringByID  = mStringTable.GetStringByID(3967u);
                    stringByID2 = mStringTable.GetStringByID(4034u);
                    int num = 0;
                    if (DataManager.Instance.beCaptured.nowCaptureStat == LoadCaptureState.Returning)
                    {
                        num++;
                    }
                    uint effectBaseVal = DataManager.Instance.AttribVal.GetEffectBaseVal(GATTR_ENUM.EGA_MARCH_NUM);
                    for (int i = 0; i < 8; i++)
                    {
                        if (DataManager.Instance.MarchEventData[i].Type != EMarchEventType.EMET_Standby)
                        {
                            num++;
                            if ((long)num == (long)((ulong)effectBaseVal))
                            {
                                b = 1;
                                instance.OpenMessageBox(stringByID, mStringTable.GetStringByID(3959u), stringByID2, null, 0, 0, false, false, false, false, false);
                                break;
                            }
                        }
                    }
                }
                if (b == 0)
                {
                    Door door2 = GUIManager.Instance.FindMenu(EGUIWindow.Door) as Door;
                    if (door2)
                    {
                        door2.OpenMenu(EGUIWindow.UI_Expedition, 4, 2, true);
                    }
                }
                return;
            }
            }
            base.OnButtonClick(sender);
            break;

        case Rally.ClickType.Info:
            this.MessageStr.ClearString();
            this.MessageStr.Append('\n');
            this.MessageStr.Append(mStringTable.GetStringByID(9921u));
            GUIManager.Instance.OpenMessageBoxEX(mStringTable.GetStringByID(8556u), this.MessageStr.ToString(), null, null, 0, 0, false, false);
            break;

        case Rally.ClickType.ChangeLeader:
        {
            Door door3 = GUIManager.Instance.FindMenu(EGUIWindow.Door) as Door;
            if (door3)
            {
                door3.OpenMenu(EGUIWindow.UI_Expedition, (int)warlobbyDetail.WonderID, 8, true);
            }
            break;
        }
        }
    }