fix: Converts barkeep and house foundation commit gumps to dynamic (#2099)

This commit is contained in:
Kamron Batman 2025-01-27 21:36:56 -08:00 • committed by GitHub
parent cbae44ef20
commit 1264302ee0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 217 additions and 200 deletions

View file

@ -385,7 +385,7 @@ namespace Server.Mobiles
return; return;
} }
from.SendGump(new BarkeeperGump(from, this)); from.SendGump(new BarkeeperGump(this));
} }
public void Dismiss() public void Dismiss()
@ -496,7 +496,7 @@ namespace Server.Mobiles
public void BeginChangeTitle(Mobile from) public void BeginChangeTitle(Mobile from)
{ {
from.SendGump(new BarkeeperTitleGump(from, this)); from.SendGump(new BarkeeperTitleGump(this));
} }
public void EndChangeTitle(Mobile from, string title, bool vendor) public void EndChangeTitle(Mobile from, string title, bool vendor)
@ -508,7 +508,7 @@ namespace Server.Mobiles
public void CancelChangeTitle(Mobile from) public void CancelChangeTitle(Mobile from)
{ {
from.SendGump(new BarkeeperGump(from, this)); from.SendGump(new BarkeeperGump(this));
} }
public void BeginChangeAppearance(Mobile from) public void BeginChangeAppearance(Mobile from)
@ -678,10 +678,9 @@ namespace Server.Mobiles
new(1078495, null) // No Title new(1078495, null) // No Title
}; };
private static int _pageCount = (_entries.Length + 19) / 20; private static readonly int _pageCount = (_entries.Length + 19) / 20;
private readonly PlayerBarkeeper _barkeeper; private readonly PlayerBarkeeper _barkeeper;
private readonly Mobile _from;
public override bool Singleton => true; public override bool Singleton => true;
@ -695,11 +694,7 @@ namespace Server.Mobiles
} }
} }
public BarkeeperTitleGump(Mobile from, PlayerBarkeeper barkeeper) : base(0, 0) public BarkeeperTitleGump(PlayerBarkeeper barkeeper) : base(0, 0) => _barkeeper = barkeeper;
{
_from = from;
_barkeeper = barkeeper;
}
private static void RenderBackground(ref StaticGumpBuilder builder) private static void RenderBackground(ref StaticGumpBuilder builder)
{ {
@ -815,16 +810,18 @@ namespace Server.Mobiles
return; return;
} }
var from = sender.Mobile;
if (buttonID-- <= 0) if (buttonID-- <= 0)
{ {
_barkeeper.CancelChangeTitle(_from); _barkeeper.CancelChangeTitle(from);
return; return;
} }
if (buttonID < _entries.Length) if (buttonID < _entries.Length)
{ {
var entry = _entries[buttonID]; var entry = _entries[buttonID];
_barkeeper.EndChangeTitle(_from, entry.Title, entry.Vendor); _barkeeper.EndChangeTitle(from, entry.Title, entry.Vendor);
} }
} }
@ -843,243 +840,249 @@ namespace Server.Mobiles
} }
} }
public class BarkeeperGump : Gump public class BarkeeperGump : DynamicGump
{ {
private readonly PlayerBarkeeper m_Barkeeper; private readonly PlayerBarkeeper _barkeeper;
private readonly Mobile m_From;
public override bool Singleton => true; public override bool Singleton => true;
public BarkeeperGump(Mobile from, PlayerBarkeeper barkeeper) : base(0, 0) public static void DisplayTo(Mobile from, PlayerBarkeeper barkeeper)
{ {
m_From = from;
m_Barkeeper = barkeeper;
from.CloseGump<BarkeeperTitleGump>(); from.CloseGump<BarkeeperTitleGump>();
from.SendGump(new BarkeeperGump(barkeeper));
RenderBackground();
RenderCategories();
RenderMessageManagement();
RenderDismissConfirmation();
RenderMessageManagement_Message_AddOrChange();
RenderMessageManagement_Message_Remove();
RenderMessageManagement_Tip_AddOrChange();
RenderMessageManagement_Tip_Remove();
RenderAppearanceCategories();
} }
public void RenderBackground() public BarkeeperGump(PlayerBarkeeper barkeeper) : base(0, 0)
{ {
AddPage(0); _barkeeper = barkeeper;
AddBackground(30, 40, 585, 410, 5054);
AddImage(30, 40, 9251);
AddImage(180, 40, 9251);
AddImage(30, 40, 9253);
AddImage(30, 130, 9253);
AddImage(598, 40, 9255);
AddImage(598, 130, 9255);
AddImage(30, 433, 9257);
AddImage(180, 433, 9257);
AddImage(30, 40, 9250);
AddImage(598, 40, 9252);
AddImage(598, 433, 9258);
AddImage(30, 433, 9256);
AddItem(30, 40, 6816);
AddItem(30, 125, 6817);
AddItem(30, 233, 6817);
AddItem(30, 341, 6817);
AddItem(580, 40, 6814);
AddItem(588, 125, 6815);
AddItem(588, 233, 6815);
AddItem(588, 341, 6815);
AddBackground(183, 25, 280, 30, 5054);
AddImage(180, 25, 10460);
AddImage(434, 25, 10460);
AddImage(560, 20, 1417);
AddHtml(223, 32, 200, 40, "BARKEEP CUSTOMIZATION MENU");
AddBackground(243, 433, 150, 30, 5054);
AddImage(240, 433, 10460);
AddImage(375, 433, 10460);
} }
public void RenderCategories() protected override void BuildLayout(ref DynamicGumpBuilder builder)
{ {
AddPage(1); RenderBackground(ref builder);
RenderCategories(ref builder);
AddButton(130, 120, 4005, 4007, 0, GumpButtonType.Page, 2); RenderMessageManagement(ref builder);
AddHtml(170, 120, 200, 40, "Message Control"); RenderDismissConfirmation(ref builder);
RenderMessageManagement_Message_AddOrChange(ref builder);
AddButton(130, 200, 4005, 4007, 0, GumpButtonType.Page, 8); RenderMessageManagement_Message_Remove(ref builder);
AddHtml(170, 200, 200, 40, "Customize your barkeep"); RenderMessageManagement_Tip_AddOrChange(ref builder);
RenderMessageManagement_Tip_Remove(ref builder);
AddButton(130, 280, 4005, 4007, 0, GumpButtonType.Page, 3); RenderAppearanceCategories(ref builder);
AddHtml(170, 280, 200, 40, "Dismiss your barkeep");
AddButton(338, 437, 4014, 4016, 0);
AddHtml(290, 440, 35, 40, "Back");
AddItem(574, 43, 5360);
} }
public void RenderMessageManagement() public static void RenderBackground(ref DynamicGumpBuilder builder)
{ {
AddPage(2); builder.AddPage();
AddButton(130, 120, 4005, 4007, 0, GumpButtonType.Page, 4); builder.AddBackground(30, 40, 585, 410, 5054);
AddHtml(170, 120, 380, 20, "Add or change a message and keyword");
AddButton(130, 200, 4005, 4007, 0, GumpButtonType.Page, 5); builder.AddImage(30, 40, 9251);
AddHtml(170, 200, 380, 20, "Remove a message and keyword from your barkeep"); builder.AddImage(180, 40, 9251);
builder.AddImage(30, 40, 9253);
builder.AddImage(30, 130, 9253);
builder.AddImage(598, 40, 9255);
builder.AddImage(598, 130, 9255);
builder.AddImage(30, 433, 9257);
builder.AddImage(180, 433, 9257);
builder.AddImage(30, 40, 9250);
builder.AddImage(598, 40, 9252);
builder.AddImage(598, 433, 9258);
builder.AddImage(30, 433, 9256);
AddButton(130, 280, 4005, 4007, 0, GumpButtonType.Page, 6); builder.AddItem(30, 40, 6816);
AddHtml(170, 280, 380, 20, "Add or change your barkeeper's tip message"); builder.AddItem(30, 125, 6817);
builder.AddItem(30, 233, 6817);
builder.AddItem(30, 341, 6817);
builder.AddItem(580, 40, 6814);
builder.AddItem(588, 125, 6815);
builder.AddItem(588, 233, 6815);
builder.AddItem(588, 341, 6815);
AddButton(130, 360, 4005, 4007, 0, GumpButtonType.Page, 7); builder.AddBackground(183, 25, 280, 30, 5054);
AddHtml(170, 360, 380, 20, "Delete your barkeepers tip message");
AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 1); builder.AddImage(180, 25, 10460);
AddHtml(290, 440, 35, 40, "Back"); builder.AddImage(434, 25, 10460);
builder.AddImage(560, 20, 1417);
AddItem(580, 46, 4030); builder.AddHtmlLocalized(223, 32, 200, 40, 1078366); // BARKEEP CUSTOMIZATION MENU
builder.AddBackground(243, 433, 150, 30, 5054);
builder.AddImage(240, 433, 10460);
builder.AddImage(375, 433, 10460);
} }
public void RenderDismissConfirmation() public static void RenderCategories(ref DynamicGumpBuilder builder)
{ {
AddPage(3); builder.AddPage(1);
AddHtml(170, 160, 380, 20, "Are you sure you want to dismiss your barkeeper?"); builder.AddButton(130, 120, 4005, 4007, 0, GumpButtonType.Page, 2);
builder.AddHtmlLocalized(170, 120, 200, 40, 1078352); // Message Control
AddButton(205, 280, 4005, 4007, GetButtonID(0, 0)); builder.AddButton(130, 200, 4005, 4007, 0, GumpButtonType.Page, 8);
AddHtml(240, 280, 100, 20, @"Yes"); builder.AddHtmlLocalized(170, 200, 200, 40, 1078353); // Customize your barkeep
AddButton(395, 280, 4005, 4007, 0); builder.AddButton(130, 280, 4005, 4007, 0, GumpButtonType.Page, 3);
AddHtml(430, 280, 100, 20, "No"); builder.AddHtmlLocalized(170, 280, 200, 40, 1078354); // Dismiss your barkeep
AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 1); builder.AddButton(338, 437, 4014, 4016, 0);
AddHtml(290, 440, 35, 40, "Back"); builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
AddItem(574, 43, 5360); builder.AddItem(574, 43, 5360);
AddItem(584, 34, 6579);
} }
public void RenderMessageManagement_Message_AddOrChange() public static void RenderMessageManagement(ref DynamicGumpBuilder builder)
{ {
AddPage(4); builder.AddPage(2);
AddHtml(250, 60, 500, 25, "Add or change a message"); builder.AddButton(130, 120, 4005, 4007, 0, GumpButtonType.Page, 4);
builder.AddHtmlLocalized(170, 120, 380, 20, 1078355); // Add or change a message and keyword
var rumors = m_Barkeeper.Rumors; builder.AddButton(130, 200, 4005, 4007, 0, GumpButtonType.Page, 5);
builder.AddHtmlLocalized(170, 200, 380, 20, 1078356); // Remove a message and keyword from your barkeep
builder.AddButton(130, 280, 4005, 4007, 0, GumpButtonType.Page, 6);
builder.AddHtmlLocalized(170, 280, 380, 20, 1078357); // Add or change your barkeeper's tip message
builder.AddButton(130, 360, 4005, 4007, 0, GumpButtonType.Page, 7);
builder.AddHtmlLocalized(170, 360, 380, 20, 1078358); // Delete your barkeepers tip message
builder.AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 1);
builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
builder.AddItem(580, 46, 4030);
}
public static void RenderDismissConfirmation(ref DynamicGumpBuilder builder)
{
builder.AddPage(3);
builder.AddHtmlLocalized(170, 160, 380, 20, 1078359); // Are you sure you want to dismiss your barkeeper?
builder.AddButton(205, 280, 4005, 4007, GetButtonID(0, 0));
builder.AddHtmlLocalized(240, 280, 100, 20, 1046362); // Yes
builder.AddButton(395, 280, 4005, 4007, 0);
builder.AddHtmlLocalized(430, 280, 100, 20, 1046363); // No
builder.AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 1);
builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
builder.AddItem(574, 43, 5360);
builder.AddItem(584, 34, 6579);
}
public void RenderMessageManagement_Message_AddOrChange(ref DynamicGumpBuilder builder)
{
builder.AddPage(4);
builder.AddHtmlLocalized(250, 60, 500, 25, 1078360); // Add or change a message
var rumors = _barkeeper.Rumors;
for (var i = 0; i < rumors.Length; ++i) for (var i = 0; i < rumors.Length; ++i)
{ {
var rumor = rumors[i]; var rumor = rumors[i];
AddHtml(100, 70 + i * 120, 50, 20, "Message"); builder.AddHtml(100, 70 + i * 120, 50, 20, "Message");
AddHtml(100, 90 + i * 120, 450, 40, rumor == null ? "No current message" : rumor.Message, true); builder.AddHtml(100, 90 + i * 120, 450, 40, rumor == null ? "No current message" : rumor.Message, true);
AddHtml(100, 130 + i * 120, 50, 20, "Keyword"); builder.AddHtmlLocalized(100, 130 + i * 120, 50, 20, 1078361); // Keyword
AddHtml(100, 150 + i * 120, 450, 40, rumor == null ? "None" : rumor.Keyword, true); builder.AddHtml(100, 150 + i * 120, 450, 40, rumor == null ? "None" : rumor.Keyword, true);
AddButton(60, 90 + i * 120, 4005, 4007, GetButtonID(1, i)); builder.AddButton(60, 90 + i * 120, 4005, 4007, GetButtonID(1, i));
} }
AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2); builder.AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2);
AddHtml(290, 440, 35, 40, "Back"); builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
AddItem(580, 46, 4030); builder.AddItem(580, 46, 4030);
} }
public void RenderMessageManagement_Message_Remove() public void RenderMessageManagement_Message_Remove(ref DynamicGumpBuilder builder)
{ {
AddPage(5); builder.AddPage(5);
AddHtml(190, 60, 500, 25, "Choose the message you would like to remove"); builder.AddHtmlLocalized(190, 60, 500, 25, 1078362); // Choose the message you would like to remove
var rumors = m_Barkeeper.Rumors; var rumors = _barkeeper.Rumors;
for (var i = 0; i < rumors.Length; ++i) for (var i = 0; i < rumors.Length; ++i)
{ {
var rumor = rumors[i]; var rumor = rumors[i];
AddHtml(100, 70 + i * 120, 50, 20, "Message"); builder.AddHtml(100, 70 + i * 120, 50, 20, "Message");
AddHtml(100, 90 + i * 120, 450, 40, rumor == null ? "No current message" : rumor.Message, true); builder.AddHtml(100, 90 + i * 120, 450, 40, rumor == null ? "No current message" : rumor.Message, true);
AddHtml(100, 130 + i * 120, 50, 20, "Keyword"); builder.AddHtmlLocalized(100, 130 + i * 120, 50, 20, 1078361); // Keyword
AddHtml(100, 150 + i * 120, 450, 40, rumor == null ? "None" : rumor.Keyword, true); builder.AddHtml(100, 150 + i * 120, 450, 40, rumor == null ? "None" : rumor.Keyword, true);
AddButton(60, 90 + i * 120, 4005, 4007, GetButtonID(2, i)); builder.AddButton(60, 90 + i * 120, 4005, 4007, GetButtonID(2, i));
} }
AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2); builder.AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2);
AddHtml(290, 440, 35, 40, "Back"); builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
AddItem(580, 46, 4030); builder.AddItem(580, 46, 4030);
} }
private int GetButtonID(int type, int index) => 1 + index * 6 + type; private static int GetButtonID(int type, int index) => 1 + index * 6 + type;
private void RenderMessageManagement_Tip_AddOrChange() private void RenderMessageManagement_Tip_AddOrChange(ref DynamicGumpBuilder builder)
{ {
AddPage(6); builder.AddPage(6);
AddHtml(250, 95, 500, 20, "Change this tip message"); builder.AddHtmlLocalized(250, 95, 500, 20, 1078363); // Change this tip message
AddHtml(100, 190, 50, 20, "Message"); builder.AddHtml(100, 190, 50, 20, "Message");
AddHtml(100, 210, 450, 40, m_Barkeeper.TipMessage ?? "No current message", true); builder.AddHtml(100, 210, 450, 40, _barkeeper.TipMessage ?? "No current message", true);
AddButton(60, 210, 4005, 4007, GetButtonID(3, 0)); builder.AddButton(60, 210, 4005, 4007, GetButtonID(3, 0));
AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2); builder.AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2);
AddHtml(290, 440, 35, 40, "Back"); builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
AddItem(580, 46, 4030); builder.AddItem(580, 46, 4030);
} }
private void RenderMessageManagement_Tip_Remove() private void RenderMessageManagement_Tip_Remove(ref DynamicGumpBuilder builder)
{ {
AddPage(7); builder.AddPage(7);
AddHtml(250, 95, 500, 20, "Remove this tip message"); builder.AddHtmlLocalized(250, 95, 500, 20, 1078364); // Remove this tip message
AddHtml(100, 190, 50, 20, "Message"); builder.AddHtml(100, 190, 50, 20, "Message");
AddHtml(100, 210, 450, 40, m_Barkeeper.TipMessage ?? "No current message", true); builder.AddHtml(100, 210, 450, 40, _barkeeper.TipMessage ?? "No current message", true);
AddButton(60, 210, 4005, 4007, GetButtonID(4, 0)); builder.AddButton(60, 210, 4005, 4007, GetButtonID(4, 0));
AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2); builder.AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 2);
AddHtml(290, 440, 35, 40, "Back"); builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
AddItem(580, 46, 4030); builder.AddItem(580, 46, 4030);
} }
private void RenderAppearanceCategories() private void RenderAppearanceCategories(ref DynamicGumpBuilder builder)
{ {
AddPage(8); builder.AddPage(8);
AddButton(130, 120, 4005, 4007, GetButtonID(5, 0)); builder.AddButton(130, 120, 4005, 4007, GetButtonID(5, 0));
AddHtml(170, 120, 120, 20, "Title"); builder.AddHtml(170, 120, 120, 20, "Title");
if (m_Barkeeper.Body != 0x340 && m_Barkeeper.Body != 0x402) if ((int)_barkeeper.Body is not 0x340 and not 0x402)
{ {
AddButton(130, 200, 4005, 4007, GetButtonID(5, 1)); builder.AddButton(130, 200, 4005, 4007, GetButtonID(5, 1));
AddHtml(170, 200, 120, 20, "Appearance"); builder.AddHtmlLocalized(170, 200, 120, 20, 1077829); // Appearance
AddButton(130, 280, 4005, 4007, GetButtonID(5, 2)); builder.AddButton(130, 280, 4005, 4007, GetButtonID(5, 2));
AddHtml(170, 280, 120, 20, "Male / Female"); builder.AddHtmlLocalized(170, 280, 120, 20, 1078365); // Male / Female
AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 1); builder.AddButton(338, 437, 4014, 4016, 0, GumpButtonType.Page, 1);
AddHtml(290, 440, 35, 40, "Back"); builder.AddHtmlLocalized(290, 440, 35, 40, 1005007); // Back
} }
AddItem(580, 44, 4033); builder.AddItem(580, 44, 4033);
} }
public override void OnResponse(NetState state, in RelayInfo info) public override void OnResponse(NetState state, in RelayInfo info)
{ {
if (!m_Barkeeper.IsOwner(m_From)) var from = state.Mobile;
if (!_barkeeper.IsOwner(from))
{ {
return; return;
} }
@ -1091,8 +1094,7 @@ namespace Server.Mobiles
return; return;
} }
var type = index % 6; index = Math.DivRem(index, 6, out var type);
index /= 6;
switch (type) switch (type)
{ {
@ -1102,7 +1104,7 @@ namespace Server.Mobiles
{ {
case 0: // Dismiss case 0: // Dismiss
{ {
m_Barkeeper.Dismiss(); _barkeeper.Dismiss();
break; break;
} }
} }
@ -1111,22 +1113,22 @@ namespace Server.Mobiles
} }
case 1: // Change message case 1: // Change message
{ {
m_Barkeeper.BeginChangeRumor(m_From, index); _barkeeper.BeginChangeRumor(from, index);
break; break;
} }
case 2: // Remove message case 2: // Remove message
{ {
m_Barkeeper.RemoveRumor(m_From, index); _barkeeper.RemoveRumor(from, index);
break; break;
} }
case 3: // Change tip case 3: // Change tip
{ {
m_Barkeeper.BeginChangeTip(m_From); _barkeeper.BeginChangeTip(from);
break; break;
} }
case 4: // Remove tip case 4: // Remove tip
{ {
m_Barkeeper.RemoveTip(m_From); _barkeeper.RemoveTip(from);
break; break;
} }
case 5: // Appearance category selection case 5: // Appearance category selection
@ -1134,14 +1136,20 @@ namespace Server.Mobiles
switch (index) switch (index)
{ {
case 0: case 0:
m_Barkeeper.BeginChangeTitle(m_From); {
break; _barkeeper.BeginChangeTitle(from);
break;
}
case 1: case 1:
m_Barkeeper.BeginChangeAppearance(m_From); {
break; _barkeeper.BeginChangeAppearance(from);
break;
}
case 2: case 2:
m_Barkeeper.ChangeGender(m_From); {
break; _barkeeper.ChangeGender(from);
break;
}
} }
break; break;

