Example #1
0
 public static void SquadMemberElementsSetup(UXGrid grid, SquadMemberElements elements, string id)
 {
     elements.ButtonContainer         = grid.GetSubElement <UXElement>(id, "ButtonContainer");
     elements.ButtonOne               = grid.GetSubElement <UXButton>(id, "Btn1");
     elements.ButtonOneLabel          = grid.GetSubElement <UXLabel>(id, "LabelBtn1");
     elements.ButtonTwo               = grid.GetSubElement <UXButton>(id, "Btn2");
     elements.ButtonTwoLabel          = grid.GetSubElement <UXLabel>(id, "LabelBtn2");
     elements.ButtonThree             = grid.GetSubElement <UXButton>(id, "Btn3");
     elements.ButtonThreeLabel        = grid.GetSubElement <UXLabel>(id, "LabelBtn3");
     elements.MemberInfoGroup         = grid.GetSubElement <UXElement>(id, "MemberInfo");
     elements.MemberNameLabel         = grid.GetSubElement <UXLabel>(id, "LabelMemberName");
     elements.MemberRankLabel         = grid.GetSubElement <UXLabel>(id, "LabelMemberRank");
     elements.MemberRoleLabel         = grid.GetSubElement <UXLabel>(id, "LabelMemberRole");
     elements.MemberScoreLabel        = grid.GetSubElement <UXLabel>(id, "LabelMemberScore");
     elements.TroopsDonatedLabel      = grid.GetSubElement <UXLabel>(id, "LabelTroopsDonated");
     elements.TroopsReceivedLabel     = grid.GetSubElement <UXLabel>(id, "LabelTroopsReceived");
     elements.RepInvestedLabel        = grid.GetSubElement <UXLabel>(id, "LabelMemberRepAmt");
     elements.VictoriesLabel          = grid.GetSubElement <UXLabel>(id, "LabelVictories");
     elements.TroopsLabel             = grid.GetSubElement <UXLabel>(id, "LabelTroops");
     elements.AttacksWonLabel         = grid.GetSubElement <UXLabel>(id, "LabelAttacksWon");
     elements.DefensesWonLabel        = grid.GetSubElement <UXLabel>(id, "LabelDefensesWon");
     elements.LastLoginTimeLabel      = grid.GetSubElement <UXLabel>(id, "LabelMemberLastLogin");
     elements.ConflictMedalsGroup     = grid.GetSubElement <UXElement>(id, "MedalInfo");
     elements.TournamentScoreLabel1   = grid.GetSubElement <UXLabel>(id, "LabelMemberTournamentScore01");
     elements.TournamentScoreSprite1  = grid.GetSubElement <UXSprite>(id, "SpriteMemberTournamentMedalIcon01");
     elements.TournamentScoreLabel2   = grid.GetSubElement <UXLabel>(id, "LabelMemberTournamentScore02");
     elements.TournamentScoreSprite2  = grid.GetSubElement <UXSprite>(id, "SpriteMemberTournamentMedalIcon02");
     elements.TournamentScoreLabel3   = grid.GetSubElement <UXLabel>(id, "LabelMemberTournamentScore03");
     elements.TournamentScoreSprite3  = grid.GetSubElement <UXSprite>(id, "SpriteMemberTournamentMedalIcon03");
     elements.PlanetBackgroundTexture = grid.GetSubElement <UXTexture>(id, "TexturePlanetBg");
     elements.GroupMemberSelect       = grid.GetSubElement <UXElement>(id, "BtnSelectMember");
     elements.SpriteMemberSelect      = grid.GetSubElement <UXSprite>(id, "SpriteCheckBtnSelectMember");
     elements.SpriteMoreOptions       = grid.GetSubElement <UXSprite>(id, "SpriteMoreOptions");
     elements.SpriteWarIcon           = grid.GetSubElement <UXSprite>(id, "SpriteWarIcon");
 }
Example #2
0
        private UXElement CreateSquadMemberElement(SquadMember squadMember)
        {
            string   text     = "member_" + squadMember.MemberID;
            UXButton uXButton = this.squadMemberGrid.CloneTemplateItem(text) as UXButton;

            this.squadMemberGrid.AddItem(uXButton, 0);
            uXButton.Tag       = squadMember;
            uXButton.OnClicked = new UXButtonClickedDelegate(this.MemberItemClicked);
            SquadMemberElements squadMemberElements = new SquadMemberElements();

            SquadScreenMembersView.SquadMemberElementsSetup(this.squadMemberGrid, squadMemberElements, text);
            squadMemberElements.ButtonContainer.Visible = false;
            squadMemberElements.ButtonContainer.InitTweenComponent();
            return(uXButton);
        }
