Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
113
Scripts/Scripts-master/Quests/Berserker Quest/Berserker.cs
Normal file
113
Scripts/Scripts-master/Quests/Berserker Quest/Berserker.cs
Normal file
@@ -0,0 +1,113 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a Berserker corpse" )]
|
||||
public class Berserker : BaseCreature
|
||||
{
|
||||
public override bool ClickTitle{ get{ return false; } }
|
||||
public override bool ShowFameTitle{ get{ return false; } }
|
||||
|
||||
[Constructable]
|
||||
public Berserker() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Title = ", the Berserker";
|
||||
|
||||
Hue = 0;
|
||||
BaseSoundID = 357;
|
||||
|
||||
if ( this.Female = Utility.RandomBool() )
|
||||
{
|
||||
Body = 0x191;
|
||||
Name = NameList.RandomName( "female" );
|
||||
}
|
||||
else
|
||||
{
|
||||
Body = 0x190;
|
||||
Name = NameList.RandomName( "male" );
|
||||
}
|
||||
|
||||
SetStr( 476, 505 );
|
||||
SetDex( 76, 95 );
|
||||
SetInt( 11, 25 );
|
||||
|
||||
SetHits( 386, 403 );
|
||||
|
||||
SetDamage( 6, 12 );
|
||||
|
||||
SetDamageType( ResistanceType.Physical, 100 );
|
||||
|
||||
SetResistance( ResistanceType.Physical, 45, 60 );
|
||||
SetResistance( ResistanceType.Fire, 50, 60 );
|
||||
SetResistance( ResistanceType.Cold, 30, 40 );
|
||||
SetResistance( ResistanceType.Poison, 20, 30 );
|
||||
SetResistance( ResistanceType.Energy, 30, 40 );
|
||||
|
||||
SetSkill( SkillName.Fencing, 166.0, 197.5 );
|
||||
SetSkill( SkillName.Macing, 165.0, 187.5 );
|
||||
SetSkill( SkillName.MagicResist, 125.0, 147.5 );
|
||||
SetSkill( SkillName.Swords, 165.0, 187.5 );
|
||||
SetSkill( SkillName.Tactics, 165.0, 187.5 );
|
||||
SetSkill( SkillName.Wrestling, 115.0, 137.5 );
|
||||
|
||||
Fame = 1000;
|
||||
Karma = -1000;
|
||||
|
||||
AddItem( new Sandals( Utility.RandomNeutralHue() ) );
|
||||
AddItem( new DeerMask() );
|
||||
AddItem( new BoneGloves() );
|
||||
|
||||
PackItem( new Gold( 1000, 2500 ) );
|
||||
PackItem( new BloodyBerserkerSkull() );
|
||||
|
||||
//if ( 0.5 > Utility.RandomDouble() )
|
||||
//PackItem( new AnkhGloves() );
|
||||
|
||||
switch ( Utility.Random( 7 ))
|
||||
{
|
||||
case 0: AddItem( new Longsword() ); break;
|
||||
case 1: AddItem( new Cutlass() ); break;
|
||||
case 2: AddItem( new Broadsword() ); break;
|
||||
case 3: AddItem( new Axe() ); break;
|
||||
case 4: AddItem( new Club() ); break;
|
||||
case 5: AddItem( new Dagger() ); break;
|
||||
case 6: AddItem( new Spear() ); break;
|
||||
}
|
||||
|
||||
Utility.AssignRandomHair( this );
|
||||
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.FilthyRich );
|
||||
AddLoot( LootPack.Average, 2 );
|
||||
AddLoot( LootPack.MedScrolls, 2 );
|
||||
}
|
||||
|
||||
public override bool AlwaysMurderer{ get{ return true; } }
|
||||
public override bool CanRummageCorpses{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Regular; } }
|
||||
public override int TreasureMapLevel{ get{ return 4; } }
|
||||
public override int Meat{ get{ return 1; } }
|
||||
|
||||
public Berserker( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
107
Scripts/Scripts-master/Quests/Berserker Quest/BerserkersQuest.cs
Normal file
107
Scripts/Scripts-master/Quests/Berserker Quest/BerserkersQuest.cs
Normal file
@@ -0,0 +1,107 @@
|
||||
/* This file was created with
|
||||
Ilutzio's Questmaker. Enjoy! */
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using Server.ContextMenus;
|
||||
using Server.Gumps;
|
||||
using Server.Misc;
|
||||
using Server.Network;
|
||||
using Server.Spells;
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName("Ike's Corpse")]
|
||||
public class Ike : Mobile
|
||||
{
|
||||
public virtual bool IsInvulnerable { get { return true; } }
|
||||
[Constructable]
|
||||
public Ike()
|
||||
{
|
||||
|
||||
///////////STR/DEX/INT
|
||||
InitStats(31, 41, 51);
|
||||
|
||||
///////////name
|
||||
Name = "Ike";
|
||||
|
||||
///////////title
|
||||
Title = "The Angry";
|
||||
|
||||
///////////sex. 0x191 is female, 0x190 is male.
|
||||
Body = 0x190;
|
||||
|
||||
///////////skincolor
|
||||
Hue = Utility.RandomSkinHue();
|
||||
|
||||
///////////Random hair and haircolor
|
||||
Utility.AssignRandomHair(this);
|
||||
|
||||
///////////clothing and hues
|
||||
AddItem(new Server.Items.LongPants(Utility.RandomBlueHue()));
|
||||
AddItem(new Server.Items.Sandals(Utility.RandomGreenHue()));
|
||||
|
||||
///////////immortal and frozen to-the-spot features below:
|
||||
Blessed = true;
|
||||
CantWalk = true;
|
||||
|
||||
///////////Adding a backpack
|
||||
Container pack = new Backpack();
|
||||
pack.DropItem(new Gold(250, 300));
|
||||
pack.Movable = false;
|
||||
AddItem(pack);
|
||||
}
|
||||
|
||||
public Ike(Serial serial) : base(serial) { }
|
||||
public override void GetContextMenuEntries(Mobile from, List<ContextMenuEntry> list)
|
||||
{ base.GetContextMenuEntries(from, list); list.Add(new IkeEntry(from, this)); }
|
||||
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 class IkeEntry : ContextMenuEntry
|
||||
{
|
||||
private Mobile m_Mobile; private Mobile m_Giver;
|
||||
public IkeEntry(Mobile from, Mobile giver) : base(6146, 3) { m_Mobile = from; m_Giver = giver; }
|
||||
public override void OnClick()
|
||||
{
|
||||
if (!(m_Mobile is PlayerMobile)) return;
|
||||
PlayerMobile mobile = (PlayerMobile)m_Mobile;
|
||||
{
|
||||
|
||||
///////////gump name
|
||||
if (!mobile.HasGump(typeof(BerserkersQuestGump)))
|
||||
{
|
||||
mobile.SendGump(new BerserkersQuestGump(mobile));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public override bool OnDragDrop(Mobile from, Item dropped)
|
||||
{
|
||||
Mobile m = from; PlayerMobile mobile = m as PlayerMobile;
|
||||
if (mobile != null)
|
||||
{
|
||||
|
||||
///////////item to be dropped
|
||||
if (dropped is BloodyBerserkerSkull)
|
||||
{
|
||||
if (dropped.Amount != 10)
|
||||
{ this.PrivateOverheadMessage(MessageType.Regular, 1153, false, "There's not the right amount here!", mobile.NetState); return false; }
|
||||
dropped.Delete();
|
||||
|
||||
///////////the reward
|
||||
mobile.AddToBackpack(new Gold(666));
|
||||
mobile.AddToBackpack(new Vengeance());
|
||||
|
||||
///////////thanks message
|
||||
this.PrivateOverheadMessage(MessageType.Regular, 1153, false, "Thank You. It Helps Some But It Will Never Mend My Pain...", mobile.NetState);
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
else if (dropped is Whip) { this.PrivateOverheadMessage(MessageType.Regular, 1153, 1054071, mobile.NetState); return false; } else { this.PrivateOverheadMessage(MessageType.Regular, 1153, false, "I have no need for this...", mobile.NetState); }
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
using System; using Server; using Server.Commands;using Server.Gumps; using Server.Network;using Server.Items;using Server.Mobiles;namespace Server.Gumps
|
||||
{ public class BerserkersQuestGump : Gump {
|
||||
public static void Initialize() {
|
||||
CommandSystem.Register( "BerserkersQuestGump", AccessLevel.GameMaster, new CommandEventHandler( BerserkersQuestGump_OnCommand ) );
|
||||
}
|
||||
private static void BerserkersQuestGump_OnCommand( CommandEventArgs e )
|
||||
{
|
||||
e.Mobile.SendGump( new BerserkersQuestGump( e.Mobile ) ); }
|
||||
public BerserkersQuestGump( Mobile owner ) : base( 50,50 )
|
||||
{
|
||||
//----------------------------------------------------------------------------------------------------
|
||||
AddPage( 0 );AddImageTiled( 54, 33, 369, 400, 2624 );AddAlphaRegion( 54, 33, 369, 400 );AddImageTiled( 416, 39, 44, 389, 203 );
|
||||
//--------------------------------------Window size bar--------------------------------------------
|
||||
AddImage( 97, 49, 9005 );AddImageTiled( 58, 39, 29, 390, 10460 );AddImageTiled( 412, 37, 31, 389, 10460 );
|
||||
AddLabel( 140, 60, 0x34, "Berserker Rampage" );
|
||||
//----------------------/----------------------------------------------/
|
||||
AddHtml( 107, 140, 300, 230, " < BODY > " +
|
||||
"<BASEFONT COLOR=YELLOW>Ike Looks At You With Fire In His Eyes<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW><BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>So you wanna know why Im so angery?<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>If Berserkers killed your<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>wife and daughter infront of you and <BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>you couldnt do anything for them. It<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>leaves a horrible taste in your mouth<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>and nightmares in your daily life. <BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>Kill Ten Of Them For Me!!!<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>If you would like to help me out go <BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>show those berserkers east of Hythloth Dungeon <BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>the power of vengeance. They camp in<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>the small area east of Hythloth. to<BR>" +
|
||||
"<BASEFONT COLOR=YELLOW>Bring me back ten of their skulls.<BR>" +
|
||||
"</BODY>", false, true);
|
||||
//----------------------/----------------------------------------------/
|
||||
AddImage( 430, 9, 10441);AddImageTiled( 40, 38, 17, 391, 9263 );AddImage( 6, 25, 10421 );AddImage( 34, 12, 10420 );AddImageTiled( 94, 25, 342, 15, 10304 );AddImageTiled( 40, 427, 415, 16, 10304 );AddImage( -10, 314, 10402 );AddImage( 56, 150, 10411 );AddImage( 155, 120, 2103 );AddImage( 136, 84, 96 );AddButton( 225, 390, 0xF7, 0xF8, 0, GumpButtonType.Reply, 0 ); }
|
||||
//----------------------/----------------------------------------------/
|
||||
public override void OnResponse( NetState state, RelayInfo info ){ Mobile from = state.Mobile; switch ( info.ButtonID ) { case 0:{ break; }}}}}
|
||||
@@ -0,0 +1,49 @@
|
||||
/* This file was created with
|
||||
Ilutzio's Questmaker. Enjoy! */
|
||||
using System;
|
||||
using Server;
|
||||
namespace Server.Items
|
||||
{
|
||||
public class BloodyBerserkerSkull : Item
|
||||
{
|
||||
[Constructable]
|
||||
public BloodyBerserkerSkull() : this(1)
|
||||
{ }
|
||||
[Constructable]
|
||||
public BloodyBerserkerSkull(int amountFrom, int amountTo) : this(Utility.RandomMinMax(amountFrom, amountTo))
|
||||
{ }
|
||||
[Constructable]
|
||||
|
||||
///////////The hexagon value ont he line below is the ItemID
|
||||
public BloodyBerserkerSkull(int amount) : base(6883)
|
||||
{
|
||||
|
||||
|
||||
///////////Item name
|
||||
Name = "Bloody Berserker Skull";
|
||||
|
||||
///////////Item hue
|
||||
Hue = 0x845;
|
||||
|
||||
///////////Stackable
|
||||
Stackable = true;
|
||||
|
||||
///////////Weight of one item
|
||||
Weight = 0.01;
|
||||
Amount = amount;
|
||||
|
||||
}
|
||||
public BloodyBerserkerSkull(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();
|
||||
}
|
||||
}
|
||||
}
|
||||
7
Scripts/Scripts-master/Quests/Berserker Quest/ReadMe.txt
Normal file
7
Scripts/Scripts-master/Quests/Berserker Quest/ReadMe.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
?:ASTRO DAEMON SCRIPTS:?
|
||||
Quest Department
|
||||
|
||||
You have downloaded the Berserker Quest.
|
||||
|
||||
.:Notes:.
|
||||
To add the quest giver just [add ike. Also the way the quest is set up he is to be placed near the road to the graveyard in britian. Feel free to edit the script however you need just don't claim it as yours.
|
||||
43
Scripts/Scripts-master/Quests/Berserker Quest/Vengeance.cs
Normal file
43
Scripts/Scripts-master/Quests/Berserker Quest/Vengeance.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
using System;
|
||||
using Server;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class Vengeance : Spellbook
|
||||
{
|
||||
public override int LabelNumber { get { return 1070971; } } // Tome of Lost Knowledge
|
||||
|
||||
[Constructable]
|
||||
public Vengeance() : base()
|
||||
{
|
||||
Name = "Vengeance";
|
||||
LootType = LootType.Blessed;
|
||||
Hue = 1161;
|
||||
|
||||
SkillBonuses.SetValues( 0, SkillName.Magery, 10.0 );
|
||||
Attributes.BonusInt = 15;
|
||||
Attributes.CastRecovery = 3;
|
||||
Attributes.CastSpeed = 2;
|
||||
Attributes.LowerManaCost = 30;
|
||||
Attributes.SpellDamage = 15;
|
||||
}
|
||||
|
||||
public Vengeance( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user