Пример #1
0
        private void OnTabCheckboxSelected(UXCheckbox checkbox, bool selected)
        {
            InventoryTab inventoryTab = (InventoryTab)checkbox.Tag;

            if (!selected)
            {
                return;
            }
            if (inventoryTab != this.curTab)
            {
                if (this.curTab == InventoryTab.Crate)
                {
                    this.prefs.SetPref("crtInvLastViewed", ServerTime.Time.ToString());
                    this.crateTabLastViewedTime = ServerTime.Time;
                }
                this.SetTab(inventoryTab);
            }
        }
Пример #2
0
        public void SetTab(BattleLogTab tab)
        {
            this.curTab = tab;
            if (!base.IsLoaded())
            {
                return;
            }
            int i     = 0;
            int count = this.tabs.Count;

            while (i < count)
            {
                UXCheckbox uXCheckbox = this.tabs[i];
                uXCheckbox.Selected = (this.curTab == (BattleLogTab)uXCheckbox.Tag);
                i++;
            }
            this.SetupCurTabElements();
        }
Пример #3
0
        private void OnTabSelected(UXCheckbox checkbox, bool selected)
        {
            UXLabel uXLabel = this.tabLabels[this.CurrentTab];

            uXLabel.TextColor = UXUtils.COLOR_INACTIVE_TROOP_TAB;
            this.CurrentTab   = (int)checkbox.Tag;
            UXLabel uXLabel2 = this.tabLabels[this.CurrentTab];

            if (selected)
            {
                uXLabel2.TextColor = Color.white;
                if (this.tabChangedCallback != null)
                {
                    this.tabChangedCallback();
                }
                Service.EventManager.SendEvent(EventId.UIFilterSelected, null);
            }
        }
Пример #4
0
        protected void InitPlanetSlots()
        {
            this.selectPlanetGrid = base.GetElement <UXGrid>("SelectPlanetGrid");
            UXElement element = base.GetElement <UXElement>("SelectPlanetTemplate");

            element.Visible = true;
            this.selectPlanetGrid.SetTemplateItem("SelectPlanetCard");
            element.Visible = false;
            this.unlockablePlanetList.Clear();
            CurrentPlayer currentPlayer = Service.CurrentPlayer;

            foreach (PlanetVO current in Service.StaticDataController.GetAll <PlanetVO>())
            {
                if (current.PlayerFacing && !currentPlayer.UnlockedPlanets.Contains(current.Uid) && currentPlayer.Map.Planet.Uid != current.Uid)
                {
                    UXCheckbox uXCheckbox = (UXCheckbox)this.selectPlanetGrid.CloneTemplateItem(current.Uid);
                    UXLabel    subElement = this.selectPlanetGrid.GetSubElement <UXLabel>(current.Uid, "LabelSelectPlanetName");
                    if (!this.reqMet && !this.tutorialMode)
                    {
                        uXCheckbox.RadioGroup = 0;
                        uXCheckbox.SetSelectable(false);
                        uXCheckbox.Selected = false;
                    }
                    uXCheckbox.OnSelected = new UXCheckboxSelectedDelegate(this.PlanetSelected);
                    UXTexture subElement2 = this.selectPlanetGrid.GetSubElement <UXTexture>(current.Uid, "SpriteSelectPlanetImagePlanet");
                    subElement2.LoadTexture("PlanetEnvIcon-" + current.Abbreviation);
                    subElement.Text       = LangUtils.GetPlanetDisplayName(current);
                    uXCheckbox.Tag        = current;
                    uXCheckbox.RadioGroup = 0;
                    uXCheckbox.DelayedSelect(false);
                    this.selectPlanetGrid.AddItem(uXCheckbox, current.Order);
                    this.unlockablePlanetList.Add(uXCheckbox);
                }
            }
            if (this.unlockablePlanetList.Count == 0)
            {
                base.GetElement <UXElement>("ButtonPrimary").Visible = false;
                base.GetElement <UXElement>("BtnInstantBuy").Visible = false;
                this.buttonTutorialConfirm.Visible = false;
            }
            this.selectPlanetGrid.RepositionItems();
            this.selectPlanetGrid.IsScrollable = true;
            this.selectPlanetGrid.ScrollToItem(0);
        }
Пример #5
0
        private void CreateTab(string tabTitle, int tab, int sortOrder)
        {
            string     itemUid    = "tab_" + sortOrder;
            UXElement  item       = this.tabGrid.CloneTemplateItem(itemUid);
            UXCheckbox subElement = this.tabGrid.GetSubElement <UXCheckbox>(itemUid, this.filterButton);

            subElement.Tag        = tab;
            subElement.OnSelected = new UXCheckboxSelectedDelegate(this.OnTabSelected);
            this.checkboxes.Add(subElement);
            UXLabel subElement2 = this.tabGrid.GetSubElement <UXLabel>(itemUid, this.filterButtonLabel);

            subElement2.Text = tabTitle;
            if (this.CurrentTab != tab)
            {
                subElement2.TextColor = UXUtils.COLOR_INACTIVE_TROOP_TAB;
            }
            this.tabLabels.Add(tab, subElement2);
            this.tabGrid.AddItem(item, sortOrder);
        }
