This commit is contained in:
xavier 2011-08-21 02:15:26 +00:00
parent 50d2e4ddf6
commit 60ca00eab0
18 changed files with 1016 additions and 49 deletions

View file

@ -0,0 +1,79 @@
using System;
using Server;
using Server.Items;
using Server.Mobiles;
namespace Server.Gumps
{
public class BaseConfirmGump : Gump
{
public virtual int TitleNumber{ get{ return 1075083; } } // <center>Warning!</center>
public virtual int LabelNumber{ get{ return 1074975; } } // Are you sure you wish to select this?
private enum Buttons
{
Close,
Break,
Confirm
}
public BaseConfirmGump() : base( 120, 50 )
{
Closable = false;
Disposable = true;
Dragable = true;
Resizable = false;
AddPage( 0 );
AddImageTiled( 0, 0, 348, 262, 0xA8E );
AddAlphaRegion( 0, 0, 348, 262 );
AddImage( 0, 15, 0x27A8 );
AddImageTiled( 0, 30, 17, 200, 0x27A7 );
AddImage( 0, 230, 0x27AA );
AddImage( 15, 230, 0x280C );
AddImageTiled( 30, 0, 300, 17, 0x280A );
AddImage( 315, 0, 0x280E );
AddImage( 15, 244, 0x280C );
AddImageTiled( 30, 244, 300, 17, 0x280A );
AddImage( 315, 244, 0x280E );
AddImage( 330, 15, 0x27A8 );
AddImageTiled( 330, 30, 17, 200, 0x27A7 );
AddImage( 330, 230, 0x27AA );
AddImage( 333, 2, 0x2716 );
AddImage( 315, 248, 0x2716 );
AddImage( 2, 248, 0x2716 );
AddImage( 2, 2, 0x2716 );
AddHtmlLocalized( 25, 25, 200, 20, TitleNumber, 0x7D00, false, false );
AddImage( 25, 40, 0xBBF );
AddHtmlLocalized( 25, 55, 300, 120, LabelNumber, 0xFFFFFF, false, false );
AddRadio( 25, 175, 0x25F8, 0x25FB, true, (int) Buttons.Break );
AddRadio( 25, 210, 0x25F8, 0x25FB, false, (int) Buttons.Close );
AddHtmlLocalized( 60, 180, 280, 20, 1074976, 0xFFFFFF, false, false );
AddHtmlLocalized( 60, 215, 280, 20, 1074977, 0xFFFFFF, false, false );
AddButton( 265, 220, 0xF7, 0xF8, (int) Buttons.Confirm, GumpButtonType.Reply, 0 );
}
public override void OnResponse( Server.Network.NetState state, RelayInfo info )
{
if ( info.ButtonID == (int) Buttons.Confirm )
{
if ( info.IsSwitched( (int) Buttons.Break ) )
Confirm( state.Mobile );
else
Refuse( state.Mobile );
}
}
public virtual void Confirm( Mobile from )
{
}
public virtual void Refuse( Mobile from )
{
}
}
}

View file

@ -0,0 +1,53 @@
using System;
using Server;
using Server.Items;
using Server.Mobiles;
namespace Server.Gumps
{
public class ConfirmBreakCrystalGump : BaseConfirmGump
{
public override int LabelNumber{ get{ return 1075084; } } // This statuette will be destroyed when its trapped creature is summoned. The creature will be bonded to you but will disappear if released. <br><br>Do you wish to proceed?
private BaseImprisonedMobile m_Item;
public ConfirmBreakCrystalGump( BaseImprisonedMobile item ) : base()
{
m_Item = item;
}
public override void Confirm( Mobile from )
{
if ( m_Item == null || m_Item.Deleted )
return;
BaseCreature summon = m_Item.Summon;
if ( summon != null )
{
if ( !summon.SetControlMaster( from ) )
from.SendLocalizedMessage( 1049607 ); // You have too many followers to control that creature.
else
{
from.SendLocalizedMessage( 1049666 ); // Your pet has bonded with you!
summon.MoveToWorld( from.Location, from.Map );
summon.IsBonded = true;
summon.Skills.Wrestling.Base = 100;
summon.Skills.Tactics.Base = 100;
summon.Skills.MagicResist.Base = 100;
summon.Skills.Anatomy.Base = 100;
Effects.PlaySound( summon.Location, summon.Map, summon.BaseSoundID );
Effects.SendLocationParticles( EffectItem.Create( summon.Location, summon.Map, EffectItem.DefaultDuration ), 0x3728, 1, 10, 0x26B6 );
m_Item.Release( from, summon );
m_Item.Delete();
}
}
}
}
}