I used that code, and I was able to add it fine.
Scripts\Mobiles\Monsters\Magical <-- Thats the path
[code:1]using System;
using System.Collections;
using Server.Items;
using Server.Scripts.Items;
using Server.Scripts.Items.Scrolls;
using Server.Targeting;
using Server.Scripts.Misc;
using Server.Spells;
using Server.Spells.Fourth;
using Server.Spells.Fifth;
using Server.Spells.Sixth;
using Server.Spells.Seventh;
namespace Server.Scripts.Mobiles.Monsters.Magical
{
[CorpseName( "an Lich Corpse" )]
public class Lich: BaseAggressive
{
[Constructable] public Lich()
{
this.Body = 0x018;
this.Name =( "a Lich" );
this.InitStats(171,126,279);
this.Skills[SkillName.Wrestling].Base = Utility.Random(10,15);
this.Skills[SkillName.Anatomy].Base = Utility.Random(40,45);
this.Skills[SkillName.MagicResist].Base = Utility.Random(80,99);
this.Skills[SkillName.Magery].Base = Utility.Random(75,82);
this.Skills[SkillName.EvalInt].Base = 100;
this.Skills[SkillName.Meditation].Base = Utility.Random(82,95);
this.Skills[SkillName.Tactics].Base = Utility.Random(70,90);
this.Fame = Utility.Random(5000,9000);
this.Karma = Utility.Random(-5000,-9000);
bool strCriminal = true;
this.Criminal = strCriminal;
Container pack = new Backpack();
pack.DropItem( new Gold( 200, 300 ) );
pack.DropItem( new Server.Scripts.Items.Weapons.Swords.Katana() );
pack.DropItem( new SOS(1) ); // Well wanted it to be a Treasure map but there is none Yet!
Container bag = new Bag();
bag.DropItem( new BlackPearl( Utility.Random( 1, 10 ) ) );
bag.DropItem( new Bloodmoss( Utility.Random( 1, 10 ) ) );
bag.DropItem( new Garlic( Utility.Random( 1, 10 ) ) );
bag.DropItem( new Ginseng( Utility.Random( 1, 10 ) ) );
bag.DropItem( new MandrakeRoot( Utility.Random( 1, 10 ) ) );
bag.DropItem( new Nightshade( Utility.Random( 1, 10 ) ) );
bag.DropItem( new SulfurousAsh( Utility.Random( 1, 10 ) ) );
bag.DropItem( new SpidersSilk( Utility.Random( 1, 10 ) ) );
pack.DropItem( bag );
Container bag1 = new Bag();
for ( int i = 0; i < Utility.Random( 1, 2 ); ++i )
{
switch ( Utility.Random ( 8 ) )
{
case 0: bag1.DropItem( new ClumsyScroll() ); break;
case 1: bag1.DropItem( new CreateFoodScroll() ); break;
case 2: bag1.DropItem( new FeeblemindScroll() ); break;
case 3: bag1.DropItem( new HealScroll() ); break;
case 4: bag1.DropItem( new MagicArrowScroll() ); break;
case 5: bag1.DropItem( new NightSightScroll() ); break;
case 6: bag1.DropItem( new ReactiveArmorScroll() ); break;
case 7: bag1.DropItem( new WeakenScroll() ); break;
}
}
pack.DropItem( bag1 );
for ( int i = 0; i < Utility.Random(0,2); ++i)
{
pack.DropItem( new RecallRune() );
}
pack.Movable = false;
pack.Newbied = true;
AddItem( pack );
}
public Lich( Serial serial ) : base( serial )
{
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( (int) 0 );
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
public override double GetValueFrom( Mobile m )
{
return -this.GetDistanceToSqrt( m );
}
}
}[/code:1]