103 lines
3.3 KiB
C#
103 lines
3.3 KiB
C#
//
|
|
// X-RunUO - Ultima Online Server Emulator
|
|
// Copyright (C) 2015 Pedro Pardal
|
|
//
|
|
// This library is free software; you can redistribute it and/or
|
|
// modify it under the terms of the GNU Lesser General Public
|
|
// License as published by the Free Software Foundation; either
|
|
// version 3.0 of the License, or (at your option) any later version.
|
|
//
|
|
// This program is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU Lesser General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU Lesser General Public
|
|
// License along with this program.
|
|
//
|
|
|
|
using System;
|
|
using Server;
|
|
using Server.Items;
|
|
using Server.Mobiles;
|
|
|
|
namespace Server.Engines.InstancedPeerless
|
|
{
|
|
public class MedusaPlatform : PeerlessPlatform
|
|
{
|
|
public override Type KeyType { get { return typeof( RareSerpentEgg ); } }
|
|
public override Type BossType { get { return typeof( Medusa ); } }
|
|
|
|
[Constructable]
|
|
public MedusaPlatform()
|
|
{
|
|
ExitLocation = new Point3D( 817, 756, 50 );
|
|
|
|
// base
|
|
AddComponent( new AddonComponent( 0x0709 ), -1, -1, 0 );
|
|
AddComponent( new AddonComponent( 0x0709 ), 0, -1, 0 );
|
|
AddComponent( new AddonComponent( 0x0709 ), 1, -1, 0 );
|
|
AddComponent( new AddonComponent( 0x0709 ), 0, 0, 0 );
|
|
AddComponent( new AddonComponent( 0x0709 ), 1, 0, 0 );
|
|
AddComponent( new AddonComponent( 0x0709 ), -1, 1, 0 );
|
|
AddComponent( new AddonComponent( 0x0709 ), 0, 1, 0 );
|
|
AddComponent( new AddonComponent( 0x0709 ), 1, 1, 0 );
|
|
|
|
// stairs
|
|
AddComponent( new AddonComponent( 0x070D ), -1, 0, 0 );
|
|
|
|
// blockers
|
|
AddComponent( new AddonComponent( 0x21A4 ), 0, -1, 5 );
|
|
AddComponent( new AddonComponent( 0x21A4 ), 1, 0, 5 );
|
|
AddComponent( new AddonComponent( 0x21A4 ), 0, 1, 5 );
|
|
|
|
// floor cracks
|
|
AddComponent( new AddonComponent( 0x1B07 ), 0, 0, 5 );
|
|
AddComponent( new AddonComponent( 0x1B05 ), 0, 0, 5 );
|
|
|
|
// floor
|
|
AddComponent( new AddonComponent( 0x4332 ), 1, 1, 5 );
|
|
AddComponent( new AddonComponent( 0x4333 ), -1, -1, 5 );
|
|
AddComponent( new AddonComponent( 0x4334 ), -1, 1, 5 );
|
|
AddComponent( new AddonComponent( 0x4335 ), 1, -1, 5 );
|
|
AddComponent( new AddonComponent( 0x433A ), 0, -1, 5 );
|
|
AddComponent( new AddonComponent( 0x433A ), 1, 0, 5 );
|
|
AddComponent( new AddonComponent( 0x433A ), 0, 1, 5 );
|
|
}
|
|
|
|
public override void AddInstances()
|
|
{
|
|
AddInstance( 0, -1, 7, Map.TerMur, new Point3D( 776, 928, -5 ), new Point3D( 818, 927, -15 ), new Rectangle2D( 760, 887, 95, 81 ) );
|
|
AddInstance( 1, 0, 7, Map.TerMur, new Point3D( 776, 1094, -5 ), new Point3D( 818, 1093, -15 ), new Rectangle2D( 760, 1057, 95, 81 ) );
|
|
AddInstance( 0, 1, 7, Map.TerMur, new Point3D( 776, 1264, -5 ), new Point3D( 818, 1263, -15 ), new Rectangle2D( 760, 1230, 95, 81 ) );
|
|
}
|
|
|
|
public override void AddBraziers()
|
|
{
|
|
AddBrazier( -1, -1, 7 );
|
|
AddBrazier( 1, -1, 8 );
|
|
AddBrazier( -1, 1, 8 );
|
|
AddBrazier( 1, 1, 9 );
|
|
}
|
|
|
|
public MedusaPlatform( 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();
|
|
}
|
|
}
|
|
} |