Example #3
0
        private void MemberItemClicked(UXButton btn)
        {
            SquadController squadController = Service.SquadController;

            Service.EventManager.SendEvent(EventId.SquadMore, null);
            SquadMember         squadMember         = btn.Tag as SquadMember;
            string              id                  = "member_" + squadMember.MemberID;
            SquadMemberElements squadMemberElements = new SquadMemberElements();

            SquadScreenMembersView.SquadMemberElementsSetup(this.squadMemberGrid, squadMemberElements, id);
            if (Service.SquadController.WarManager.MatchMakingPrepMode)
            {
                if (squadMemberElements.SpriteMemberSelect.Visible && squadController.WarManager.WarPartyRemove(squadMember.MemberID))
                {
                    squadMemberElements.SpriteMemberSelect.Visible = false;
                }
                else if (!squadMemberElements.SpriteMemberSelect.Visible && squadController.WarManager.WarPartyAdd(squadMember))
                {
                    squadMemberElements.SpriteMemberSelect.Visible = true;
                }
                else if (!(bool)squadMemberElements.SpriteMemberSelect.Tag)
                {
                    string message = this.lang.Get("WAR_START_HQ_INELIGIBLE", new object[]
                    {
                        GameConstants.WAR_PARTICIPANT_MIN_LEVEL
                    });
                    AlertScreen.ShowModal(false, null, message, null, null, true);
                }
                this.screen.RefreshViews();
            }
            else
            {
                squadMemberElements.ButtonContainer.Visible = true;
                squadMemberElements.ButtonContainer.PlayTween(true);
            }
        }