Пример #6
0
 private void OnAdvancementTabSelected(UXCheckbox checkbox, bool selected)
 {
     if (this.activeAdvancementTab != null && this.activeAdvancementTab.ShouldBlockTabChanges())
     {
         checkbox.Selected = !selected;
         return;
     }
     if (selected)
     {
         SquadAdvancementBaseTab squadAdvancementBaseTab = (SquadAdvancementBaseTab)checkbox.Tag;
         if (squadAdvancementBaseTab != this.activeAdvancementTab)
         {
             this.activeAdvancementTab.Visible = false;
             squadAdvancementBaseTab.Visible   = true;
             this.activeAdvancementTab         = squadAdvancementBaseTab;
             Service.EventManager.SendEvent(EventId.SquadAdvancementTabSelected, this);
         }
     }
 }
        private void AddPlanetButton(PlanetVO planet, bool createdForTournament, bool setSelected)
        {
            string     uid        = planet.Uid;
            UXCheckbox uXCheckbox = (UXCheckbox)this.planetGrid.CloneTemplateItem(uid);

            uXCheckbox.OnSelected = new UXCheckboxSelectedDelegate(this.NewPlanetOptionClicked);
            uXCheckbox.Tag        = planet;
            uXCheckbox.Selected   = setSelected;
            UXLabel subElement = this.planetGrid.GetSubElement <UXLabel>(uid, "LabelBtnPlanet");

            subElement.Text = LangUtils.GetPlanetDisplayName(planet);
            UXSprite subElement2 = this.planetGrid.GetSubElement <UXSprite>(uid, "SpriteBtnPlanetSymbol");

            subElement2.Visible = false;
            UXTexture subElement3 = this.planetGrid.GetSubElement <UXTexture>(uid, "TextureBtnPlanetSymbol");

            subElement3.LoadTexture(planet.LeaderboardButtonTexture);
            this.planetGrid.AddItem(uXCheckbox, planet.Order);
        }
Пример #8
0
        private void InitPerkTabs()
        {
            this.allAdvancementTabs.Clear();
            this.tabActivate                  = this.screen.GetElement <UXCheckbox>("TabActivatePerks");
            this.tabUpgrade                   = this.screen.GetElement <UXCheckbox>("TabUpgradePerks");
            this.tabActivate.OnSelected       = new UXCheckboxSelectedDelegate(this.OnAdvancementTabSelected);
            this.tabUpgrade.OnSelected        = new UXCheckboxSelectedDelegate(this.OnAdvancementTabSelected);
            this.perkTabsGroup                = this.screen.GetElement <UXElement>("TabGroupPerks");
            this.perkTabsGroup.Visible        = true;
            this.perkUpgradeGroup             = this.screen.GetElement <UXElement>("UpgradeMainGroupPerks");
            this.perkUpgradeGroup.Visible     = false;
            this.activeAdvancementTab         = this.CreateAndAddActivateTab(this.screen);
            this.activeAdvancementTab.Visible = true;
            this.tabActivate.Tag              = this.activeAdvancementTab;
            SquadAdvancementBaseTab squadAdvancementBaseTab = this.CreateAndAddUpgradeTab(this.screen);

            squadAdvancementBaseTab.Visible = false;
            this.tabUpgrade.Tag             = squadAdvancementBaseTab;
        }
Пример #9
0
        public SquadWarInfoScreenOverviewTab(SquadWarInfoScreen parent, UXCheckbox tabButton, UXElement topGroup) : base(parent, tabButton, topGroup)
        {
            FactionType faction = Service.Get <CurrentPlayer>().Faction;
            string      text    = (faction == FactionType.Rebel) ? GameConstants.WAR_HELP_OVERVIEW_REBEL : GameConstants.WAR_HELP_OVERVIEW_EMPIRE;

            string[] array = text.Split(new char[]
            {
                '|'
            });
            if (array.Length != 2)
            {
                Service.Get <StaRTSLogger>().WarnFormat("GameConstant [War Help Overview {0}] is not formatted correctly: {1}", new object[]
                {
                    faction,
                    text
                });
                return;
            }
            base.PopulateBgTexture(array[0], "TextureOverview");
            parent.GetElement <UXLabel>("LabelOverview").Text = Service.Get <Lang>().Get(array[1], new object[0]);
        }
Пример #10
0
        private UXCheckbox CreateCheckbox(GameObject gameObject, UIToggle nguiCheckbox, UIButton nguiButton, UIPlayTween nguiTween)
        {
            UXCheckboxComponent uXCheckboxComponent = gameObject.GetComponent <UXCheckboxComponent>();

            if (uXCheckboxComponent != null)
            {
                uXCheckboxComponent.Checkbox = null;
                UnityEngine.Object.Destroy(uXCheckboxComponent);
            }
            uXCheckboxComponent = gameObject.AddComponent <UXCheckboxComponent>();
            uXCheckboxComponent.NGUICheckbox = nguiCheckbox;
            uXCheckboxComponent.NGUIButton   = nguiButton;
            uXCheckboxComponent.NGUITween    = nguiTween;
            UXCheckbox uXCheckbox = new UXCheckbox(this.uxCamera, uXCheckboxComponent);

            uXCheckboxComponent.Checkbox = uXCheckbox;
            uXCheckbox.Selected          = uXCheckboxComponent.Selected;
            uXCheckbox.RadioGroup        = uXCheckboxComponent.RadioGroup;
            this.AddElement(gameObject.name, uXCheckbox);
            return(uXCheckbox);
        }
Пример #11
0
        public SquadWarInfoScreenPreparationTab(SquadWarInfoScreen parent, UXCheckbox tabButton, UXElement topGroup) : base(parent, tabButton, topGroup)
        {
            FactionType faction = Service.CurrentPlayer.Faction;
            string      text    = (faction != FactionType.Rebel) ? GameConstants.WAR_HELP_PREPARATION_EMPIRE : GameConstants.WAR_HELP_PREPARATION_REBEL;

            string[] array = text.Split(new char[]
            {
                '|'
            });
            if (array.Length < 2)
            {
                Service.Logger.WarnFormat("GameConstant [War Help Preparation {0}] is not formatted correctly: {1}", new object[]
                {
                    faction,
                    text
                });
                return;
            }
            base.PopulateBgTexture(array[0], "TexturePreparation");
            base.PopulateGrid(array, "GridPreparation", "ItemPreparation", "TextureItemPreparation", "LabelTitlePreparation", "LabelBodyPreparation");
        }
