82 lines
3.3 KiB
C#
82 lines
3.3 KiB
C#
using System;
|
|
using Server;
|
|
using Server.Gumps;
|
|
using Server.Mobiles;
|
|
using Server.Network;
|
|
using Server.Multis;
|
|
|
|
namespace Server.Custom.InnRooms
|
|
{
|
|
public class InnRoomManagementGump : Gump
|
|
{
|
|
private PlayerMobile m_Player;
|
|
private InnRoomHouse m_House;
|
|
|
|
public InnRoomManagementGump(PlayerMobile pm, InnRoomHouse house) : base(150, 150)
|
|
{
|
|
m_Player = pm;
|
|
m_House = house;
|
|
|
|
AddPage(0);
|
|
AddBackground(0, 0, 400, 350, 9270);
|
|
AddHtml(0, 15, 400, 20, "<CENTER><BASEFONT COLOR=#FFFFFF>Room Management</BASEFONT></CENTER>", false, false);
|
|
|
|
// --- STORAGE STATS ---
|
|
AddHtml(40, 60, 150, 20, "<BASEFONT COLOR=#FCCA03>Lockdowns:</BASEFONT>", false, false);
|
|
AddHtml(150, 60, 200, 20, $"<BASEFONT COLOR=#FFFFFF>{m_House.LockDownCount} / {m_House.MaxLockDowns}</BASEFONT>", false, false);
|
|
|
|
AddHtml(40, 90, 150, 20, "<BASEFONT COLOR=#FCCA03>Secures:</BASEFONT>", false, false);
|
|
AddHtml(150, 90, 200, 20, $"<BASEFONT COLOR=#FFFFFF>{m_House.SecureCount} / {m_House.MaxSecures}</BASEFONT>", false, false);
|
|
|
|
// --- RENT INFO ---
|
|
AddHtml(40, 140, 150, 20, "<BASEFONT COLOR=#FCCA03>Rent Expires:</BASEFONT>", false, false);
|
|
AddHtml(150, 140, 200, 20, $"<BASEFONT COLOR=#FFFFFF>{m_House.RentExpires.ToString("g")}</BASEFONT>", false, false);
|
|
|
|
// --- ACTIONS ---
|
|
// Auto-Renew Status Placeholder (We will wire this up next!)
|
|
AddHtml(40, 190, 250, 20, "<BASEFONT COLOR=#777777>Auto-Renew: Disabled</BASEFONT>", false, false);
|
|
|
|
// Cancel Button
|
|
AddHtml(75, 280, 250, 20, "<BASEFONT COLOR=#FF0000>Cancel Rental Contract</BASEFONT>", false, false);
|
|
AddButton(40, 280, 4005, 4007, 1, GumpButtonType.Reply, 0);
|
|
}
|
|
|
|
public override void OnResponse(NetState sender, RelayInfo info)
|
|
{
|
|
if (info.ButtonID == 1 && m_House != null && !m_House.Deleted)
|
|
{
|
|
m_Player.SendGump(new CancelRentGump(m_House));
|
|
}
|
|
}
|
|
}
|
|
|
|
// --- CANCELLATION CONFIRMATION GUMP ---
|
|
public class CancelRentGump : Gump
|
|
{
|
|
private InnRoomHouse m_House;
|
|
|
|
public CancelRentGump(InnRoomHouse house) : base(200, 200)
|
|
{
|
|
m_House = house;
|
|
|
|
AddPage(0);
|
|
AddBackground(0, 0, 300, 150, 9270);
|
|
AddHtml(0, 15, 300, 20, "<CENTER><BASEFONT COLOR=#FFFFFF>Cancel Room Rental?</BASEFONT></CENTER>", false, false);
|
|
AddHtml(20, 50, 260, 40, "<BASEFONT COLOR=#FFFFFF>This will instantly pack your items into your bank and evict you.</BASEFONT>", false, false);
|
|
|
|
AddButton(40, 100, 4005, 4007, 1, GumpButtonType.Reply, 0);
|
|
AddHtml(75, 100, 100, 20, "<BASEFONT COLOR=#FFFFFF>Confirm</BASEFONT>", false, false);
|
|
|
|
AddButton(160, 100, 4005, 4007, 0, GumpButtonType.Reply, 0);
|
|
AddHtml(195, 100, 100, 20, "<BASEFONT COLOR=#FFFFFF>Cancel</BASEFONT>", false, false);
|
|
}
|
|
|
|
public override void OnResponse(NetState sender, RelayInfo info)
|
|
{
|
|
if (info.ButtonID == 1 && m_House != null && !m_House.Deleted)
|
|
{
|
|
m_House.Evict();
|
|
}
|
|
}
|
|
}
|
|
}
|