Example #4
0
        private void UpdateSquadMember(SquadMember squadMember)
        {
            UXElement           squadMemberElement = this.GetSquadMemberElement(squadMember);
            string              id = "member_" + squadMember.MemberID;
            SquadMemberElements squadMemberElements = new SquadMemberElements();

            SquadScreenMembersView.SquadMemberElementsSetup(this.squadMemberGrid, squadMemberElements, id);
            this.SetPromoteDemoteOnButton(squadMember, squadMemberElements.ButtonOne, squadMemberElements.ButtonOneLabel);
            squadMemberElements.ButtonOne.Tag = squadMember;
            if (squadMember.Role == SquadRole.Owner)
            {
                squadMemberElements.ButtonOne.Enabled = false;
            }
            else
            {
                this.SetupButtonBasedOnRole(squadMemberElements.ButtonOne, squadMember, true);
            }
            CurrentPlayer   currentPlayer   = Service.CurrentPlayer;
            SquadController squadController = Service.SquadController;
            SquadWarManager warManager      = squadController.WarManager;
            bool            flag            = squadMember.MemberID == currentPlayer.PlayerId;
            int             num             = 0;
            int             num2            = 0;

            squadMemberElements.ButtonTwoLabel.Text = this.lang.Get("s_View", new object[0]);
            if (flag)
            {
                squadMemberElements.ButtonTwo.Enabled = false;
                num  = squadController.StateManager.NumTroopDonationsInSession;
                num2 = squadController.StateManager.NumRepDonatedInSession;
            }
            else
            {
                squadMemberElements.ButtonTwo.OnClicked = new UXButtonClickedDelegate(this.OnViewClicked);
                squadMemberElements.ButtonTwo.Tag       = squadMember;
            }
            squadMemberElements.ButtonThreeLabel.Text = this.lang.Get("s_Remove", new object[0]);
            squadMemberElements.ButtonThree.OnClicked = new UXButtonClickedDelegate(this.OnRemoveClicked);
            squadMemberElements.ButtonThree.Tag       = squadMember;
            this.SetupButtonBasedOnRole(squadMemberElements.ButtonThree, squadMember, false);
            squadMemberElements.MemberInfoGroup.Visible = true;
            squadMemberElements.MemberNameLabel.Text    = this.lang.Get("WAR_MEMBER_NAME", new object[]
            {
                squadMember.MemberName,
                squadMember.HQLevel
            });
            if (squadMemberElement != null)
            {
                squadMemberElements.MemberRankLabel.Text = (this.squadMemberGrid.GetSortedIndex(squadMemberElement) + 1).ToString();
            }
            squadMemberElements.MemberRoleLabel.Text = LangUtils.GetSquadRoleDisplayName(squadMember.Role);
            if (warManager.IsMemberInWarParty(squadMember.MemberID) || warManager.IsSquadMemberInWarOrMatchmaking(squadMember))
            {
                if (warManager.IsCurrentSquadMatchmaking())
                {
                    UXLabel expr_228 = squadMemberElements.MemberRoleLabel;
                    expr_228.Text += this.lang.Get("WAR_IN_MATCHMAKING", new object[0]);
                }
                else if (warManager.WarExists())
                {
                    UXLabel expr_265 = squadMemberElements.MemberRoleLabel;
                    expr_265.Text += this.lang.Get("WAR_IN_WAR", new object[0]);
                }
            }
            squadMemberElements.MemberScoreLabel.Text   = ((!(squadMember.MemberID == Service.CurrentPlayer.PlayerId)) ? this.lang.ThousandsSeparated(squadMember.Score) : this.lang.ThousandsSeparated(Service.CurrentPlayer.PlayerMedals));
            squadMemberElements.TroopsDonatedLabel.Text = this.lang.Get("TROOPS_DONATED", new object[]
            {
                this.lang.ThousandsSeparated(squadMember.TroopsDonated + num)
            });
            squadMemberElements.TroopsReceivedLabel.Text = this.lang.Get("TROOPS_RECEIVED", new object[]
            {
                this.lang.ThousandsSeparated(squadMember.TroopsReceived)
            });
            squadMemberElements.RepInvestedLabel.Text = this.lang.Get("REPUTATION_INVESTED", new object[]
            {
                this.lang.ThousandsSeparated(squadMember.ReputationInvested + num2)
            });
            squadMemberElements.VictoriesLabel.Text  = this.lang.Get("s_Victories", new object[0]);
            squadMemberElements.TroopsLabel.Text     = this.lang.Get("s_Troops", new object[0]);
            squadMemberElements.AttacksWonLabel.Text = this.lang.Get("ATTACKS_WON", new object[]
            {
                this.lang.ThousandsSeparated(squadMember.AttacksWon)
            });
            squadMemberElements.DefensesWonLabel.Text = this.lang.Get("DEFENSES_WON", new object[]
            {
                this.lang.ThousandsSeparated(squadMember.DefensesWon)
            });
            if (squadMember.MemberID != currentPlayer.PlayerId)
            {
                squadMemberElements.LastLoginTimeLabel.Text = ChatTimeConversionUtils.GetFormattedAgeSinceLogin(squadMember.LastLoginTime, this.lang);
            }
            else
            {
                squadMemberElements.LastLoginTimeLabel.Visible = false;
            }
            if (squadMember.TournamentScore != null && squadMember.TournamentScore.Count > 0)
            {
                squadMemberElements.ConflictMedalsGroup.Visible    = true;
                squadMemberElements.TournamentScoreLabel1.Visible  = false;
                squadMemberElements.TournamentScoreSprite1.Visible = false;
                squadMemberElements.TournamentScoreLabel2.Visible  = false;
                squadMemberElements.TournamentScoreSprite2.Visible = false;
                squadMemberElements.TournamentScoreLabel3.Visible  = false;
                squadMemberElements.TournamentScoreSprite3.Visible = false;
                int num3 = 0;
                foreach (KeyValuePair <string, int> current in squadMember.TournamentScore)
                {
                    if (num3 == 0)
                    {
                        this.UpdateTournamentScore(current, squadMemberElements.TournamentScoreLabel1, squadMemberElements.TournamentScoreSprite1);
                    }
                    else if (num3 == 1)
                    {
                        this.UpdateTournamentScore(current, squadMemberElements.TournamentScoreLabel2, squadMemberElements.TournamentScoreSprite2);
                    }
                    else if (num3 == 2)
                    {
                        this.UpdateTournamentScore(current, squadMemberElements.TournamentScoreLabel3, squadMemberElements.TournamentScoreSprite3);
                    }
                    num3++;
                }
            }
            else
            {
                squadMemberElements.ConflictMedalsGroup.Visible = false;
            }
            PlanetVO planetVO = null;

            if (!string.IsNullOrEmpty(squadMember.Planet))
            {
                planetVO = Service.StaticDataController.GetOptional <PlanetVO>(squadMember.Planet);
            }
            if (planetVO == null)
            {
                planetVO = Service.StaticDataController.GetOptional <PlanetVO>("planet1");
            }
            if (planetVO != null && squadMemberElements.PlanetBackgroundTexture != null)
            {
                squadMemberElements.PlanetBackgroundTexture.LoadTexture(planetVO.LeaderboardTileTexture, null);
            }
            if (Service.SquadController.WarManager.MatchMakingPrepMode)
            {
                bool flag2 = squadMember.HQLevel >= GameConstants.WAR_PARTICIPANT_MIN_LEVEL;
                if (flag2)
                {
                    squadMemberElements.SpriteMemberSelect.Tag     = true;
                    squadMemberElements.SpriteMemberSelect.Visible = warManager.IsMemberInWarParty(squadMember.MemberID);
                }
                else
                {
                    squadMemberElements.SpriteMemberSelect.Tag     = false;
                    squadMemberElements.SpriteMemberSelect.Visible = false;
                }
                squadMemberElements.GroupMemberSelect.Visible = true;
                squadMemberElements.SpriteMoreOptions.Visible = false;
            }
            else
            {
                squadMemberElements.GroupMemberSelect.Visible  = false;
                squadMemberElements.SpriteMemberSelect.Visible = false;
                squadMemberElements.SpriteMoreOptions.Visible  = true;
            }
            squadMemberElements.SpriteWarIcon.Visible = (squadMember.WarParty != 0);
            squadMemberElements.ButtonContainer.ResetPlayTweenTarget();
        }