Пример #12
0
        public SquadWarInfoScreenRewardTab(SquadWarInfoScreen parent, UXCheckbox tabButton, UXElement topGroup) : base(parent, tabButton, topGroup)
        {
            FactionType faction = Service.CurrentPlayer.Faction;
            string      text    = (faction != FactionType.Rebel) ? GameConstants.WAR_HELP_REWARD_EMPIRE : GameConstants.WAR_HELP_REWARD_REBEL;

            string[] array = text.Split(new char[]
            {
                '|'
            });
            if (array.Length != 2)
            {
                Service.Logger.WarnFormat("GameConstant [War Help Reward {0}] is not formatted correctly: {1}", new object[]
                {
                    faction,
                    text
                });
                return;
            }
            base.PopulateBgTexture(array[0], "TextureReward");
            parent.GetElement <UXLabel>("LabelReward").Text = Service.Lang.Get(array[1], new object[0]);
        }
        public SquadWarInfoScreenWarBoardTab(SquadWarInfoScreen parent, UXCheckbox tabButton, UXElement topGroup) : base(parent, tabButton, topGroup)
        {
            FactionType faction = Service.Get <CurrentPlayer>().Faction;
            string      text    = (faction == FactionType.Rebel) ? GameConstants.WAR_HELP_BASEEDIT_REBEL : GameConstants.WAR_HELP_BASEEDIT_EMPIRE;

            string[] array = text.Split(new char[]
            {
                '|'
            });
            if (array.Length < 2)
            {
                Service.Get <StaRTSLogger>().WarnFormat("GameConstant [War Help BaseEdit {0}] is not formatted correctly: {1}", new object[]
                {
                    faction,
                    text
                });
                return;
            }
            base.PopulateBgTexture(array[0], "TextureWarBoard");
            base.PopulateGrid(array, "GridWarBoard", "ItemWarBoard", "TextureItemWarBoard", "LabelTitleWarBoard", "LabelBodyWarBoard");
        }
 protected override void SetupControls()
 {
     base.SetupControls();
     if (this.timerEndSeconds > 0)
     {
         Service.Get <ViewTimeEngine>().RegisterClockTimeObserver(this, 1f);
         this.labelTimer.Visible   = true;
         this.labelTimer.TextColor = this.timerColor;
         this.UpdateTimer();
     }
     base.GetElement <UXLabel>("LabelConfirmation").Text = this.lang.Get(this.checkboxTextID, new object[0]);
     this.checkbox                         = base.GetElement <UXCheckbox>("buttonConfirmation");
     this.checkbox.Visible                 = true;
     this.checkbox.Selected                = false;
     this.primaryButton.Visible            = !this.buttonOption2Enabled;
     this.buttonOption2.Visible            = this.buttonOption2Enabled;
     this.primary2OptionButton.Visible     = this.buttonOption2Enabled;
     this.secondary2OptionButton.Visible   = this.buttonOption2Enabled;
     this.primaryButton.OnClicked          = new UXButtonClickedDelegate(this.OnOKClicked);
     this.primary2OptionButton.OnClicked   = new UXButtonClickedDelegate(this.OnOKClicked);
     this.secondary2OptionButton.OnClicked = new UXButtonClickedDelegate(this.OnCancelClicked);
 }
Пример #15
0
        private void CreateBuildingTrayItem(BuildingTypeVO vo, int count)
        {
            UXElement  uXElement  = this.stashedBuildingsGrid.CloneTemplateItem(vo.Uid);
            UXCheckbox subElement = this.stashedBuildingsGrid.GetSubElement <UXCheckbox>(vo.Uid, "CheckboxStash");

            subElement.Tag        = vo.Uid;
            subElement.OnSelected = new UXCheckboxSelectedDelegate(this.OnStashedBuildingClicked);
            subElement.Selected   = false;
            uXElement.Tag         = vo;
            UXLabel subElement2 = this.stashedBuildingsGrid.GetSubElement <UXLabel>(vo.Uid, "LabelQuantityStash");

            subElement2.Tag  = vo.Uid;
            subElement2.Text = count.ToString();
            UXLabel subElement3 = this.stashedBuildingsGrid.GetSubElement <UXLabel>(vo.Uid, "LabelBldgLevelStash");

            subElement3.Text = LangUtils.GetLevelText(vo.Lvl);
            UXSprite        subElement4     = this.stashedBuildingsGrid.GetSubElement <UXSprite>(vo.Uid, "SpriteBldgStash");
            ProjectorConfig projectorConfig = ProjectorUtils.GenerateBuildingConfig(vo, subElement4);

            projectorConfig.AnimPreference = AnimationPreference.NoAnimation;
            ProjectorUtils.GenerateProjector(projectorConfig);
            this.stashedBuildingsGrid.AddItem(uXElement, vo.Lvl + vo.StashOrder);
        }
