Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
117
Scripts/Scripts-master/Items/Deeds/SexChangeDeed.cs
Normal file
117
Scripts/Scripts-master/Items/Deeds/SexChangeDeed.cs
Normal file
@@ -0,0 +1,117 @@
|
||||
using Server.Mobiles;
|
||||
using Server.Gumps;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class SexChangeDeed : Item
|
||||
{
|
||||
[Constructable]
|
||||
public SexChangeDeed() : base( 0x14F0 )
|
||||
{
|
||||
Name = "a sex change deed";
|
||||
}
|
||||
|
||||
public SexChangeDeed( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
{
|
||||
if ( from == null || from.Deleted || from.Backpack == null )
|
||||
return;
|
||||
|
||||
if ( !IsChildOf( from.Backpack ) )
|
||||
{
|
||||
from.SendLocalizedMessage( 1042001 ); // That must be in your pack for you to use it.
|
||||
return;
|
||||
}
|
||||
|
||||
from.SendGump( new SexChangeConfirmGump( from, this ) );
|
||||
}
|
||||
|
||||
protected void Use( Mobile from )
|
||||
{
|
||||
from.SendMessage( "You feel your body proportions change." );
|
||||
|
||||
from.BodyValue = (from.BodyValue == 400 ? 401 : 400 );
|
||||
from.Female = !from.Female;
|
||||
|
||||
if ( from.Female )
|
||||
{
|
||||
if (from.FacialHairItemID > 0)
|
||||
{
|
||||
from.SendMessage( "You feel a sharp pain as your beard is torn off by invisible forces." );
|
||||
from.FacialHairItemID = 0;
|
||||
}
|
||||
}
|
||||
Delete();
|
||||
}
|
||||
|
||||
private class SexChangeConfirmGump : Gump
|
||||
{
|
||||
Mobile m_Mobile;
|
||||
SexChangeDeed m_Deed;
|
||||
public SexChangeConfirmGump( Mobile from, SexChangeDeed deed ) : base( 200, 200 )
|
||||
{
|
||||
m_Deed = deed;
|
||||
m_Mobile = from;
|
||||
//this.Closable=false;
|
||||
//this.Disposable=true;
|
||||
//this.Dragable=true;
|
||||
this.Resizable=false;
|
||||
this.AddPage(0);
|
||||
this.AddBackground(0, 0, 300, 120, 9270);
|
||||
//this.AddAlphaRegion(11, 14, 332, 95);
|
||||
//this.AddItem(297, 38, 4168);
|
||||
this.AddLabel( 28, 15, 255, "Changing sex involves intense magic." );
|
||||
this.AddLabel( 28, 31, 255, "Your facial hair, if any, will dissapear." );
|
||||
this.AddLabel( 28, 47, 255, "Are you sure you want to proceed?" );
|
||||
|
||||
AddButton( 28, 70, 4005, 4007, 1, GumpButtonType.Reply, 0 );
|
||||
AddLabel( 80, 70, 255, "Yes" );
|
||||
|
||||
AddButton( 130, 70, 4005, 4007, 0, GumpButtonType.Reply, 0 );
|
||||
AddLabel( 182, 70, 255, "No" );
|
||||
|
||||
//this.AddItem(12, 38, 4171);
|
||||
}
|
||||
|
||||
public override void OnResponse( NetState state, RelayInfo info )
|
||||
{
|
||||
switch ( info.ButtonID )
|
||||
{
|
||||
case 1: // Yes
|
||||
{
|
||||
if ( m_Mobile == null || m_Mobile.Deleted || m_Mobile.Backpack == null || m_Deed == null || m_Deed.Deleted )
|
||||
return;
|
||||
|
||||
if ( !m_Deed.IsChildOf( m_Mobile.Backpack ) )
|
||||
{
|
||||
m_Mobile.SendLocalizedMessage( 1042001 ); // That must be in your pack for you to use it.
|
||||
return;
|
||||
}
|
||||
|
||||
m_Deed.Use( m_Mobile );
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user