public void init(string playerName, int userID, int rank, int points, bool votingAllowed, int numSpareVotes, int numReceivedVotes, int factionID, int yourVotes, int position, ParishVotePanel parent) { this.m_parent = parent; this.m_position = position; this.m_userID = userID; this.m_factionID = factionID; this.clearControls(); if ((position & 1) == 0) { this.backgroundImage.Image = (Image)GFXLibrary.lineitem_strip_02_light; } else { this.backgroundImage.Image = (Image)GFXLibrary.lineitem_strip_02_dark; } this.backgroundImage.Position = new Point(0, 0); base.addControl(this.backgroundImage); this.Size = this.backgroundImage.Size; this.voteButton.ImageNorm = (Image)GFXLibrary.parishwall_button_vote_checked_normal; this.voteButton.ImageOver = (Image)GFXLibrary.parishwall_button_vote_checked_over; this.voteButton.Position = new Point(8, 4); this.voteButton.Text.Text = SK.Text("GENERIC_Vote", "Vote"); this.voteButton.Text.Color = ARGBColors.Black; this.voteButton.Text.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.voteButton.setClickDelegate(new CustomSelfDrawPanel.CSDControl.CSD_ClickDelegate(this.lineClicked), "ParishVotePanel_vote"); this.backgroundImage.addControl(this.voteButton); if (yourVotes > 0) { this.voteButton.Enabled = true; } else { this.voteButton.Enabled = false; } NumberFormatInfo nFI = GameEngine.NFI; int num = 0; if (factionID < 0) { this.factionName.Text = ""; } else { FactionData data = GameEngine.Instance.World.getFaction(factionID); if (data == null) { this.factionName.Text = ""; } else { this.factionName.Text = data.factionNameAbrv; int houseID = data.houseID; if (houseID > 0) { this.houseImage.Image = (Image)GFXLibrary.house_flag_001_small; switch (houseID) { case 1: this.houseImage.Image = (Image)GFXLibrary.house_flag_001_small; break; case 2: this.houseImage.Image = (Image)GFXLibrary.house_flag_002_small; break; case 3: this.houseImage.Image = (Image)GFXLibrary.house_flag_003_small; break; case 4: this.houseImage.Image = (Image)GFXLibrary.house_flag_004_small; break; case 5: this.houseImage.Image = (Image)GFXLibrary.house_flag_005_small; break; case 6: this.houseImage.Image = (Image)GFXLibrary.house_flag_006_small; break; case 7: this.houseImage.Image = (Image)GFXLibrary.house_flag_007_small; break; case 8: this.houseImage.Image = (Image)GFXLibrary.house_flag_008_small; break; case 9: this.houseImage.Image = (Image)GFXLibrary.house_flag_009_small; break; case 10: this.houseImage.Image = (Image)GFXLibrary.house_flag_010_small; break; case 11: this.houseImage.Image = (Image)GFXLibrary.house_flag_011_small; break; case 12: this.houseImage.Image = (Image)GFXLibrary.house_flag_012_small; break; case 13: this.houseImage.Image = (Image)GFXLibrary.house_flag_013_small; break; case 14: this.houseImage.Image = (Image)GFXLibrary.house_flag_014_small; break; case 15: this.houseImage.Image = (Image)GFXLibrary.house_flag_015_small; break; case 0x10: this.houseImage.Image = (Image)GFXLibrary.house_flag_016_small; break; case 0x11: this.houseImage.Image = (Image)GFXLibrary.house_flag_017_small; break; case 0x12: this.houseImage.Image = (Image)GFXLibrary.house_flag_018_small; break; case 0x13: this.houseImage.Image = (Image)GFXLibrary.house_flag_019_small; break; case 20: this.houseImage.Image = (Image)GFXLibrary.house_flag_020_small; break; } this.houseImage.Position = new Point(0x179, 5); this.houseImage.setClickDelegate(new CustomSelfDrawPanel.CSDControl.CSD_ClickDelegate(this.factionClick)); this.backgroundImage.addControl(this.houseImage); num = 0x20; } } } this.factionName.Color = ARGBColors.Black; this.factionName.Position = new Point(0x179 + num, 0); this.factionName.Size = new Size(210, this.backgroundImage.Height); this.factionName.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.factionName.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; if (factionID >= 0) { this.factionName.setClickDelegate(new CustomSelfDrawPanel.CSDControl.CSD_ClickDelegate(this.factionClick)); } this.backgroundImage.addControl(this.factionName); this.personName.Text = playerName; this.personName.Color = ARGBColors.Black; this.personName.Position = new Point(0x88, 0); this.personName.Size = new Size(0xe1, this.backgroundImage.Height); this.personName.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.personName.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; this.personName.setClickDelegate(new CustomSelfDrawPanel.CSDControl.CSD_ClickDelegate(this.playerClick), "ParishVotePanel_user"); this.backgroundImage.addControl(this.personName); this.votesLabel.Text = numReceivedVotes.ToString("N", nFI); this.votesLabel.Color = ARGBColors.Black; this.votesLabel.Position = new Point(0x27b, 0); this.votesLabel.Size = new Size(150, this.backgroundImage.Height); this.votesLabel.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.votesLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; this.backgroundImage.addControl(this.votesLabel); this.shieldImage.Image = GameEngine.Instance.World.getWorldShield(userID, 0x19, 0x1c); if (this.shieldImage.Image != null) { this.shieldImage.Position = new Point(0x6a, 1); this.shieldImage.setClickDelegate(new CustomSelfDrawPanel.CSDControl.CSD_ClickDelegate(this.playerClick)); this.backgroundImage.addControl(this.shieldImage); } base.invalidate(); }
public void init(bool resized) { int villageID = InterfaceMgr.Instance.getSelectedMenuVillage(); this.m_currentVillage = villageID; int parishID = GameEngine.Instance.World.getParishFromVillageID(villageID); int height = base.Height; instance = this; base.clearControls(); this.headerImage.Size = new Size(base.Width, 40); this.headerImage.Position = new Point(0, 0); base.addControl(this.headerImage); this.headerImage.Create((Image)GFXLibrary.mail2_titlebar_left, (Image)GFXLibrary.mail2_titlebar_middle, (Image)GFXLibrary.mail2_titlebar_right); this.backgroundImage.Size = new Size(base.Width, height - 40); this.backgroundImage.Position = new Point(0, 40); base.addControl(this.backgroundImage); this.backgroundImage.Create((Image)GFXLibrary.mail2_mail_panel_upper_left, (Image)GFXLibrary.mail2_mail_panel_upper_middle, (Image)GFXLibrary.mail2_mail_panel_upper_right, (Image)GFXLibrary.mail2_mail_panel_middle_left, (Image)GFXLibrary.mail2_mail_panel_middle_middle, (Image)GFXLibrary.mail2_mail_panel_middle_right, (Image)GFXLibrary.mail2_mail_panel_lower_left, (Image)GFXLibrary.mail2_mail_panel_lower_middle, (Image)GFXLibrary.mail2_mail_panel_lower_right); CustomSelfDrawPanel.WikiLinkControl.init(this.backgroundImage, 15, new Point(base.Width - 0x2c, 3)); this.headerLabelsImage.Size = new Size((base.Width - 0x19) - 0x17, 0x1c); this.headerLabelsImage.Position = new Point(0x19, 0x81); this.backgroundImage.addControl(this.headerLabelsImage); this.headerLabelsImage.Create((Image)GFXLibrary.mail2_field_bar_mail_left, (Image)GFXLibrary.mail2_field_bar_mail_middle, (Image)GFXLibrary.mail2_field_bar_mail_right); this.divider1Image.Image = (Image)GFXLibrary.mail2_field_bar_mail_divider; this.divider1Image.Position = new Point(0x5f, 0); this.headerLabelsImage.addControl(this.divider1Image); this.divider2Image.Image = (Image)GFXLibrary.mail2_field_bar_mail_divider; this.divider2Image.Position = new Point(0x16e, 0); this.headerLabelsImage.addControl(this.divider2Image); this.divider3Image.Image = (Image)GFXLibrary.mail2_field_bar_mail_divider; this.divider3Image.Position = new Point(0x273, 0); this.headerLabelsImage.addControl(this.divider3Image); this.parishNameLabel.Text = GameEngine.Instance.World.getParishName(parishID); this.parishNameLabel.Color = ARGBColors.White; this.parishNameLabel.DropShadowColor = ARGBColors.Black; this.parishNameLabel.Position = new Point(20, 0); this.parishNameLabel.Size = new Size(base.Width - 40, 40); this.parishNameLabel.Font = FontManager.GetFont("Arial", 18f, FontStyle.Regular); this.parishNameLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; this.headerImage.addControl(this.parishNameLabel); this.illustrationImage.Image = (Image)GFXLibrary.parishwall_village_illlustration_01; this.illustrationImage.Position = new Point(0x11, 5); this.backgroundImage.addControl(this.illustrationImage); this.stewardLabel.Text = SK.Text("ParishWallPanel_Steward", "Steward") + " : "; this.stewardLabel.Color = ARGBColors.Black; this.stewardLabel.Position = new Point(5, 5); this.stewardLabel.Size = new Size(this.illustrationImage.Width - 6, 30); this.stewardLabel.Font = FontManager.GetFont("Arial", 12f, FontStyle.Regular); this.stewardLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.TOP_LEFT; this.illustrationImage.addControl(this.stewardLabel); this.proclamationButton.ImageNorm = (Image)GFXLibrary.misc_button_blue_210wide_normal; this.proclamationButton.ImageOver = (Image)GFXLibrary.misc_button_blue_210wide_over; this.proclamationButton.ImageClick = (Image)GFXLibrary.misc_button_blue_210wide_pushed; this.proclamationButton.Position = new Point(base.Width - 220, 7); this.proclamationButton.Text.Text = SK.Text("Capitials_Proclamation", "Send Proclamation"); this.proclamationButton.Text.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_CENTER; this.proclamationButton.Text.Font = FontManager.GetFont("Arial", 9f, FontStyle.Bold); this.proclamationButton.TextYOffset = -3; this.proclamationButton.Text.Color = ARGBColors.Black; this.proclamationButton.setClickDelegate(new CustomSelfDrawPanel.CSDControl.CSD_ClickDelegate(this.sendProclamation)); this.proclamationButton.CustomTooltipID = 0x1068; this.proclamationButton.Visible = false; this.headerImage.addControl(this.proclamationButton); this.proclamationLabel.Text = ""; this.proclamationLabel.Color = ARGBColors.White; this.proclamationLabel.DropShadowColor = ARGBColors.Black; this.proclamationLabel.Position = new Point(20, 0); this.proclamationLabel.Size = new Size((base.Width - 40) - 220, 40); this.proclamationLabel.Font = FontManager.GetFont("Arial", 8f, FontStyle.Regular); this.proclamationLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_RIGHT; this.proclamationLabel.Visible = false; this.headerImage.addControl(this.proclamationLabel); this.wallInfoImage.Size = new Size(440, 0x55); this.wallInfoImage.Position = new Point(460, 20); this.backgroundImage.addControl(this.wallInfoImage); this.wallInfoImage.Create((Image)GFXLibrary.mail2_rounded_rectangle_tan_upper_left, (Image)GFXLibrary.mail2_rounded_rectangle_tan_upper_middle, (Image)GFXLibrary.mail2_rounded_rectangle_tan_upper_right, (Image)GFXLibrary.mail2_rounded_rectangle_tan_middle_left, (Image)GFXLibrary.mail2_rounded_rectangle_tan_middle_middle, (Image)GFXLibrary.mail2_rounded_rectangle_tan_middle_right, (Image)GFXLibrary.mail2_rounded_rectangle_tan_bottom_left, (Image)GFXLibrary.mail2_rounded_rectangle_tan_bottom_middle, (Image)GFXLibrary.mail2_rounded_rectangle_tan_bottom_right); this.wallScrollArea.Position = new Point(0x19, 0x9e); this.wallScrollArea.Size = new Size(0x393, height - 0xd4); this.wallScrollArea.ClipRect = new Rectangle(new Point(0, 0), new Size(0x393, height - 0xd4)); this.backgroundImage.addControl(this.wallScrollArea); int num1 = this.wallScrollBar.Value; this.wallScrollBar.Position = new Point(0x3af, 0x9e); this.wallScrollBar.Size = new Size(0x18, height - 0xd4); this.backgroundImage.addControl(this.wallScrollBar); this.wallScrollBar.Value = 0; this.wallScrollBar.Max = 100; this.wallScrollBar.NumVisibleLines = 0x19; this.wallScrollBar.Create(null, null, null, (Image)GFXLibrary._24wide_thumb_top, (Image)GFXLibrary._24wide_thumb_middle, (Image)GFXLibrary._24wide_thumb_bottom); this.wallScrollBar.setValueChangeDelegate(new CustomSelfDrawPanel.CSDControl.CSD_ValueChangedDelegate(this.wallScrollBarMoved)); this.votesAvailableLabel.Text = SK.Text("GENERIC_Votes_Available", "Votes Available") + " :"; this.votesAvailableLabel.Color = ARGBColors.Black; this.votesAvailableLabel.Position = new Point(0x1f, 12); this.votesAvailableLabel.Size = new Size(300, 40); this.votesAvailableLabel.Font = FontManager.GetFont("Arial", 18f, FontStyle.Regular); this.votesAvailableLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.TOP_LEFT; this.wallInfoImage.addControl(this.votesAvailableLabel); this.votesAvailableLabelValue.Text = "0"; this.votesAvailableLabelValue.Color = ARGBColors.Black; this.votesAvailableLabelValue.Position = new Point(0x133, 12); this.votesAvailableLabelValue.Size = new Size(100, 40); this.votesAvailableLabelValue.Font = FontManager.GetFont("Arial", 18f, FontStyle.Regular); this.votesAvailableLabelValue.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.TOP_RIGHT; this.votesAvailableLabelValue.Visible = true; this.wallInfoImage.addControl(this.votesAvailableLabelValue); this.voteCapLabel.Text = SK.Text("ParishPanel_Current_Vote_cap", "Current Vote Cap") + " :"; this.voteCapLabel.Color = ARGBColors.Black; this.voteCapLabel.Position = new Point(0x1f, 0x2a); this.voteCapLabel.Size = new Size(300, 40); this.voteCapLabel.Font = FontManager.GetFont("Arial", 18f, FontStyle.Regular); this.voteCapLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.TOP_LEFT; this.voteCapLabel.Visible = true; this.wallInfoImage.addControl(this.voteCapLabel); this.voteCapLabelValue.Text = "0"; this.voteCapLabelValue.Color = ARGBColors.Black; this.voteCapLabelValue.Position = new Point(0x133, 0x2a); this.voteCapLabelValue.Size = new Size(100, 40); this.voteCapLabelValue.Font = FontManager.GetFont("Arial", 18f, FontStyle.Regular); this.voteCapLabelValue.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.TOP_RIGHT; this.voteCapLabelValue.Visible = true; this.wallInfoImage.addControl(this.voteCapLabelValue); this.voteLabel.Text = SK.Text("GENERIC_Vote", "Vote"); this.voteLabel.Color = ARGBColors.Black; this.voteLabel.Position = new Point(15, -2); this.voteLabel.Size = new Size(0x51, this.headerLabelsImage.Height); this.voteLabel.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.voteLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; this.headerLabelsImage.addControl(this.voteLabel); this.eligibleLabel.Text = SK.Text("GENERIC_Eligible_Candidates", "Eligible Candidates"); this.eligibleLabel.Color = ARGBColors.Black; this.eligibleLabel.Position = new Point(0x6a, -2); this.eligibleLabel.Size = new Size(250, this.headerLabelsImage.Height); this.eligibleLabel.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.eligibleLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; this.headerLabelsImage.addControl(this.eligibleLabel); this.FactionsLabel.Text = SK.Text("STATS_CATEGORY_TITLE_FACTION", "Faction"); this.FactionsLabel.Color = ARGBColors.Black; this.FactionsLabel.Position = new Point(0x178, -2); this.FactionsLabel.Size = new Size(0xf7, this.headerLabelsImage.Height); this.FactionsLabel.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.FactionsLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; this.headerLabelsImage.addControl(this.FactionsLabel); this.votesReceivedLabel.Text = SK.Text("GENERIC_Votes_Received", "Votes Received"); this.votesReceivedLabel.Color = ARGBColors.Black; this.votesReceivedLabel.Position = new Point(0x27b, -2); this.votesReceivedLabel.Size = new Size(300, this.headerLabelsImage.Height); this.votesReceivedLabel.Font = FontManager.GetFont("Arial", 9f, FontStyle.Regular); this.votesReceivedLabel.Alignment = CustomSelfDrawPanel.CSD_Text_Alignment.CENTER_LEFT; this.headerLabelsImage.addControl(this.votesReceivedLabel); if (resized) { this.addPlayers(); return; } StoredParishInfo info = (StoredParishInfo)this.parishList[parishID]; bool flag = false; if (info != null) { TimeSpan span = (TimeSpan)(DateTime.Now - info.m_lastUpdateTime); if ((span.TotalMinutes <= 2.0) && (info.lastReturnData != null)) { goto Label_0C6A; } } flag = true; Label_0C6A: this.m_currentVillage = villageID; if (this.currentParish != parishID) { this.parishMembers.Clear(); this.currentLeaderID = -1; this.electedLeaderID = -1; this.currentLeaderName = ""; this.electedLeaderName = ""; this.m_userIDOnCurrent = -1; } this.currentParish = parishID; if (flag) { this.voteCap = 0x98967f; RemoteServices.Instance.set_GetParishMembersList_UserCallBack(new RemoteServices.GetParishMembersList_UserCallBack(this.getParishMembersListCallback)); RemoteServices.Instance.GetParishMembersList(this.m_currentVillage); } this.nextElectionTime = DateTime.MinValue; this.votingAllowed = false; this.addPlayers(); if (!flag) { this.getParishMembersListCallback(info.lastReturnData); } }