View file

@ -2097,53 +2097,62 @@ namespace Server.Multis
}; };
} }
public class ConfirmCommitGump : Gump public class ConfirmCommitGump : DynamicGump
{ {
private readonly HouseFoundation m_Foundation; private readonly HouseFoundation m_Foundation;
private readonly int _bankBalance;
private readonly int _oldPrice;
private readonly int _newPrice;
public ConfirmCommitGump(HouseFoundation foundation, int bankBalance, int oldPrice, int newPrice) : base(50, 50) public ConfirmCommitGump(HouseFoundation foundation, int bankBalance, int oldPrice, int newPrice) : base(50, 50)
{ {
m_Foundation = foundation; m_Foundation = foundation;
_bankBalance = bankBalance;
_oldPrice = oldPrice;
_newPrice = newPrice;
}
AddPage(0); protected override void BuildLayout(ref DynamicGumpBuilder builder)
{
builder.AddPage();
AddBackground(0, 0, 320, 320, 5054); builder.AddBackground(0, 0, 320, 320, 5054);
AddImageTiled(10, 10, 300, 20, 2624); builder.AddImageTiled(10, 10, 300, 20, 2624);
AddImageTiled(10, 40, 300, 240, 2624); builder.AddImageTiled(10, 40, 300, 240, 2624);
AddImageTiled(10, 290, 300, 20, 2624); builder.AddImageTiled(10, 290, 300, 20, 2624);
AddAlphaRegion(10, 10, 300, 300); builder.AddAlphaRegion(10, 10, 300, 300);
AddHtmlLocalized(10, 10, 300, 20, 1062060, 32736); // <CENTER>COMMIT DESIGN</CENTER> builder.AddHtmlLocalized(10, 10, 300, 20, 1062060, 32736); // <CENTER>COMMIT DESIGN</CENTER>
AddHtmlLocalized(10, 40, 300, 140, newPrice - oldPrice <= bankBalance ? 1061898 : 1061903, 1023, false, true); builder.AddHtmlLocalized(10, 40, 300, 140, _newPrice - _oldPrice <= _bankBalance ? 1061898 : 1061903, 1023, false, true);
AddHtmlLocalized(10, 190, 150, 20, 1061902, 32736); // Bank Balance: builder.AddHtmlLocalized(10, 190, 150, 20, 1061902, 32736); // Bank Balance:
AddLabel(170, 190, 55, bankBalance.ToString()); builder.AddLabel(170, 190, 55, _bankBalance.ToString());
AddHtmlLocalized(10, 215, 150, 20, 1061899, 1023); // Old Value: builder.AddHtmlLocalized(10, 215, 150, 20, 1061899, 1023); // Old Value:
AddLabel(170, 215, 90, oldPrice.ToString()); builder.AddLabel(170, 215, 90, _oldPrice.ToString());
AddHtmlLocalized(10, 235, 150, 20, 1061900, 1023); // Cost To Commit: builder.AddHtmlLocalized(10, 235, 150, 20, 1061900, 1023); // Cost To Commit:
AddLabel(170, 235, 90, newPrice.ToString()); builder.AddLabel(170, 235, 90, _newPrice.ToString());
if (newPrice - oldPrice < 0) if (_newPrice - _oldPrice < 0)
{ {
AddHtmlLocalized(10, 260, 150, 20, 1062059, 992); // Your Refund: builder. AddHtmlLocalized(10, 260, 150, 20, 1062059, 992); // Your Refund:
AddLabel(170, 260, 70, (oldPrice - newPrice).ToString()); builder.AddLabel(170, 260, 70, (_oldPrice - _newPrice).ToString());
} }
else else
{ {
AddHtmlLocalized(10, 260, 150, 20, 1061901, 31744); // Your Cost: builder.AddHtmlLocalized(10, 260, 150, 20, 1061901, 31744); // Your Cost:
AddLabel(170, 260, 40, (newPrice - oldPrice).ToString()); builder.AddLabel(170, 260, 40, (_newPrice - _oldPrice).ToString());
} }
AddButton(10, 290, 4005, 4007, 1); builder.AddButton(10, 290, 4005, 4007, 1);
AddHtmlLocalized(45, 290, 55, 20, 1011036, 32767); // OKAY builder.AddHtmlLocalized(45, 290, 55, 20, 1011036, 32767); // OKAY
AddButton(170, 290, 4005, 4007, 0); builder.AddButton(170, 290, 4005, 4007, 0);
AddHtmlLocalized(195, 290, 55, 20, 1011012, 32767); // CANCEL builder.AddHtmlLocalized(195, 290, 55, 20, 1011012, 32767); // CANCEL
} }
public override void OnResponse(NetState sender, in RelayInfo info) public override void OnResponse(NetState sender, in RelayInfo info)