Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
86
Scripts/Scripts-master/Quests/Naruto Quest/GiganticSnake.cs
Normal file
86
Scripts/Scripts-master/Quests/Naruto Quest/GiganticSnake.cs
Normal file
@@ -0,0 +1,86 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a gigantic snake corpse" )]
|
||||
public class GiganticSnake : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public GiganticSnake() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "A Huge Snake";
|
||||
Body = 0x15;
|
||||
Hue = 33;
|
||||
BaseSoundID = 219;
|
||||
|
||||
SetStr( 2500, 4500 );
|
||||
SetDex( 500, 800 );
|
||||
SetInt( 66, 85 );
|
||||
|
||||
SetHits( 5000, 7000 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 30, 40 );
|
||||
|
||||
SetDamageType( ResistanceType.Physical, 40 );
|
||||
SetDamageType( ResistanceType.Poison, 60 );
|
||||
|
||||
SetResistance( ResistanceType.Physical, 100, 150 );
|
||||
SetResistance( ResistanceType.Fire, 5, 10 );
|
||||
SetResistance( ResistanceType.Cold, 10, 20 );
|
||||
SetResistance( ResistanceType.Poison, 70, 90 );
|
||||
SetResistance( ResistanceType.Energy, 10, 20 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 70.1, 100.0 );
|
||||
SetSkill( SkillName.MagicResist, 25.1, 40.0 );
|
||||
SetSkill( SkillName.Tactics, 65.1, 70.0 );
|
||||
SetSkill( SkillName.Wrestling, 60.1, 80.0 );
|
||||
|
||||
Fame = 2500;
|
||||
Karma = -2500;
|
||||
|
||||
VirtualArmor = 52;
|
||||
|
||||
PackItem( new Gold( 6000 ) );
|
||||
PackItem( new Bone( 100 ) );
|
||||
// TODO: Body parts
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Greater; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Greater : Poison.Deadly); } }
|
||||
|
||||
public override bool DeathAdderCharmable{ get{ return true; } }
|
||||
|
||||
public override int Meat{ get{ return 4; } }
|
||||
public override int Hides{ get{ return 15; } }
|
||||
//public override HideType HideType{ get{ return HideType.Dragon; } }
|
||||
|
||||
public GiganticSnake(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();
|
||||
|
||||
if ( BaseSoundID == -1 )
|
||||
BaseSoundID = 219;
|
||||
}
|
||||
}
|
||||
}
|
||||
146
Scripts/Scripts-master/Quests/Naruto Quest/HokageTsunade.cs
Normal file
146
Scripts/Scripts-master/Quests/Naruto Quest/HokageTsunade.cs
Normal file
@@ -0,0 +1,146 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using Server.ContextMenus;
|
||||
using Server.Gumps;
|
||||
using Server.Misc;
|
||||
using Server.Network;
|
||||
using Server.Spells;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "Hokage Tsunade's Corpse" )]
|
||||
public class Tsunade : Mobile
|
||||
{
|
||||
public virtual bool IsInvulnerable{ get{ return true; } }
|
||||
[Constructable]
|
||||
public Tsunade()
|
||||
{
|
||||
Name = "Hokage Tsunade";
|
||||
Body = 401;
|
||||
CantWalk = true;
|
||||
Hue = 1751;
|
||||
|
||||
Item Boots = new Boots();
|
||||
Boots.Hue = 1000;
|
||||
Boots.Name = "Non-Leather Boots";
|
||||
Boots.Movable = false;
|
||||
AddItem( Boots );
|
||||
|
||||
Item FancyShirt = new FancyShirt();
|
||||
FancyShirt.Hue = 1000;
|
||||
FancyShirt.Name = "Shirt";
|
||||
FancyShirt.Movable = false;
|
||||
AddItem( FancyShirt );
|
||||
|
||||
Item LongPants = new LongPants();
|
||||
LongPants.Hue = 1000;
|
||||
LongPants.Name = "Pants";
|
||||
LongPants.Movable = false;
|
||||
AddItem( LongPants );
|
||||
|
||||
Item Cloak = new Cloak();
|
||||
Cloak.Hue = 1000;
|
||||
Cloak.Name = "Cloak";
|
||||
Cloak.Movable = false;
|
||||
AddItem( Cloak );
|
||||
|
||||
AddItem( new LongHair( 254 ) );
|
||||
|
||||
|
||||
Blessed = true;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public Tsunade( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void GetContextMenuEntries(Mobile from, List<ContextMenuEntry> list)
|
||||
{
|
||||
base.GetContextMenuEntries( from, list );
|
||||
list.Add( new TsunadeEntry( 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 TsunadeEntry : ContextMenuEntry
|
||||
{
|
||||
private Mobile m_Mobile;
|
||||
private Mobile m_Giver;
|
||||
|
||||
public TsunadeEntry( 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;
|
||||
|
||||
{
|
||||
if ( ! mobile.HasGump( typeof( TsunadequestGump ) ) )
|
||||
{
|
||||
mobile.SendGump( new TsunadequestGump( mobile ));
|
||||
mobile.AddToBackpack( new TsunadeBook() );
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override bool OnDragDrop( Mobile from, Item dropped )
|
||||
{
|
||||
Mobile m = from;
|
||||
PlayerMobile mobile = m as PlayerMobile;
|
||||
|
||||
if ( mobile != null)
|
||||
{
|
||||
if( dropped is OrochimarusHeart)
|
||||
{
|
||||
if(dropped.Amount!=1)
|
||||
{
|
||||
this.PrivateOverheadMessage( MessageType.Regular, 1153, false, "That is not the amount I asked for.", mobile.NetState );
|
||||
return false;
|
||||
}
|
||||
|
||||
dropped.Delete();
|
||||
mobile.AddToBackpack( new NecklaceOfGenesis() );
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
else if ( dropped is OrochimarusHeart)
|
||||
{
|
||||
this.PrivateOverheadMessage( MessageType.Regular, 1153, 1054071, mobile.NetState );
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.PrivateOverheadMessage( MessageType.Regular, 1153, false, "I did not ask for this item.", mobile.NetState );
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
using System;
|
||||
using Server;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class NecklaceOfGenesis : BaseNecklace
|
||||
{
|
||||
|
||||
public override int ArtifactRarity{ get{ return 100; } }
|
||||
|
||||
[Constructable]
|
||||
|
||||
public NecklaceOfGenesis() : base( 0x1085 )
|
||||
{
|
||||
Weight = 1.0;
|
||||
Name = "Necklace Of Genesis";
|
||||
Hue = 2561;
|
||||
|
||||
Attributes.AttackChance = 10;
|
||||
Attributes.BonusHits = 10;
|
||||
Attributes.DefendChance = 5;
|
||||
Attributes.ReflectPhysical = 10;
|
||||
Attributes.SpellDamage = 5;
|
||||
Attributes.RegenHits = 2;
|
||||
|
||||
}
|
||||
|
||||
public override void OnAdded( object parent )
|
||||
{
|
||||
base.OnAdded( parent );
|
||||
if( parent is Mobile )
|
||||
{
|
||||
Mobile from = (Mobile)parent;
|
||||
from.Skills.Swords.Base += 10;
|
||||
}
|
||||
}
|
||||
public override void OnRemoved( object parent )
|
||||
{
|
||||
base.OnRemoved( parent );
|
||||
if( parent is Mobile )
|
||||
{
|
||||
Mobile from = (Mobile)parent;
|
||||
from.Skills.Swords.Base -= 10;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public NecklaceOfGenesis( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
163
Scripts/Scripts-master/Quests/Naruto Quest/Orochimaru.cs
Normal file
163
Scripts/Scripts-master/Quests/Naruto Quest/Orochimaru.cs
Normal file
@@ -0,0 +1,163 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class Orochimaru : BaseCreature
|
||||
{
|
||||
public override bool ClickTitle{ get{ return false; } }
|
||||
private bool m_TrueForm;
|
||||
|
||||
[Constructable]
|
||||
public Orochimaru() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Hue = 1000;
|
||||
|
||||
{
|
||||
|
||||
Body = 400;
|
||||
Name = "Orochimaru";
|
||||
}
|
||||
|
||||
SetStr( 500, 1500 );
|
||||
SetDex( 300, 300 );
|
||||
SetInt( 300, 300 );
|
||||
|
||||
SetDamage( 105, 233 );
|
||||
|
||||
SetHits( 10000, 12000 );
|
||||
|
||||
SetSkill( SkillName.Fencing, 88.8, 97.5 );
|
||||
SetSkill( SkillName.Macing, 99.9, 110.0 );
|
||||
SetSkill( SkillName.MagicResist, 25.0, 47.5 );
|
||||
SetSkill( SkillName.Swords, 200.0, 250.5 );
|
||||
SetSkill( SkillName.Tactics, 99.9, 110.0 );
|
||||
SetSkill( SkillName.Wrestling, 15.0, 37.5 );
|
||||
|
||||
Fame = 0;
|
||||
Karma = 0;
|
||||
|
||||
AddItem( new OrochimaruShirt() );
|
||||
AddItem( new OrochimaruPants() );
|
||||
AddItem( new OrochimaruBoots() );
|
||||
AddItem( new OrochimaruUnderShirt() );
|
||||
AddItem( new Katana() );
|
||||
|
||||
|
||||
AddItem( new LongHair( 1 ) );
|
||||
PackItem( new Gold( 6000 ) );
|
||||
//PackItem( new Gold( 60000 ) );
|
||||
//PackItem( new Gold( 60000 ) );
|
||||
//PackItem( new Gold( 60000 ) );
|
||||
//PackItem( new Gold( 60000 ) );
|
||||
//PackItem( new Gold( 60000 ) );
|
||||
//PackItem( new Gold( 60000 ) );
|
||||
PackItem( new OrochimarusHeart() );
|
||||
}
|
||||
|
||||
public override bool CanRummageCorpses{ get{ return true; } }
|
||||
public override bool BardImmune{ get{ return true; } }
|
||||
public override bool Unprovokable{ get{ return true; } }
|
||||
public override bool Uncalmable{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override bool AlwaysMurderer{ get{ return true; } }
|
||||
|
||||
public void spawnsnakes( Mobile target )
|
||||
{
|
||||
Map map = this.Map;
|
||||
|
||||
if ( map == null )
|
||||
return;
|
||||
|
||||
int snakes = 0;
|
||||
|
||||
foreach ( Mobile m in this.GetMobilesInRange( 10 ) )
|
||||
{
|
||||
if ( m is GiganticSnake || m is GiantSerpent || m is Snake )
|
||||
++snakes;
|
||||
}
|
||||
|
||||
if ( snakes < 4 )
|
||||
{
|
||||
int newsnakes = 1;
|
||||
|
||||
for ( int i = 0; i < newsnakes; ++i )
|
||||
{
|
||||
BaseCreature Snake;
|
||||
|
||||
switch ( Utility.Random( 6 ) )
|
||||
{
|
||||
default:
|
||||
case 0: case 1: Snake = new GiganticSnake(); break;
|
||||
case 2: case 3: Snake = new GiantSerpent(); break;
|
||||
case 4: case 5: Snake = new Snake(); break;
|
||||
}
|
||||
|
||||
Snake.Team = this.Team;
|
||||
|
||||
bool validLocation = false;
|
||||
Point3D loc = this.Location;
|
||||
|
||||
for ( int j = 0; !validLocation && j < 10; ++j )
|
||||
{
|
||||
int x = X + Utility.Random( 3 ) - 1;
|
||||
int y = Y + Utility.Random( 3 ) - 1;
|
||||
int z = map.GetAverageZ( x, y );
|
||||
|
||||
if ( validLocation = map.CanFit( x, y, this.Z, 16, false, false ) )
|
||||
loc = new Point3D( x, y, Z );
|
||||
else if ( validLocation = map.CanFit( x, y, z, 16, false, false ) )
|
||||
loc = new Point3D( x, y, z );
|
||||
}
|
||||
|
||||
Snake.MoveToWorld( loc, map );
|
||||
Snake.Combatant = target;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void DoSpecialAbility( Mobile target )
|
||||
{
|
||||
|
||||
if ( 0.75 >= Utility.RandomDouble() ) // 25% chance to more daemons
|
||||
spawnsnakes( target );
|
||||
|
||||
}
|
||||
|
||||
public override void OnGotMeleeAttack( Mobile attacker )
|
||||
{
|
||||
base.OnGotMeleeAttack( attacker );
|
||||
|
||||
DoSpecialAbility( attacker );
|
||||
}
|
||||
|
||||
public override void OnGaveMeleeAttack( Mobile defender )
|
||||
{
|
||||
base.OnGaveMeleeAttack( defender );
|
||||
|
||||
DoSpecialAbility( defender );
|
||||
}
|
||||
|
||||
public Orochimaru( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
|
||||
writer.Write( m_TrueForm );
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
|
||||
m_TrueForm = reader.ReadBool();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
|
||||
public class OrochimaruBoots : BaseShoes
|
||||
{
|
||||
[Constructable]
|
||||
public OrochimaruBoots() : this( 0 )
|
||||
{
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public OrochimaruBoots( int hue ) : base( 0x2307, hue )
|
||||
{
|
||||
Weight = 3.0;
|
||||
Name = "Orochimaru boots";
|
||||
Hue = 1;
|
||||
LootType = LootType.Blessed;
|
||||
}
|
||||
|
||||
public OrochimaruBoots( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class OrochimaruPants : BasePants
|
||||
{
|
||||
[Constructable]
|
||||
public OrochimaruPants() : this( 0 )
|
||||
{
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public OrochimaruPants( int hue ) : base( 0x1539, hue )
|
||||
{
|
||||
Weight = 2.0;
|
||||
Hue = 1;
|
||||
Name = "Orochimaru Legs";
|
||||
LootType = LootType.Blessed;
|
||||
}
|
||||
|
||||
public OrochimaruPants( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[FlipableAttribute( 0x1F7B, 0x1F7C )]
|
||||
public class OrochimaruShirt : BaseMiddleTorso
|
||||
{
|
||||
[Constructable]
|
||||
public OrochimaruShirt() : this( 0 )
|
||||
{
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public OrochimaruShirt( int hue ) : base( 0x1F7B, hue )
|
||||
{
|
||||
Weight = 2.0;
|
||||
Name = "Orochimaru shirt";
|
||||
Hue = 1;
|
||||
LootType = LootType.Blessed;
|
||||
}
|
||||
|
||||
public OrochimaruShirt( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
[FlipableAttribute( 0x1efd, 0x1efe )]
|
||||
public class OrochimaruUnderShirt : BaseShirt
|
||||
{
|
||||
[Constructable]
|
||||
public OrochimaruUnderShirt() : this( 0 )
|
||||
{
|
||||
}
|
||||
|
||||
[Constructable]
|
||||
public OrochimaruUnderShirt( int hue ) : base( 0x1EFD, hue )
|
||||
{
|
||||
Weight = 2.0;
|
||||
Name = "Orochimaru under shirt";
|
||||
Hue = 1;
|
||||
LootType = LootType.Blessed;
|
||||
}
|
||||
|
||||
public OrochimaruUnderShirt( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class OrochimarusHeart : Item
|
||||
{
|
||||
[Constructable]
|
||||
public OrochimarusHeart() : base( 7405 )
|
||||
{
|
||||
Movable = true;
|
||||
Name = "Heart of Orochimaru";
|
||||
Hue = 1000;
|
||||
}
|
||||
|
||||
public OrochimarusHeart( 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
68
Scripts/Scripts-master/Quests/Naruto Quest/Tsunadebook.cs
Normal file
68
Scripts/Scripts-master/Quests/Naruto Quest/Tsunadebook.cs
Normal file
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
using Server;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
// books: Brown 0xFEF, Tan 0xFF0, Red 0xFF1, Blue 0xFF2,
|
||||
// OpenSmall 0xFF3, Open 0xFF4, OpenOld 0xFBD, 0xFBE
|
||||
|
||||
public class TsunadeBook: BaseBook
|
||||
{
|
||||
private const string TITLE = "Assassination Of Orochimaru";
|
||||
private const string AUTHOR = "Hokage Tsunade";
|
||||
private const int PAGES = 2;
|
||||
private const bool WRITABLE = false;
|
||||
|
||||
[Constructable]
|
||||
public TsunadeBook() : base( Utility.RandomList( 0xFEF, 0xFF0, 0xFF1, 0xFF2 ), TITLE, AUTHOR, PAGES, WRITABLE )
|
||||
{
|
||||
// NOTE: There are 8 lines per page and
|
||||
// approx 22 to 24 characters per line.
|
||||
// 0----+----1----+----2----+
|
||||
int cnt = 0;
|
||||
string[] lines;
|
||||
|
||||
lines = new string[]
|
||||
{
|
||||
"Track down Orochimaru",
|
||||
"And kill him",
|
||||
"And Bring Me His Heart",
|
||||
};
|
||||
Pages[cnt++].Lines = lines;
|
||||
|
||||
lines = new string[]
|
||||
{
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
};
|
||||
Pages[cnt++].Lines = lines;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
public TsunadeBook( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int)0 );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
using System;
|
||||
using Server;
|
||||
using Server.Gumps;
|
||||
using Server.Network;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.Commands;
|
||||
|
||||
namespace Server.Gumps
|
||||
{
|
||||
public class TsunadequestGump : Gump
|
||||
{
|
||||
public static void Initialize()
|
||||
{
|
||||
CommandSystem.Register("TsunadequestGump", AccessLevel.GameMaster, new CommandEventHandler(TsunadequestGump_OnCommand));
|
||||
}
|
||||
|
||||
private static void TsunadequestGump_OnCommand( CommandEventArgs e )
|
||||
{
|
||||
e.Mobile.SendGump( new TsunadequestGump( e.Mobile ) );
|
||||
}
|
||||
|
||||
public TsunadequestGump( 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, "Orochimaru's Assassination" );
|
||||
|
||||
|
||||
AddHtml( 107, 140, 300, 230, "<BODY>" +
|
||||
//----------------------/----------------------------------------------/
|
||||
"<BASEFONT COLOR=GREEN>Hokage Tsunade looks at you vaugly. After she puts down her paper, she says If you are brave enough, I have an urgant mission for you<BR><BR>I take it you wish for me to continue. *Tsunade clears her throat* Well, Orochimaru is said to be currently hiding out someplace in The Fire Dungeon, We must kill him... He is a great threat to us all. <BR>" +
|
||||
"<BASEFONT COLOR=GREEN>Are you still interested?<BR><BR>What I would need you to do, is venture into The Fire Dungeon, Track him down, and kill him and any guards. I need you to bring me his heart, for proof, only because i haven't seen you around here." +
|
||||
"</BODY>", false, true);
|
||||
|
||||
// <BASEFONT COLOR=#7B6D20>
|
||||
|
||||
// AddLabel( 113, 135, 0x34, "Tsunade puts down her Papers and asks.." );
|
||||
// AddLabel( 113, 150, 0x34, "so you are going to help me?" );
|
||||
// AddLabel( 113, 165, 0x34, "Remember, I need his heart as proof..." );
|
||||
// AddLabel( 113, 180, 0x34, "You can find him in The Fire Dungeon." );
|
||||
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 ) //Function for GumpButtonType.Reply Buttons
|
||||
{
|
||||
Mobile from = state.Mobile;
|
||||
|
||||
switch ( info.ButtonID )
|
||||
{
|
||||
case 0: //Case uses the ActionIDs defenied above. Case 0 defenies the actions for the button with the action id 0
|
||||
{
|
||||
//Cancel
|
||||
from.SendMessage( "Hokage Tsunade goes back to her work." );
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user