Overwrite

Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
Unstable Kitsune
2023-11-28 23:20:26 -05:00
parent 3cd54811de
commit b918192e4e
11608 changed files with 2644205 additions and 47 deletions

View File

@@ -0,0 +1,109 @@
using System;
using Server;
using Server.Items;
using Server.Mobiles;
using System.Collections;
using Server.Network;
namespace Server.Items
{
public class DantesTeleporter : Item
{
private Point3D m_DestLoc;
private Map m_DestMap;
private bool m_AllowCreatures;
private bool m_TelePets;
[CommandProperty( AccessLevel.GameMaster )]
public Point3D Location
{
get { return m_DestLoc; }
set { m_DestLoc = value; InvalidateProperties(); }
}
[CommandProperty( AccessLevel.GameMaster )]
public Map Map
{
get { return m_DestMap; }
set { m_DestMap = value; InvalidateProperties(); }
}
[CommandProperty( AccessLevel.GameMaster )]
public bool AllowCreatures
{
get { return m_AllowCreatures; }
set { m_AllowCreatures = value; InvalidateProperties(); }
}
[CommandProperty( AccessLevel.GameMaster )]
public bool TelePets
{
get { return m_TelePets; }
set { m_TelePets = value; InvalidateProperties(); }
}
[Constructable]
public DantesTeleporter() : base( 3948 )
{
Visible = false;
Hue = 1;
Movable = false;
Weight = 0.0;
Name = "Dante's Teleporter";
}
public DantesTeleporter( Serial serial ) : base( serial )
{
}
public override bool OnMoveOver( Mobile m )
{
if( !m_AllowCreatures && !m.Player )
return true;
if( m.Backpack.ConsumeTotal( typeof( DantesBracelet ), 1 ) )
{
if( m_TelePets )
{
Server.Mobiles.BaseCreature.TeleportPets( m, m_DestLoc, m_DestMap );
}
m.PlaySound(0x1F7);
m.MoveToWorld( m_DestLoc, m_DestMap );
return false;
}
m.SendMessage( " You must have Dante's Bracelet if you wish to pass." );
return true;
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 ); // version
writer.Write( m_DestLoc );
writer.Write( m_DestMap );
writer.Write( m_AllowCreatures );
writer.Write( m_TelePets );
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
m_DestLoc = reader.ReadPoint3D();
m_DestMap = reader.ReadMap();
m_AllowCreatures = reader.ReadBool();
m_TelePets = reader.ReadBool();
}
}
}