Пример #16
0
        public override void OnScreenLoaded()
        {
            this.chatFilterPanel                 = this.screen.GetElement <UXElement>("ChatFilterOptionsPanel");
            this.chatFilterPanel.Visible         = false;
            this.chatShowAllBtn                  = this.screen.GetElement <UXCheckbox>("BtnShowAll");
            this.chatShowAllBtn.Tag              = ChatFilterType.ShowAll;
            this.chatShowAllBtn.OnSelected       = new UXCheckboxSelectedDelegate(this.OnChatFilterSelected);
            this.chatShowMsgBtn                  = this.screen.GetElement <UXCheckbox>("BtnMessages");
            this.chatShowMsgBtn.Tag              = ChatFilterType.Messages;
            this.chatShowMsgBtn.OnSelected       = new UXCheckboxSelectedDelegate(this.OnChatFilterSelected);
            this.chatShowRequestsBtn             = this.screen.GetElement <UXCheckbox>("BtnRequests");
            this.chatShowRequestsBtn.Tag         = ChatFilterType.Requests;
            this.chatShowRequestsBtn.OnSelected  = new UXCheckboxSelectedDelegate(this.OnChatFilterSelected);
            this.chatShowReplaysBtn              = this.screen.GetElement <UXCheckbox>("BtnReplays");
            this.chatShowReplaysBtn.Tag          = ChatFilterType.Replays;
            this.chatShowReplaysBtn.OnSelected   = new UXCheckboxSelectedDelegate(this.OnChatFilterSelected);
            this.chatShowUpdatesBtn              = this.screen.GetElement <UXCheckbox>("BtnUpdates");
            this.chatShowUpdatesBtn.Tag          = ChatFilterType.Updates;
            this.chatShowUpdatesBtn.OnSelected   = new UXCheckboxSelectedDelegate(this.OnChatFilterSelected);
            this.chatOpenFiltersButton           = this.screen.GetElement <UXButton>("BtnFilterChat");
            this.chatOpenFiltersButton.OnClicked = new UXButtonClickedDelegate(this.OnChatFilterButton);
            this.chatOpenFiltersLabel            = this.screen.GetElement <UXLabel>("LabelBtnFilterChat");
            this.chatFilterBG                = this.screen.GetElement <UXSprite>("SpriteFilterBg");
            this.chatFilterBGNoVideo         = this.screen.GetElement <UXSprite>("SpriteFilterBg2");
            this.chatFilterBG.Visible        = false;
            this.chatFilterBGNoVideo.Visible = true;
            this.chatBadge     = JewelControl.Create(this.screen, "SocialChat");
            this.messageBadge  = JewelControl.Create(this.screen, "Messages");
            this.requestsBadge = JewelControl.Create(this.screen, "Requests");
            this.replaysBadge  = JewelControl.Create(this.screen, "Replays");
            this.updatesBadge  = JewelControl.Create(this.screen, "Updates");
            SquadController squadController = Service.SquadController;
            uint            squadPlayerPref = this.GetSquadPlayerPref("ChatFilterType", 1u);

            squadController.StateManager.SetSquadScreenChatFilterType((ChatFilterType)squadPlayerPref);
            this.RefreshView();
        }
Пример #17
0
        public void ShowBuffBaseOptions(UXCheckbox checkbox, SquadWarBuffBaseData data)
        {
            if (this.buffBaseData != null && this.buffBaseData == data)
            {
                return;
            }
            this.buffBaseData     = data;
            this.opponentState    = null;
            this.Visible          = true;
            this.transformToTrack = null;
            Vector3[] worldCorners = checkbox.GetWorldCorners();
            Vector3   position     = checkbox.Root.transform.position;

            if (worldCorners != null)
            {
                position.y = worldCorners[0].y;
            }
            this.rootTrans.position = position;
            this.animator.Play("Off", 0, 1f);
            this.animator.ResetTrigger("Off");
            this.animator.ResetTrigger("ShowTop");
            this.animator.SetTrigger("ShowBottom");
            SquadWarManager warManager = Service.Get <SquadController>().WarManager;
            string          empty      = string.Empty;

            if (warManager.CanScoutBuffBase(this.buffBaseData, ref empty))
            {
                this.scoutBuffBaseButton.VisuallyEnableButton();
                this.scoutBuffBaseLabel.TextColor = this.scoutBuffBaseLabel.OriginalTextColor;
            }
            else
            {
                this.scoutBuffBaseButton.VisuallyDisableButton();
                this.scoutBuffBaseLabel.TextColor = UXUtils.COLOR_LABEL_DISABLED;
            }
            this.PlayShowAudioClip();
        }
 protected void TabButtonOnSelect(UXCheckbox button, bool selected)
 {
     this.ShowContents(selected);
     this.parent.OnTabShown(this);
 }
Пример #19
0
        public override void Execute()
        {
            base.Execute();
            string elementName   = this.prepareArgs[0];
            string arrowPosition = "";

            if (this.prepareArgs.Length > 1)
            {
                arrowPosition = this.prepareArgs[1].ToLower();
            }
            EventManager eventManager = Service.Get <EventManager>();
            UXElement    uXElement    = Service.Get <ScreenController>().FindElement <UXElement>(elementName);

            this.highlightedButton   = (uXElement as UXButton);
            this.highlightedCheckbox = (uXElement as UXCheckbox);
            if (this.highlightedCheckbox != null && this.highlightedCheckbox.Selected && this.highlightedCheckbox.RadioGroup != 0)
            {
                this.parent.ChildComplete(this);
                return;
            }
            if (uXElement == null)
            {
                this.parent.ChildComplete(this);
                return;
            }
            StoreScreen highestLevelScreen = Service.Get <ScreenController>().GetHighestLevelScreen <StoreScreen>();

            if (highestLevelScreen != null && !highestLevelScreen.TransitionedIn)
            {
                eventManager.RegisterObserver(this, EventId.ScreenRefreshed, EventPriority.Default);
                eventManager.RegisterObserver(this, EventId.ScreenTransitionInComplete, EventPriority.Default);
                eventManager.RegisterObserver(this, EventId.StoreScreenReady, EventPriority.Default);
                return;
            }
            if (this.prepareArgs.Length == 3 && "persist".Equals(this.prepareArgs[2], 5))
            {
                this.parent.ChildComplete(this);
            }
            else if (this.highlightedCheckbox != null)
            {
                eventManager.RegisterObserver(this, EventId.ScreenRefreshed, EventPriority.Default);
                eventManager.RegisterObserver(this, EventId.ScreenTransitionInComplete, EventPriority.Default);
                Service.Get <UserInputInhibitor>().AllowOnly(this.highlightedCheckbox);
                if (this.highlightedCheckbox.OnSelected != new UXCheckboxSelectedDelegate(this.OnSelectedHighlighted))
                {
                    this.originalCheckboxSelected       = this.highlightedCheckbox.OnSelected;
                    this.highlightedCheckbox.OnSelected = new UXCheckboxSelectedDelegate(this.OnSelectedHighlighted);
                }
            }
            else
            {
                eventManager.RegisterObserver(this, EventId.ScreenRefreshed, EventPriority.Default);
                eventManager.RegisterObserver(this, EventId.ScreenTransitionInComplete, EventPriority.Default);
                Service.Get <UserInputInhibitor>().AllowOnly(this.highlightedButton);
                if (this.highlightedButton.OnClicked != new UXButtonClickedDelegate(this.OnClickedHighlighted))
                {
                    this.originalButtonClicked       = this.highlightedButton.OnClicked;
                    this.highlightedButton.OnClicked = new UXButtonClickedDelegate(this.OnClickedHighlighted);
                }
            }
            Service.Get <UXController>().MiscElementsManager.HighlightButton(uXElement, arrowPosition);
        }
