#W# Source and Scripts added. Added Scripts/Settings.cs to expose some basic tweak able settings.
This commit is contained in:
parent
b51c58f514
commit
3045c83799
3512 changed files with 627673 additions and 0 deletions
125
Scripts/Gumps/TithingGump.cs
Normal file
125
Scripts/Gumps/TithingGump.cs
Normal file
|
|
@ -0,0 +1,125 @@
|
|||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Gumps
|
||||
{
|
||||
public class TithingGump : Gump
|
||||
{
|
||||
private Mobile m_From;
|
||||
private int m_Offer;
|
||||
|
||||
public TithingGump( Mobile from, int offer ) : base( 160, 40 )
|
||||
{
|
||||
int totalGold = from.TotalGold;
|
||||
|
||||
if ( offer > totalGold )
|
||||
offer = totalGold;
|
||||
else if ( offer < 0 )
|
||||
offer = 0;
|
||||
|
||||
m_From = from;
|
||||
m_Offer = offer;
|
||||
|
||||
AddPage( 0 );
|
||||
|
||||
AddImage( 30, 30, 102 );
|
||||
|
||||
AddHtmlLocalized( 95, 100, 120, 100, 1060198, 0, false, false ); // May your wealth bring blessings to those in need, if tithed upon this most sacred site.
|
||||
|
||||
AddLabel( 57, 274, 0, "Gold:" );
|
||||
AddLabel( 87, 274, 53, (totalGold - offer).ToString() );
|
||||
|
||||
AddLabel( 137, 274, 0, "Tithe:" );
|
||||
AddLabel( 172, 274, 53, offer.ToString() );
|
||||
|
||||
AddButton( 105, 230, 5220, 5220, 2, GumpButtonType.Reply, 0 );
|
||||
AddButton( 113, 230, 5222, 5222, 2, GumpButtonType.Reply, 0 );
|
||||
AddLabel( 108, 228, 0, "<" );
|
||||
AddLabel( 112, 228, 0, "<" );
|
||||
|
||||
AddButton( 127, 230, 5223, 5223, 1, GumpButtonType.Reply, 0 );
|
||||
AddLabel( 131, 228, 0, "<" );
|
||||
|
||||
AddButton( 147, 230, 5224, 5224, 3, GumpButtonType.Reply, 0 );
|
||||
AddLabel( 153, 228, 0, ">" );
|
||||
|
||||
AddButton( 168, 230, 5220, 5220, 4, GumpButtonType.Reply, 0 );
|
||||
AddButton( 176, 230, 5222, 5222, 4, GumpButtonType.Reply, 0 );
|
||||
AddLabel( 172, 228, 0, ">" );
|
||||
AddLabel( 176, 228, 0, ">" );
|
||||
|
||||
AddButton( 217, 272, 4023, 4024, 5, GumpButtonType.Reply, 0 );
|
||||
}
|
||||
|
||||
public override void OnResponse( NetState sender, RelayInfo info )
|
||||
{
|
||||
switch ( info.ButtonID )
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
// You have decided to tithe no gold to the shrine.
|
||||
m_From.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1060193 );
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
{
|
||||
int offer = 0;
|
||||
|
||||
switch ( info.ButtonID )
|
||||
{
|
||||
case 1: offer = m_Offer - 100; break;
|
||||
case 2: offer = 0; break;
|
||||
case 3: offer = m_Offer + 100; break;
|
||||
case 4: offer = m_From.TotalGold; break;
|
||||
}
|
||||
|
||||
m_From.SendGump( new TithingGump( m_From, offer ) );
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
int totalGold = m_From.TotalGold;
|
||||
|
||||
if ( m_Offer > totalGold )
|
||||
m_Offer = totalGold;
|
||||
else if ( m_Offer < 0 )
|
||||
m_Offer = 0;
|
||||
|
||||
if ( (m_From.TithingPoints + m_Offer) > 100000 ) // TODO: What's the maximum?
|
||||
m_Offer = (100000 - m_From.TithingPoints);
|
||||
|
||||
if ( m_Offer <= 0 )
|
||||
{
|
||||
// You have decided to tithe no gold to the shrine.
|
||||
m_From.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1060193 );
|
||||
break;
|
||||
}
|
||||
|
||||
Container pack = m_From.Backpack;
|
||||
|
||||
if ( pack != null && pack.ConsumeTotal( typeof( Gold ), m_Offer ) )
|
||||
{
|
||||
// You tithe gold to the shrine as a sign of devotion.
|
||||
m_From.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1060195 );
|
||||
m_From.TithingPoints += m_Offer;
|
||||
|
||||
m_From.PlaySound( 0x243 );
|
||||
m_From.PlaySound( 0x2E6 );
|
||||
}
|
||||
else
|
||||
{
|
||||
// You do not have enough gold to tithe that amount!
|
||||
m_From.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1060194 );
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue