ModernUO/Scripts/Engines/Factions/Items/Traps/FactionExplosionTrap.cs
2018-08-14 06:16:50 +08:00

85 lines
2 KiB
C#

using System;
using Server;
namespace Server.Factions
{
public class FactionExplosionTrap : BaseFactionTrap
{
public override int LabelNumber => 1044599; // faction explosion trap
public override int AttackMessage => 1010543; // You are enveloped in an explosion of fire!
public override int DisarmMessage => 1010539; // You carefully remove the pressure trigger and disable the trap.
public override int EffectSound => 0x307;
public override int MessageHue => 0x78;
public override AllowedPlacing AllowedPlacing => AllowedPlacing.AnyFactionTown;
public override void DoVisibleEffect()
{
Effects.SendLocationEffect( GetWorldLocation(), Map, 0x36BD, 15, 10 );
}
public override void DoAttackEffect( Mobile m )
{
m.Damage( Utility.Dice( 6, 10, 40 ), m );
}
[Constructible]
public FactionExplosionTrap() : this( null )
{
}
public FactionExplosionTrap( Faction f ) : this( f, null )
{
}
public FactionExplosionTrap( Faction f, Mobile m ) : base( f, m, 0x11C1 )
{
}
public FactionExplosionTrap( 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 class FactionExplosionTrapDeed : BaseFactionTrapDeed
{
public override Type TrapType => typeof( FactionExplosionTrap );
public override int LabelNumber => 1044603; // faction explosion trap deed
public FactionExplosionTrapDeed() : base( 0x36D2 )
{
}
public FactionExplosionTrapDeed( 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();
}
}
}