Пример #20
0
        private void SetupGrid()
        {
            if (this.itemGrid != null)
            {
                return;
            }
            this.itemGrid = base.GetElement <UXGrid>("SwapTypeGrid");
            this.itemGrid.SetTemplateItem("SwapTypeTemplate");
            CurrentPlayer          currentPlayer          = Service.CurrentPlayer;
            FactionType            faction                = currentPlayer.Faction;
            StaticDataController   staticDataController   = Service.StaticDataController;
            BuildingUpgradeCatalog buildingUpgradeCatalog = Service.BuildingUpgradeCatalog;
            UnlockController       unlockController       = Service.UnlockController;

            foreach (BuildingTypeVO current in staticDataController.GetAll <BuildingTypeVO>())
            {
                if (current.Type == BuildingType.Turret && current.Faction == faction && current.StoreTab != StoreTab.NotInStore)
                {
                    BuildingTypeVO byLevel        = buildingUpgradeCatalog.GetByLevel(current.UpgradeGroup, this.buildingInfo.Lvl);
                    BuildingTypeVO buildingTypeVO = null;
                    bool           flag           = unlockController.IsUnlocked(current, 1, out buildingTypeVO);
                    if (flag || !byLevel.HideIfLocked)
                    {
                        StoreItemTag storeItemTag = new StoreItemTag();
                        storeItemTag.BuildingInfo = byLevel;
                        string    uid       = byLevel.Uid;
                        UXElement uXElement = this.itemGrid.CloneTemplateItem(uid);
                        uXElement.Tag            = storeItemTag;
                        storeItemTag.MainElement = this.itemGrid.GetSubElement <UXElement>(uid, "ItemInfoTurret");
                        UXLabel subElement = this.itemGrid.GetSubElement <UXLabel>(uid, "LabelItemInfoTurret");
                        subElement.Text                  = LangUtils.GetBuildingDescription(byLevel);
                        storeItemTag.InfoGroup           = this.itemGrid.GetSubElement <UXButton>(uid, "InfoTextTurret");
                        storeItemTag.InfoGroup.Visible   = false;
                        storeItemTag.InfoGroup.OnClicked = new UXButtonClickedDelegate(this.OnSwapInfoLabelButtonClicked);
                        storeItemTag.InfoGroup.Tag       = storeItemTag;
                        UXButton subElement2 = this.itemGrid.GetSubElement <UXButton>(uid, "BtnItemInfoTurret");
                        subElement2.OnClicked = new UXButtonClickedDelegate(this.OnSwapInfoButtonClicked);
                        subElement2.Tag       = storeItemTag;
                        UXSprite        subElement3     = this.itemGrid.GetSubElement <UXSprite>(uid, "SpriteItemImageTurret");
                        ProjectorConfig projectorConfig = ProjectorUtils.GenerateBuildingConfig(byLevel, subElement3);
                        projectorConfig.AnimPreference = AnimationPreference.NoAnimation;
                        ProjectorUtils.GenerateProjector(projectorConfig);
                        UXLabel subElement4 = this.itemGrid.GetSubElement <UXLabel>(uid, "LabelItemRequirement");
                        subElement4.Visible = !flag;
                        UXElement subElement5 = this.itemGrid.GetSubElement <UXElement>(uid, "CountAndBuildTime");
                        subElement5.Visible = flag;
                        if (flag)
                        {
                            int swapCredits    = byLevel.SwapCredits;
                            int swapMaterials  = byLevel.SwapMaterials;
                            int swapContraband = byLevel.SwapContraband;
                            UXUtils.SetupCostElements(this, "CostTurretSwap", uid, swapCredits, swapMaterials, swapContraband, 0, !flag, null, 150);
                            UXLabel subElement6 = this.itemGrid.GetSubElement <UXLabel>(uid, "LabelBuildTime");
                            subElement6.Text = GameUtils.GetTimeLabelFromSeconds(byLevel.SwapTime);
                            UXLabel subElement7 = this.itemGrid.GetSubElement <UXLabel>(uid, "LabelSwapItemCount");
                            subElement7.Text = string.Empty;
                        }
                        else if (buildingTypeVO != null)
                        {
                            subElement4.Text = this.lang.Get("BUILDING_REQUIREMENT", new object[]
                            {
                                buildingTypeVO.Lvl,
                                LangUtils.GetBuildingDisplayName(buildingTypeVO)
                            });
                            UXUtils.SetupCostElements(this, "CostTurretSwap", uid, 0, 0, 0, 0, !flag, this.lang.Get("s_Locked", new object[0]), 150);
                        }
                        UXCheckbox subElement8 = this.itemGrid.GetSubElement <UXCheckbox>(uid, "TurretItemCard");
                        subElement8.Enabled    = flag;
                        subElement8.OnSelected = new UXCheckboxSelectedDelegate(this.OnSwapItemCheckboxSelected);
                        subElement8.Selected   = (byLevel.Uid == this.buildingInfo.Uid);
                        subElement8.Tag        = storeItemTag;
                        if (subElement8.Selected)
                        {
                            this.OnSwapItemCheckboxSelected(subElement8, true);
                        }
                        this.itemGrid.AddItem(uXElement, byLevel.Order);
                    }
                }
            }
            this.itemGrid.RepositionItems();
        }
        public EatResponse OnEvent(EventId id, object cookie)
        {
            if (id != EventId.PreloadedAudioSuccess && id != EventId.PreloadedAudioFailure)
            {
                switch (id)
                {
                case EventId.WarBoardParticipantBuildingSelected:
                {
                    GameObject gameObject = (GameObject)cookie;
                    SquadWarParticipantState participantState = Service.Get <WarBoardBuildingController>().GetParticipantState(gameObject);
                    bool flag = this.flyout != null && this.flyout.IsShowingParticipantOptions(participantState);
                    if (flag)
                    {
                        Service.Get <WarBoardBuildingController>().DeselectBuilding();
                    }
                    else if (this.flyout != null)
                    {
                        this.flyout.ShowParticipantOptions(gameObject, participantState);
                    }
                    break;
                }

                case EventId.WarBoardBuffBaseBuildingSelected:
                {
                    UXCheckbox           uXCheckbox = (UXCheckbox)cookie;
                    SquadWarBuffBaseData data       = (SquadWarBuffBaseData)uXCheckbox.Tag;
                    bool flag2 = this.flyout != null && this.flyout.IsShowingBuffBaseOptions(data);
                    if (flag2)
                    {
                        if (this.flyout != null)
                        {
                            this.flyout.Hide();
                        }
                    }
                    else
                    {
                        if (this.flyout != null)
                        {
                            this.flyout.ShowBuffBaseOptions(uXCheckbox, data);
                        }
                        Service.Get <WarBoardBuildingController>().DeselectBuilding();
                    }
                    break;
                }

                case EventId.WarBoardBuildingDeselected:
                {
                    GameObject building = (GameObject)cookie;
                    SquadWarParticipantState participantState2 = Service.Get <WarBoardBuildingController>().GetParticipantState(building);
                    if ((participantState2 == null || this.flyout.IsShowingParticipantOptions(participantState2)) && this.flyout != null)
                    {
                        this.flyout.Hide();
                    }
                    break;
                }
                }
            }
            else
            {
                AudioTypeVO audioTypeVO = (AudioTypeVO)cookie;
                if (audioTypeVO != null && audioTypeVO.Uid == "sfx_ui_squadwar_warboard_open")
                {
                    this.WarBoardAudioLoadFinished();
                    Service.Get <EventManager>().UnregisterObserver(this, EventId.PreloadedAudioSuccess);
                    Service.Get <EventManager>().UnregisterObserver(this, EventId.PreloadedAudioFailure);
                }
            }
            return(EatResponse.NotEaten);
        }
Пример #22
0
        private void SetupTab(InventoryTab tab, string tabName)
        {
            UXCheckbox element = base.GetElement <UXCheckbox>(tabName);

            this.SetupTab(tab, element);
        }
Пример #23
0
 private void InvitesTabClicked(UXCheckbox box, bool selected)
 {
     base.TabClicked(selected, SocialTabs.Invites);
 }
Пример #24
0
 private void FeaturedTabClicked(UXCheckbox box, bool selected)
 {
     base.TabClicked(selected, SocialTabs.Featured);
 }
Пример #25
0
 private void SetupMemberSortButton(UXCheckbox memberSortCheckbox, SquadMemberSortType type)
 {
     memberSortCheckbox.Selected   = false;
     memberSortCheckbox.Tag        = type;
     memberSortCheckbox.OnSelected = new UXCheckboxSelectedDelegate(this.OnMemberSortOptionClicked);
 }
Пример #26
0
        protected override void InitButtons()
        {
            base.InitButtons();
            UXCheckbox element = base.GetElement <UXCheckbox>("BtnMusic");

            element.OnSelected = new UXCheckboxSelectedDelegate(this.OnMusicCheckboxSelected);
            element.Selected   = (PlayerSettings.GetMusicVolume() > 0f);
            element            = base.GetElement <UXCheckbox>("BtnSoundEffects");
            element.OnSelected = new UXCheckboxSelectedDelegate(this.OnSfxCheckboxSelected);
            element.Selected   = (PlayerSettings.GetSfxVolume() > 0f);
            UXButton element2 = base.GetElement <UXButton>("BtnLanguage");

            element2.OnClicked = new UXButtonClickedDelegate(this.OnLanguageButtonClicked);
            element2           = base.GetElement <UXButton>("BtnFacebookiOS");
            element2.OnClicked = new UXButtonClickedDelegate(this.OnFacebookButtonClicked);
            element2           = base.GetElement <UXButton>("BtnAbout");
            element2.OnClicked = new UXButtonClickedDelegate(this.OnAboutButtonClicked);
            element2           = base.GetElement <UXButton>("BtnHelp");
            element2.OnClicked = new UXButtonClickedDelegate(this.OnHelpButtonClicked);
            element2           = base.GetElement <UXButton>("BtnPrivacyPolicy");
            element2.OnClicked = new UXButtonClickedDelegate(this.OnPrivacyButtonClicked);
            element2           = base.GetElement <UXButton>("BtnTOS");
            element2.OnClicked = new UXButtonClickedDelegate(this.OnTermsButtonClicked);
            element2           = base.GetElement <UXButton>("BtnForums");
            if (GameConstants.FORUMS_ENABLED)
            {
                element2.OnClicked = new UXButtonClickedDelegate(this.OnForumsButtonClicked);
            }
            else
            {
                element2.Visible = false;
            }
            this.langBackButton            = base.GetElement <UXButton>("BtnBack");
            this.langBackButton.OnClicked  = new UXButtonClickedDelegate(this.OnBackButtonClicked);
            this.aboutBackButton           = base.GetElement <UXButton>("BtnBackAbout");
            this.aboutBackButton.OnClicked = new UXButtonClickedDelegate(this.OnBackButtonClicked);
            element2 = base.GetElement <UXButton>("BtnFactionSwap");
            if (GameUtils.HasUserFactionFlipped(Service.Get <CurrentPlayer>()) && Service.Get <CurrentPlayer>().NumIdentities > 1)
            {
                element2.OnClicked = new UXButtonClickedDelegate(this.OnFactionFlipButtonClicked);
                UXSprite    element3 = base.GetElement <UXSprite>("SpriteBkgBtnFactionSwap");
                FactionType faction  = Service.Get <CurrentPlayer>().Faction;
                if (faction != FactionType.Empire)
                {
                    if (faction == FactionType.Rebel)
                    {
                        element3.SpriteName = "btnEmpire";
                    }
                }
                else
                {
                    element3.SpriteName = "btnRebel";
                }
            }
            else
            {
                element2.Visible = false;
            }
            this.BackButtons.Add(this.langBackButton);
            this.BackButtons.Add(this.aboutBackButton);
        }
Пример #27
0
 private void SetupTab(InventoryTab tab, UXCheckbox tabButton)
 {
     tabButton.OnSelected = new UXCheckboxSelectedDelegate(this.OnTabCheckboxSelected);
     tabButton.Tag        = tab;
     this.tabs.Add(tabButton);
 }
Пример #28
0
        private void UpdateMissionItem(string itemUid, CampaignMissionVO missionType, bool selected)
        {
            UXSprite uXSprite = (!this.selectedCampaign.IsMiniCampaign()) ? this.missionGrid.GetSubElement <UXSprite>(itemUid, "SpriteObjectiveImage") : null;

            if (uXSprite != null)
            {
                if (missionType.Grind)
                {
                    uXSprite.SpriteName = "icoRecBattle";
                }
                else if (missionType.IsChallengeMission())
                {
                    uXSprite.SpriteName = "IcoMissions";
                }
                else if (missionType.IsCombatMission())
                {
                    uXSprite.SpriteName = ((missionType.MissionType != MissionType.Attack) ? "icoDefend" : "IcoAttack");
                }
                else if (missionType.HasPvpCondition() || missionType.MissionType == MissionType.Pvp)
                {
                    uXSprite.SpriteName = "IcoWar";
                }
                else
                {
                    uXSprite.SpriteName = "IcoBuild";
                }
            }
            UXCheckbox uXCheckbox = (!this.selectedCampaign.IsMiniCampaign()) ? this.missionGrid.GetSubElement <UXCheckbox>(itemUid, "ButtonObjectiveCard") : this.missionGrid.GetSubElement <UXCheckbox>(itemUid, "ButtonObjectiveCardDifficulty");

            uXCheckbox.Tag        = missionType;
            uXCheckbox.OnSelected = new UXCheckboxSelectedDelegate(this.OnMissionItemSelected);
            uXCheckbox.Selected   = selected;
            uXCheckbox.RadioGroup = 0;
            if (this.selectedCampaign.IsMiniCampaign())
            {
                UXLabel subElement = this.missionGrid.GetSubElement <UXLabel>(itemUid, "LabelDifficulty");
                subElement.Text    = LangUtils.GetMissionDifficultyLabel(itemUid);
                uXCheckbox.Visible = !base.Player.CampaignProgress.IsMissionLocked(missionType);
                return;
            }
            UXLabel subElement2 = this.missionGrid.GetSubElement <UXLabel>(itemUid, "LabelObjectiveNumber");

            subElement2.Text = missionType.UnlockOrder.ToString();
            UXSprite  subElement3 = this.missionGrid.GetSubElement <UXSprite>(itemUid, "SpriteMissionCheck");
            UXSprite  subElement4 = this.missionGrid.GetSubElement <UXSprite>(itemUid, "SpriteIcoMissionLocked");
            UXElement subElement5 = this.missionGrid.GetSubElement <UXElement>(itemUid, "ObjectiveStars");
            UXSlider  subElement6 = this.missionGrid.GetSubElement <UXSlider>(itemUid, "MissionSelectPbar");

            if (base.Player.CampaignProgress.IsMissionInProgress(missionType) && missionType.MissionType != MissionType.Pvp)
            {
                int num;
                int num2;
                base.Player.CampaignProgress.GetMissionProgress(missionType, out num, out num2);
                subElement6.Value = (float)num / (float)num2;
            }
            else
            {
                subElement6.Visible = false;
            }
            if (base.Player.CampaignProgress.IsMissionLocked(missionType))
            {
                uXCheckbox.Enabled  = false;
                uXSprite.Visible    = false;
                subElement3.Visible = false;
                subElement5.Visible = false;
                subElement6.Visible = false;
                subElement4.Visible = true;
                return;
            }
            subElement4.Visible = false;
            subElement5.Visible = true;
            int missionEarnedStars = base.Player.CampaignProgress.GetMissionEarnedStars(missionType);

            for (int i = 1; i <= missionEarnedStars; i++)
            {
                UXSprite subElement7 = this.missionGrid.GetSubElement <UXSprite>(itemUid, "SpriteStar" + i);
                subElement7.SpriteName = "CampaignStarOn";
            }
            if (missionType.Grind && base.Player.CampaignProgress.IsGrindComplete(missionType))
            {
                subElement3.Visible = true;
                uXSprite.Visible    = false;
            }
            else if (base.Player.CampaignProgress.IsMissionCompleted(missionType))
            {
                if (base.Player.CampaignProgress.IsMissionCollected(missionType))
                {
                    subElement3.Visible = true;
                    uXSprite.Visible    = false;
                }
                else
                {
                    uXSprite.Visible    = true;
                    subElement3.Visible = false;
                }
            }
            else
            {
                subElement3.Visible = false;
            }
        }
Пример #29
0
 protected void SquadFriendsTabClicked(UXCheckbox box, bool selected)
 {
     base.TabClicked(selected, SocialTabs.Friends);
 }
Пример #30
0
        protected void InitMemberList()
        {
            this.squadMemberGrid = this.screen.GetElement <UXGrid>("MemberGrid");
            this.squadMemberGrid.SetTemplateItem("MemberItem");
            this.squadMemberGrid.BypassLocalPositionOnAdd = true;
            this.squadMemberGrid.DupeOrdersAllowed        = true;
            this.squadMemberGrid.RepositionCallback       = new Action(this.RepositionFinished);
            this.squadMemberGrid.SetSortModeCustom();
            UXLabel element = this.screen.GetElement <UXLabel>("LabelMemberTitle");

            element.Text             = this.lang.Get("SQUAD_MEMBERS", new object[0]);
            this.memberSortMedalsBtn = this.screen.GetElement <UXCheckbox>("BtnMedals");
            this.SetupMemberSortButton(this.memberSortMedalsBtn, SquadMemberSortType.Medals);
            this.memberSortAttacksBtn = this.screen.GetElement <UXCheckbox>("BtnAttacksWon");
            this.SetupMemberSortButton(this.memberSortAttacksBtn, SquadMemberSortType.Attacks);
            this.memberSortDefensesBtn = this.screen.GetElement <UXCheckbox>("BtnDefensesWon");
            this.SetupMemberSortButton(this.memberSortDefensesBtn, SquadMemberSortType.Defenses);
            this.memberSortDontatedBtn = this.screen.GetElement <UXCheckbox>("BtnDonated");
            this.SetupMemberSortButton(this.memberSortDontatedBtn, SquadMemberSortType.Donated);
            this.memberSortReceivedBtn = this.screen.GetElement <UXCheckbox>("BtnReceived");
            this.SetupMemberSortButton(this.memberSortReceivedBtn, SquadMemberSortType.Received);
            this.memberSortActiveBtn = this.screen.GetElement <UXCheckbox>("BtnLastActive");
            this.SetupMemberSortButton(this.memberSortActiveBtn, SquadMemberSortType.Active);
            this.memberSortBox                = this.screen.GetElement <UXElement>("MemberFilterOptions");
            this.memberSortBox.Visible        = false;
            this.memberSortBtn                = this.screen.GetElement <UXButton>("BtnFilterMembers");
            this.memberSortBtn.OnClicked      = new UXButtonClickedDelegate(this.OnMemberSortOpenClicked);
            this.memberSortLabel              = this.screen.GetElement <UXLabel>("LabelBtnFilterMembers");
            this.groupStartWarBtns            = this.screen.GetElement <UXElement>("GroupStartWarBtns");
            this.btnStartWarConfirm           = this.screen.GetElement <UXButton>("BtnStartWarConfirm");
            this.btnStartWarConfirm.OnClicked = new UXButtonClickedDelegate(this.OnStartWarConfirm);
            this.btnCancelStartWar            = this.screen.GetElement <UXButton>("BtnCancelStartWar");
            this.btnCancelStartWar.OnClicked  = new UXButtonClickedDelegate(this.OnCancelStartWar);
            this.labelStartWarSelected        = this.screen.GetElement <UXLabel>("LabelStartWarSelected");
            this.labelBtnStartWarConfirm      = this.screen.GetElement <UXLabel>("LabelBtnStartWarConfirm");
            this.labelBtnStartWarConfirm.Text = this.lang.Get("WAR_LOOK_FOR_MATCH", new object[0]);
            this.labelBtnCancelStartWar       = this.screen.GetElement <UXLabel>("LabelBtnCancelStartWar");
            this.labelBtnCancelStartWar.Text  = this.lang.Get("CANCEL", new object[0]);
            this.curSortType = SquadMemberSortType.Medals;
            SquadController squadController = Service.SquadController;
            Squad           currentSquad    = squadController.StateManager.GetCurrentSquad();
            bool            flag            = currentSquad.Faction == FactionType.Empire;

            this.btnSameFaction               = this.screen.GetElement <UXButton>("BtnSameFactionMM");
            this.btnSameFaction.OnClicked     = new UXButtonClickedDelegate(this.OnSameFaction);
            this.btnInfoSameFaction           = this.screen.GetElement <UXButton>("BtnInfoSameFactionMM");
            this.btnInfoSameFaction.OnClicked = new UXButtonClickedDelegate(this.OnSameFactionInfo);
            string text;

            if (flag)
            {
                text = Service.Lang.Get("WAR_SAME_FACTION_CHECK_E", new object[0]);
            }
            else
            {
                text = Service.Lang.Get("WAR_SAME_FACTION_CHECK_R", new object[0]);
            }
            this.spriteCheckSameFaction         = this.screen.GetElement <UXSprite>("SpriteCheckBtnSameFactionMM");
            this.spriteCheckSameFaction.Visible = this.allowSameFaction;
            this.labelSameFaction      = this.screen.GetElement <UXLabel>("LabelSameFactionMM");
            this.labelSameFaction.Text = text;
            if (!GameConstants.WAR_ALLOW_SAME_FACTION_MATCHMAKING)
            {
                UXElement element2 = this.screen.GetElement <UXElement>("GroupSameFactionMM");
                element2.Visible = false;
            }
        }