#W# Initial Commit: Avatars Conquest

This commit is contained in:
WarrentyExpired 2026-07-04 10:35:30 -04:00
commit 5df497787a
7510 changed files with 416048 additions and 0 deletions

View file

@ -0,0 +1,221 @@
using System;
using Server;
using Server.Items;
using System.Collections;
using Server.Mobiles;
namespace Server.Items
{
public class CampAAddon : BaseAddon
{
private bool m_Sitting;
private bool m_North;
private bool m_South;
private bool m_East;
private bool m_West;
private static int[,] m_AddOnSimpleComponents = new int[,] {
{7134, 3, 1, 0}, // LOGS
{7137, 1, -2, 0}, // LOGS
{Utility.RandomList(749,2200), -2, -1, 0}, // WAGON
{Utility.RandomList(750,2169), -2, 3, 0}, // WAGON
{2861, 0, 3, 0}, // BENCH
{2861, 0, -2, 0}, // BENCH
{2860, -2, 1, 0}, // BENCH
{2860, 3, 0, 0}, // BENCH
};
[ Constructable ]
public CampAAddon()
{
Weight = -2.0;
int wagon = Utility.Random(3);
int logs = Utility.Random(3);
m_Sitting = true;
if ( Utility.RandomMinMax(1,3) == 1 )
m_Sitting = false;
m_North = true;
m_South = true;
m_East = true;
m_West = true;
int c = 0;
int d = 0;
int e = 0;
bool doit = true;
for (int i = 0; i < m_AddOnSimpleComponents.Length / 4; i++)
{
c++;
if ( m_AddOnSimpleComponents[i,0] == 749 || m_AddOnSimpleComponents[i,0] == 750 || m_AddOnSimpleComponents[i,0] == 2169 || m_AddOnSimpleComponents[i,0] == 2200 )
{
if ( wagon == 1 && ( m_AddOnSimpleComponents[i,0] == 749 || m_AddOnSimpleComponents[i,0] == 2200 ) )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( wagon == 2 && ( m_AddOnSimpleComponents[i,0] == 750 || m_AddOnSimpleComponents[i,0] == 2169 ) )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_AddOnSimpleComponents[i,0] == 7134 || m_AddOnSimpleComponents[i,0] == 7137 )
{
if ( logs == 1 && m_AddOnSimpleComponents[i,0] == 7134 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( logs == 2 && m_AddOnSimpleComponents[i,0] == 7137 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_Sitting )
{
doit = true;
if ( d < 4 ){ if ( Utility.RandomMinMax(1,4) == 1 ){ doit = false; } }
else if ( d < 3 ){ if ( Utility.RandomMinMax(1,3) == 1 ){ doit = false; } }
else if ( d < 2 ){ if ( Utility.RandomBool() ){ doit = false; } }
if ( e == 0 && c == 7 ){ doit = true; }
if ( e == 1 && c == 8 ){ doit = true; }
if ( !doit )
{
d++;
if ( c == 5 ){ m_North = false; }
else if ( c == 6 ){ m_South = false; }
else if ( c == 7 ){ m_East = false; }
else if ( c == 8 ){ m_West = false; }
}
else
{
e++;
AddonComponent ac = new AddonComponent( m_AddOnSimpleComponents[i,0] );
ac.Weight = -2.0;
AddComponent( ac, m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
}
}
AddComplexComponent( (BaseAddon) this, 4012, 0, 0, 0, 0, 0, "fire", 1);
}
public override void OnAfterSpawn()
{
base.OnAfterSpawn();
int mod = 0;
RemoveCitizens();
BaseCreature north = new CitizenNorth();
BaseCreature south = new CitizenSouth();
BaseCreature east = new CitizenEast();
BaseCreature west = new CitizenWest();
if ( !m_Sitting )
{
north.Delete(); north = new AdventurerNorth();
south.Delete(); south = new AdventurerSouth();
east.Delete(); east = new AdventurerEast();
west.Delete(); west = new AdventurerWest();
if ( Utility.RandomBool() )
{
mod = 1;
BaseMount mountN = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountN.Delete(); mountN = new Llama(); }
mountN.Rider = north;
north.Direction = Direction.North;
BaseMount mountS = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountS.Delete(); mountS = new Llama(); }
mountS.Rider = south;
south.Direction = Direction.South;
BaseMount mountE = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountE.Delete(); mountE = new Llama(); }
mountE.Rider = east;
east.Direction = Direction.East;
BaseMount mountW = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountW.Delete(); mountW = new Llama(); }
mountW.Rider = west;
west.Direction = Direction.West;
}
}
north.MoveToWorld( new Point3D( X, Y+3+mod, Z ), Map );
south.MoveToWorld( new Point3D( X, Y-2-mod, Z ), Map );
east.MoveToWorld( new Point3D( X-2-mod, Y+1, Z ), Map );
west.MoveToWorld( new Point3D( X+3+mod, Y, Z ), Map );
north.RangeHome = 0;
north.Home = north.Location;
north.OnAfterSpawn();
if ( !m_North ){ north.Delete(); }
south.RangeHome = 0;
south.Home = south.Location;
south.OnAfterSpawn();
if ( !m_South ){ south.Delete(); }
east.RangeHome = 0;
east.Home = east.Location;
east.OnAfterSpawn();
if ( !m_East ){ east.Delete(); }
west.RangeHome = 0;
west.Home = west.Location;
west.OnAfterSpawn();
if ( !m_West ){ west.Delete(); }
}
public CampAAddon( Serial serial ) : base( serial )
{
}
public override void OnDelete()
{
RemoveCitizens();
base.OnDelete();
}
public void RemoveCitizens()
{
ArrayList list = new ArrayList();
foreach ( Mobile m in this.GetMobilesInRange( 8 ) )
{
if ( m is Citizen )
list.Add( m );
}
for ( int i = 0; i < list.Count; ++i )
{
Mobile from = (Mobile)list[i];
from.Delete();
}
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource)
{
AddComplexComponent(addon, item, xoffset, yoffset, zoffset, hue, lightsource, null, 1);
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource, string name, int amount)
{
AddonComponent ac;
ac = new AddonComponent(item);
ac.Weight = -2.0;
if (name != null && name.Length > 0)
ac.Name = name;
if (hue != 0)
ac.Hue = hue;
if (amount > 1)
{
ac.Stackable = true;
ac.Amount = amount;
}
if (lightsource != -1)
ac.Light = LightType.Circle300;
addon.AddComponent(ac, xoffset, yoffset, zoffset);
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( 0 ); // Version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,221 @@
using System;
using Server;
using Server.Items;
using System.Collections;
using Server.Mobiles;
namespace Server.Items
{
public class CampBAddon : BaseAddon
{
private bool m_Sitting;
private bool m_North;
private bool m_South;
private bool m_East;
private bool m_West;
private static int[,] m_AddOnSimpleComponents = new int[,] {
{Utility.RandomList(750,2169), -2, -2, 0}, // WAGON
{Utility.RandomList(750,2169), 2, -2, 0}, // WAGON
{7137, -1, -2, 0}, // LOGS
{7134, 2, 1, 0}, // LOGS
{2861, 0, 2, 0}, // BENCH
{2861, 0, -2, 0}, // BENCH
{2860, -2, 0, 0}, // BENCH
{2860, 2, 0, 0}, // BENCH
};
[ Constructable ]
public CampBAddon()
{
Weight = -2.0;
int wagon = Utility.Random(3);
int logs = Utility.Random(3);
m_Sitting = true;
if ( Utility.RandomMinMax(1,3) == 1 )
m_Sitting = false;
m_North = true;
m_South = true;
m_East = true;
m_West = true;
int c = 0;
int d = 0;
int e = 0;
bool doit = true;
for (int i = 0; i < m_AddOnSimpleComponents.Length / 4; i++)
{
c++;
if ( m_AddOnSimpleComponents[i,0] == 749 || m_AddOnSimpleComponents[i,0] == 750 || m_AddOnSimpleComponents[i,0] == 2169 || m_AddOnSimpleComponents[i,0] == 2200 )
{
if ( wagon == 1 && m_AddOnSimpleComponents[i,1] == -2 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( wagon == 2 && m_AddOnSimpleComponents[i,1] == 2 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_AddOnSimpleComponents[i,0] == 7134 || m_AddOnSimpleComponents[i,0] == 7137 )
{
if ( logs == 1 && m_AddOnSimpleComponents[i,0] == 7134 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( logs == 2 && m_AddOnSimpleComponents[i,0] == 7137 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_Sitting )
{
doit = true;
if ( d < 4 ){ if ( Utility.RandomMinMax(1,4) == 1 ){ doit = false; } }
else if ( d < 3 ){ if ( Utility.RandomMinMax(1,3) == 1 ){ doit = false; } }
else if ( d < 2 ){ if ( Utility.RandomBool() ){ doit = false; } }
if ( e == 0 && c == 7 ){ doit = true; }
if ( e == 1 && c == 8 ){ doit = true; }
if ( !doit )
{
d++;
if ( c == 5 ){ m_North = false; }
else if ( c == 6 ){ m_South = false; }
else if ( c == 7 ){ m_East = false; }
else if ( c == 8 ){ m_West = false; }
}
else
{
e++;
AddonComponent ac = new AddonComponent( m_AddOnSimpleComponents[i,0] );
ac.Weight = -2.0;
AddComponent( ac, m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
}
}
AddComplexComponent( (BaseAddon) this, 10749, 0, 0, 0, 0, 0, "fire", 1);
}
public override void OnAfterSpawn()
{
base.OnAfterSpawn();
int mod = 0;
RemoveCitizens();
BaseCreature north = new CitizenNorth();
BaseCreature south = new CitizenSouth();
BaseCreature east = new CitizenEast();
BaseCreature west = new CitizenWest();
if ( !m_Sitting )
{
north.Delete(); north = new AdventurerNorth();
south.Delete(); south = new AdventurerSouth();
east.Delete(); east = new AdventurerEast();
west.Delete(); west = new AdventurerWest();
if ( Utility.RandomBool() )
{
mod = 1;
BaseMount mountN = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountN.Delete(); mountN = new Llama(); }
mountN.Rider = north;
north.Direction = Direction.North;
BaseMount mountS = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountS.Delete(); mountS = new Llama(); }
mountS.Rider = south;
south.Direction = Direction.South;
BaseMount mountE = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountE.Delete(); mountE = new Llama(); }
mountE.Rider = east;
east.Direction = Direction.East;
BaseMount mountW = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountW.Delete(); mountW = new Llama(); }
mountW.Rider = west;
west.Direction = Direction.West;
}
}
north.MoveToWorld( new Point3D( X, Y+2+mod, Z ), Map );
south.MoveToWorld( new Point3D( X, Y-2-mod, Z ), Map );
east.MoveToWorld( new Point3D( X-2-mod, Y, Z ), Map );
west.MoveToWorld( new Point3D( X+2+mod, Y, Z ), Map );
north.RangeHome = 0;
north.Home = north.Location;
north.OnAfterSpawn();
if ( !m_North ){ north.Delete(); }
south.RangeHome = 0;
south.Home = south.Location;
south.OnAfterSpawn();
if ( !m_South ){ south.Delete(); }
east.RangeHome = 0;
east.Home = east.Location;
east.OnAfterSpawn();
if ( !m_East ){ east.Delete(); }
west.RangeHome = 0;
west.Home = west.Location;
west.OnAfterSpawn();
if ( !m_West ){ west.Delete(); }
}
public CampBAddon( Serial serial ) : base( serial )
{
}
public override void OnDelete()
{
RemoveCitizens();
base.OnDelete();
}
public void RemoveCitizens()
{
ArrayList list = new ArrayList();
foreach ( Mobile m in this.GetMobilesInRange( 8 ) )
{
if ( m is Citizen )
list.Add( m );
}
for ( int i = 0; i < list.Count; ++i )
{
Mobile from = (Mobile)list[i];
from.Delete();
}
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource)
{
AddComplexComponent(addon, item, xoffset, yoffset, zoffset, hue, lightsource, null, 1);
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource, string name, int amount)
{
AddonComponent ac;
ac = new AddonComponent(item);
ac.Weight = -2.0;
if (name != null && name.Length > 0)
ac.Name = name;
if (hue != 0)
ac.Hue = hue;
if (amount > 1)
{
ac.Stackable = true;
ac.Amount = amount;
}
if (lightsource != -1)
ac.Light = LightType.Circle300;
addon.AddComponent(ac, xoffset, yoffset, zoffset);
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( 0 ); // Version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,221 @@
using System;
using Server;
using Server.Items;
using System.Collections;
using Server.Mobiles;
namespace Server.Items
{
public class CampCAddon : BaseAddon
{
private bool m_Sitting;
private bool m_North;
private bool m_South;
private bool m_East;
private bool m_West;
private static int[,] m_AddOnSimpleComponents = new int[,] {
{7135, -3, -2, 0}, // LOGS
{7138, 2, 1, 0}, // LOGS
{Utility.RandomList(749,2200), -3, 2, 0}, // WAGON
{Utility.RandomList(750,2169), -1, -3, 0}, // WAGON
{2861, -1, 3, 0}, // BENCH
{2861, 1, -3, 0}, // BENCH
{2860, -3, 0, 0}, // BENCH
{2860, 3, 0, 0}, // BENCH
};
[ Constructable ]
public CampCAddon()
{
Weight = -2.0;
int wagon = Utility.Random(3);
int logs = Utility.Random(3);
m_Sitting = true;
if ( Utility.RandomMinMax(1,3) == 1 )
m_Sitting = false;
m_North = true;
m_South = true;
m_East = true;
m_West = true;
int c = 0;
int d = 0;
int e = 0;
bool doit = true;
for (int i = 0; i < m_AddOnSimpleComponents.Length / 4; i++)
{
c++;
if ( m_AddOnSimpleComponents[i,0] == 749 || m_AddOnSimpleComponents[i,0] == 750 || m_AddOnSimpleComponents[i,0] == 2169 || m_AddOnSimpleComponents[i,0] == 2200 )
{
if ( wagon == 1 && ( m_AddOnSimpleComponents[i,0] == 749 || m_AddOnSimpleComponents[i,0] == 2200 ) )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( wagon == 2 && ( m_AddOnSimpleComponents[i,0] == 750 || m_AddOnSimpleComponents[i,0] == 2169 ) )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_AddOnSimpleComponents[i,0] == 7135 || m_AddOnSimpleComponents[i,0] == 7138 )
{
if ( logs == 1 && m_AddOnSimpleComponents[i,0] == 7135 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( logs == 2 && m_AddOnSimpleComponents[i,0] == 7138 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_Sitting )
{
doit = true;
if ( d < 4 ){ if ( Utility.RandomMinMax(1,4) == 1 ){ doit = false; } }
else if ( d < 3 ){ if ( Utility.RandomMinMax(1,3) == 1 ){ doit = false; } }
else if ( d < 2 ){ if ( Utility.RandomBool() ){ doit = false; } }
if ( e == 0 && c == 7 ){ doit = true; }
if ( e == 1 && c == 8 ){ doit = true; }
if ( !doit )
{
d++;
if ( c == 5 ){ m_North = false; }
else if ( c == 6 ){ m_South = false; }
else if ( c == 7 ){ m_East = false; }
else if ( c == 8 ){ m_West = false; }
}
else
{
e++;
AddonComponent ac = new AddonComponent( m_AddOnSimpleComponents[i,0] );
ac.Weight = -2.0;
AddComponent( ac, m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
}
}
AddComplexComponent( (BaseAddon) this, 996, 0, 0, 0, 0, 0, "fire", 1);
}
public override void OnAfterSpawn()
{
base.OnAfterSpawn();
int mod = 0;
RemoveCitizens();
BaseCreature north = new CitizenNorth();
BaseCreature south = new CitizenSouth();
BaseCreature east = new CitizenEast();
BaseCreature west = new CitizenWest();
if ( !m_Sitting )
{
north.Delete(); north = new AdventurerNorth();
south.Delete(); south = new AdventurerSouth();
east.Delete(); east = new AdventurerEast();
west.Delete(); west = new AdventurerWest();
if ( Utility.RandomBool() )
{
mod = 1;
BaseMount mountN = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountN.Delete(); mountN = new Llama(); }
mountN.Rider = north;
north.Direction = Direction.North;
BaseMount mountS = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountS.Delete(); mountS = new Llama(); }
mountS.Rider = south;
south.Direction = Direction.South;
BaseMount mountE = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountE.Delete(); mountE = new Llama(); }
mountE.Rider = east;
east.Direction = Direction.East;
BaseMount mountW = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountW.Delete(); mountW = new Llama(); }
mountW.Rider = west;
west.Direction = Direction.West;
}
}
north.MoveToWorld( new Point3D( X-1, Y+3+mod, Z ), Map );
south.MoveToWorld( new Point3D( X+1, Y-3-mod, Z ), Map );
east.MoveToWorld( new Point3D( X-3-mod, Y, Z ), Map );
west.MoveToWorld( new Point3D( X+3+mod, Y, Z ), Map );
north.RangeHome = 0;
north.Home = north.Location;
north.OnAfterSpawn();
if ( !m_North ){ north.Delete(); }
south.RangeHome = 0;
south.Home = south.Location;
south.OnAfterSpawn();
if ( !m_South ){ south.Delete(); }
east.RangeHome = 0;
east.Home = east.Location;
east.OnAfterSpawn();
if ( !m_East ){ east.Delete(); }
west.RangeHome = 0;
west.Home = west.Location;
west.OnAfterSpawn();
if ( !m_West ){ west.Delete(); }
}
public CampCAddon( Serial serial ) : base( serial )
{
}
public override void OnDelete()
{
RemoveCitizens();
base.OnDelete();
}
public void RemoveCitizens()
{
ArrayList list = new ArrayList();
foreach ( Mobile m in this.GetMobilesInRange( 8 ) )
{
if ( m is Citizen )
list.Add( m );
}
for ( int i = 0; i < list.Count; ++i )
{
Mobile from = (Mobile)list[i];
from.Delete();
}
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource)
{
AddComplexComponent(addon, item, xoffset, yoffset, zoffset, hue, lightsource, null, 1);
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource, string name, int amount)
{
AddonComponent ac;
ac = new AddonComponent(item);
ac.Weight = -2.0;
if (name != null && name.Length > 0)
ac.Name = name;
if (hue != 0)
ac.Hue = hue;
if (amount > 1)
{
ac.Stackable = true;
ac.Amount = amount;
}
if (lightsource != -1)
ac.Light = LightType.Circle300;
addon.AddComponent(ac, xoffset, yoffset, zoffset);
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( 0 ); // Version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,222 @@
using System;
using Server;
using Server.Items;
using System.Collections;
using Server.Mobiles;
namespace Server.Items
{
public class CampDAddon : BaseAddon
{
private bool m_Sitting;
private bool m_North;
private bool m_South;
private bool m_East;
private bool m_West;
private static int[,] m_AddOnSimpleComponents = new int[,] {
{Utility.RandomList(749,2200), -1, -2, 0}, // WAGON
{Utility.RandomList(750,2169), -2, 3, 0}, // WAGON2169
{7134, 3, -1, 0}, // LOGS
{7137, 0, -2, 0}, // LOGS
{2861, 0, 3, 0}, // BENCH
{2861, 1, -2, 0}, // BENCH
{2860, -2, 0, 0}, // BENCH
{2860, 3, 0, 0}, // BENCH
};
[ Constructable ]
public CampDAddon()
{
Weight = -2.0;
int wagon = Utility.Random(3);
int logs = Utility.Random(3);
m_Sitting = true;
if ( Utility.RandomMinMax(1,3) == 1 )
m_Sitting = false;
m_North = true;
m_South = true;
m_East = true;
m_West = true;
int c = 0;
int d = 0;
int e = 0;
bool doit = true;
for (int i = 0; i < m_AddOnSimpleComponents.Length / 4; i++)
{
c++;
if ( m_AddOnSimpleComponents[i,0] == 749 || m_AddOnSimpleComponents[i,0] == 750 || m_AddOnSimpleComponents[i,0] == 2169 || m_AddOnSimpleComponents[i,0] == 2200 )
{
if ( wagon == 1 && ( m_AddOnSimpleComponents[i,0] == 749 || m_AddOnSimpleComponents[i,0] == 2200 ) )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( wagon == 2 && ( m_AddOnSimpleComponents[i,0] == 750 || m_AddOnSimpleComponents[i,0] == 2169 ) )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_AddOnSimpleComponents[i,0] == 7134 || m_AddOnSimpleComponents[i,0] == 7137 )
{
if ( logs == 1 && m_AddOnSimpleComponents[i,0] == 7134 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
else if ( logs == 2 && m_AddOnSimpleComponents[i,0] == 7137 )
AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
else if ( m_Sitting )
{
doit = true;
if ( d < 4 ){ if ( Utility.RandomMinMax(1,4) == 1 ){ doit = false; } }
else if ( d < 3 ){ if ( Utility.RandomMinMax(1,3) == 1 ){ doit = false; } }
else if ( d < 2 ){ if ( Utility.RandomBool() ){ doit = false; } }
if ( e == 0 && c == 7 ){ doit = true; }
if ( e == 1 && c == 8 ){ doit = true; }
if ( !doit )
{
d++;
if ( c == 5 ){ m_North = false; }
else if ( c == 6 ){ m_South = false; }
else if ( c == 7 ){ m_East = false; }
else if ( c == 8 ){ m_West = false; }
}
else
{
e++;
AddonComponent ac = new AddonComponent( m_AddOnSimpleComponents[i,0] );
ac.Weight = -2.0;
AddComponent( ac, m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );
}
}
}
AddComplexComponent( (BaseAddon) this, 4012, 0, 0, 0, 0, 0, "fire", 1);
AddComplexComponent( (BaseAddon) this, 3555, 0, 0, 2, 0, 0, "fire", 1);
}
public override void OnAfterSpawn()
{
base.OnAfterSpawn();
int mod = 0;
RemoveCitizens();
BaseCreature north = new CitizenNorth();
BaseCreature south = new CitizenSouth();
BaseCreature east = new CitizenEast();
BaseCreature west = new CitizenWest();
if ( !m_Sitting )
{
north.Delete(); north = new AdventurerNorth();
south.Delete(); south = new AdventurerSouth();
east.Delete(); east = new AdventurerEast();
west.Delete(); west = new AdventurerWest();
if ( Utility.RandomBool() )
{
mod = 1;
BaseMount mountN = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountN.Delete(); mountN = new Llama(); }
mountN.Rider = north;
north.Direction = Direction.North;
BaseMount mountS = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountS.Delete(); mountS = new Llama(); }
mountS.Rider = south;
south.Direction = Direction.South;
BaseMount mountE = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountE.Delete(); mountE = new Llama(); }
mountE.Rider = east;
east.Direction = Direction.East;
BaseMount mountW = new Horse(); if ( Utility.RandomMinMax(1,20) == 1 ){ mountW.Delete(); mountW = new Llama(); }
mountW.Rider = west;
west.Direction = Direction.West;
}
}
north.MoveToWorld( new Point3D( X, Y+3+mod, Z ), Map );
south.MoveToWorld( new Point3D( X+1, Y-2-mod, Z ), Map );
east.MoveToWorld( new Point3D( X-2-mod, Y, Z ), Map );
west.MoveToWorld( new Point3D( X+3+mod, Y, Z ), Map );
north.RangeHome = 0;
north.Home = north.Location;
north.OnAfterSpawn();
if ( !m_North ){ north.Delete(); }
south.RangeHome = 0;
south.Home = south.Location;
south.OnAfterSpawn();
if ( !m_South ){ south.Delete(); }
east.RangeHome = 0;
east.Home = east.Location;
east.OnAfterSpawn();
if ( !m_East ){ east.Delete(); }
west.RangeHome = 0;
west.Home = west.Location;
west.OnAfterSpawn();
if ( !m_West ){ west.Delete(); }
}
public CampDAddon( Serial serial ) : base( serial )
{
}
public override void OnDelete()
{
RemoveCitizens();
base.OnDelete();
}
public void RemoveCitizens()
{
ArrayList list = new ArrayList();
foreach ( Mobile m in this.GetMobilesInRange( 8 ) )
{
if ( m is Citizen )
list.Add( m );
}
for ( int i = 0; i < list.Count; ++i )
{
Mobile from = (Mobile)list[i];
from.Delete();
}
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource)
{
AddComplexComponent(addon, item, xoffset, yoffset, zoffset, hue, lightsource, null, 1);
}
private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource, string name, int amount)
{
AddonComponent ac;
ac = new AddonComponent(item);
ac.Weight = -2.0;
if (name != null && name.Length > 0)
ac.Name = name;
if (hue != 0)
ac.Hue = hue;
if (amount > 1)
{
ac.Stackable = true;
ac.Amount = amount;
}
if (lightsource != -1)
ac.Light = LightType.Circle300;
addon.AddComponent(ac, xoffset, yoffset, zoffset);
}
public override void Serialize( GenericWriter writer )
{
base.Serialize( writer );
writer.Write( 0 ); // Version
}
public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,307 @@
using System;
using System.Collections;
using Server.Items;
using Server.ContextMenus;
using Server.Misc;
using Server.Network;
namespace Server.Mobiles
{
public class Citizen : BaseCreature
{
public override bool ClickTitle{ get{ return false; } }
public override bool ShowFameTitle { get { return false; } }
public override bool DeleteCorpseOnDeath{ get{ return true; } }
public DateTime m_NextTalk;
public DateTime NextTalk{ get{ return m_NextTalk; } set{ m_NextTalk = value; } }
public override void OnMovement( Mobile m, Point3D oldLocation )
{
if ( DateTime.Now >= m_NextTalk && InRange( m, 30 ) )
{
if ( Utility.RandomBool() ){ Server.Misc.CitizenTalking.CitizenTalk( this ); }
m_NextTalk = (DateTime.Now + TimeSpan.FromSeconds( Utility.RandomMinMax( 15, 45 ) ));
if ( this is CitizenNorth || this is CitizenSouth || this is CitizenEast || this is CitizenWest )
Server.Misc.CitizenDressing.RemoveMyGear( this );
}
}
[Constructable]
public Citizen() : base( AIType.AI_Citizen, FightMode.None, 10, 1, 0.2, 0.4 )
{
SpeechHue = Utility.RandomSpeechHue();
Title = Server.Misc.CitizenTitles.CitizenTitle( this );
Hue = Utility.RandomSkinHue();
CantWalk = true;
NameHue = Utility.RandomOrangeHue();
Invulnerable = true;
Clan = Clan.Citizen;
SetStr( 300 );
SetDex( 300 );
SetInt( 300 );
SetDamage( 30, 50 );
int hair = Utility.RandomHairHue();
if ( this.Female = Utility.RandomBool() )
{
Body = 0x191;
Name = NameList.RandomName( "female" );
}
else
{
Body = 0x190;
Name = NameList.RandomName( "male" );
if ( Utility.RandomBool() ){ Utility.AssignRandomFacialHair( this, hair ); }
}
Utility.AssignRandomHair( this, hair );
Server.Misc.CitizenDressing.CitizenDress( this, 0 );
}
public override void OnThink()
{
}
public override bool IsEnemy( Mobile m )
{
return false;
}
public Citizen( 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 AdventurerEast : Citizen
{
[Constructable]
public AdventurerEast() : base( )
{
Direction = Direction.East;
}
public AdventurerEast( 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 AdventurerWest : Citizen
{
[Constructable]
public AdventurerWest() : base( )
{
Direction = Direction.West;
}
public AdventurerWest( 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 AdventurerSouth : Citizen
{
[Constructable]
public AdventurerSouth() : base( )
{
Direction = Direction.South;
}
public AdventurerSouth( 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 AdventurerNorth : Citizen
{
[Constructable]
public AdventurerNorth() : base( )
{
Direction = Direction.North;
}
public AdventurerNorth( 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 CitizenEast : Citizen
{
[Constructable]
public CitizenEast() : base( )
{
Direction = Direction.East;
}
public CitizenEast( Serial serial ) : base( serial )
{
}
public override void OnAfterSpawn()
{
base.OnAfterSpawn();
Server.Misc.CitizenDressing.RemoveMyGear( this );
}
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 CitizenWest : Citizen
{
[Constructable]
public CitizenWest() : base( )
{
Direction = Direction.West;
}
public CitizenWest( Serial serial ) : base( serial )
{
}
public override void OnAfterSpawn()
{
base.OnAfterSpawn();
Server.Misc.CitizenDressing.RemoveMyGear( this );
}
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 CitizenSouth : Citizen
{
[Constructable]
public CitizenSouth() : base( )
{
Direction = Direction.South;
}
public CitizenSouth( Serial serial ) : base( serial )
{
}
public override void OnAfterSpawn()
{
base.OnAfterSpawn();
Server.Misc.CitizenDressing.RemoveMyGear( this );
}
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 CitizenNorth : Citizen
{
[Constructable]
public CitizenNorth() : base( )
{
Direction = Direction.North;
}
public CitizenNorth( Serial serial ) : base( serial )
{
}
public override void OnThink()
{
Server.Misc.CitizenDressing.RemoveMyGear( this );
}
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();
}
}
}

View file

@ -0,0 +1,463 @@
using System;
using Server.Items;
using Server.Misc;
namespace Server.Misc
{
class CitizenDressing
{
public static void CitizenDress( Mobile m, int job )
{
bool specific = false;
if ( job > 0 )
specific = true;
if ( job < 1 ){ job = Utility.RandomMinMax(1,3); }
int weapon = Utility.Random( 40 );
bool shield = true;
if ( job == 1 ) // FIGHTER
{
weapon = Utility.RandomMinMax( 4, 32 );
if ( !specific && Utility.RandomMinMax(1,35) == 1 )
weapon = Utility.RandomMinMax( 37, 39 );
if ( Utility.RandomMinMax(1,20) == 1 )
{
if ( Utility.RandomBool() ){ m.AddItem( new BoneArms() ); } else { m.AddItem( new OrcHelm() ); }
m.AddItem( new BoneChest() );
m.AddItem( new BoneGloves() );
m.AddItem( new BoneHelm() );
m.AddItem( new BoneLegs() );
}
else
{
switch ( Utility.Random( 10 ) )
{
case 0: m.AddItem( new PlateHelm() ); break;
case 1: m.AddItem( new ChainCoif() ); break;
case 2: m.AddItem( new Bascinet() ); break;
case 3: m.AddItem( new CloseHelm() ); break;
case 4: m.AddItem( new Helmet() ); break;
case 5: m.AddItem( new NorseHelm() ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new PlateArms() ); break;
case 1: m.AddItem( new RingmailArms() ); break;
}
switch ( Utility.Random( 2 ) )
{
case 0: m.AddItem( new PlateGorget() ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new PlateLegs() ); break;
case 1: m.AddItem( new RingmailLegs() ); break;
case 2: m.AddItem( new ChainLegs() ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new PlateGloves() ); break;
case 1: m.AddItem( new RingmailGloves() ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: if ( m.Female && Utility.RandomBool() ){ m.AddItem( new FemalePlateChest() ); } else { m.AddItem( new PlateChest() ); } break;
case 1: m.AddItem( new RingmailChest() ); break;
case 2: m.AddItem( new ChainChest() ); break;
}
}
switch ( Utility.Random( 2 ) )
{
case 0: m.AddItem( new Boots() ); break;
case 1: m.AddItem( new ThighBoots() ); break;
}
switch ( Utility.Random( 2 ) )
{
case 0: m.AddItem( new Cloak( Utility.RandomHue() ) ); break;
}
switch ( Utility.Random( 10 ) )
{
case 0: m.AddItem( new Robe( Utility.RandomHue() ) ); break;
}
}
else if ( job == 2 ) // THIEF
{
weapon = Utility.RandomList( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 13, 37, 38, 39 );
switch ( Utility.Random( 2 ) )
{
case 0: m.AddItem( new LeatherCap() ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new StuddedArms() ); break;
case 1: m.AddItem( new LeatherArms() ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new StuddedGorget() ); break;
case 1: m.AddItem( new LeatherGorget() ); break;
}
switch ( Utility.Random( 4 ) )
{
case 0: m.AddItem( new LeatherLegs() ); break;
case 1: m.AddItem( new LeatherShorts() ); break;
case 2: m.AddItem( new LeatherSkirt() ); break;
case 3: m.AddItem( new StuddedLegs() ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new LeatherGloves() ); break;
case 1: m.AddItem( new StuddedGloves() ); break;
}
switch ( Utility.Random( 2 ) )
{
case 0: if ( m.Female && Utility.RandomBool() ){ m.AddItem( new FemaleStuddedChest() ); } else { m.AddItem( new StuddedChest() ); } break;
case 1: if ( m.Female && Utility.RandomBool() ){ m.AddItem( new FemaleLeatherChest() ); } else { m.AddItem( new LeatherChest() ); } break;
}
switch ( Utility.Random( 2 ) )
{
case 0: m.AddItem( new Boots() ); break;
case 1: m.AddItem( new ThighBoots() ); break;
}
switch ( Utility.Random( 2 ) )
{
case 0: m.AddItem( new Cloak( Utility.RandomHue() ) ); break;
}
switch ( Utility.Random( 10 ) )
{
case 0: m.AddItem( new Robe( Utility.RandomHue() ) ); break;
}
}
else if ( job == 3 ) // WIZARD
{
weapon = Utility.RandomList( 0, 1, 2, 3, 5, 7, 9, 30, 33, 34, 35, 36, 38, 39 );
int robeHue = Utility.RandomHue();
int cloakHue = Utility.RandomHue();
int hatHue = Utility.RandomList( robeHue, cloakHue );
bool robed = false;
bool cloaked = false;
switch ( Utility.Random( 5 ) )
{
case 0: m.AddItem( new FancyShirt( Utility.RandomHue() ) ); break;
case 1: m.AddItem( new Doublet( Utility.RandomHue() ) ); break;
case 2: m.AddItem( new Shirt( Utility.RandomHue() ) ); break;
case 3: m.AddItem( new Tunic( Utility.RandomHue() ) ); break;
case 4: m.AddItem( new Surcoat( Utility.RandomHue() ) ); break;
}
if ( m.Female )
{
switch ( Utility.Random( 4 ) )
{
case 0: m.AddItem( new Skirt( Utility.RandomHue() ) ); break;
case 1: m.AddItem( new Kilt( Utility.RandomHue() ) ); break;
case 2: m.AddItem( new LongPants( Utility.RandomHue() ) ); break;
case 3: m.AddItem( new ShortPants( Utility.RandomHue() ) ); break;
}
}
else
{
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new LongPants( Utility.RandomHue() ) ); break;
case 1: m.AddItem( new ShortPants( Utility.RandomHue() ) ); break;
case 2: m.AddItem( new Kilt( Utility.RandomHue() ) ); break;
}
}
switch ( Utility.Random( 4 ) )
{
case 0: m.AddItem( new Shoes( Utility.RandomNeutralHue() ) ); break;
case 1: m.AddItem( new Boots( Utility.RandomNeutralHue() ) ); break;
case 2: m.AddItem( new Sandals( Utility.RandomNeutralHue() ) ); break;
case 3: m.AddItem( new ThighBoots( Utility.RandomNeutralHue() ) ); break;
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new LeatherGloves() ); break;
}
if ( Utility.RandomBool() ){ m.AddItem( new Cloak( cloakHue ) ); cloaked = true; }
switch ( Utility.Random( 5 ) )
{
case 0: if ( m.Female ){ m.AddItem( new PlainDress( robeHue ) ); } else { m.AddItem( new Robe( robeHue ) ); } robed = true; break;
case 1: if ( m.Female ){ m.AddItem( new FancyDress( robeHue ) ); } else { m.AddItem( new Robe( robeHue ) ); } robed = true; break;
case 2: m.AddItem( new Robe( robeHue ) ); robed = true; break;
}
if ( robed && !cloaked ){ hatHue = robeHue; }
else if ( !robed && cloaked ){ hatHue = cloakHue; }
switch ( Utility.Random( 13 ) )
{
case 0: m.AddItem( new FloppyHat( hatHue ) ); break;
case 1: m.AddItem( new Hood( hatHue ) ); break;
case 2: m.AddItem( new WideBrimHat( hatHue ) ); break;
case 3: m.AddItem( new Cap( hatHue ) ); break;
case 4: m.AddItem( new SkullCap( hatHue ) ); break;
case 5: m.AddItem( new Bandana( hatHue ) ); break;
case 6: m.AddItem( new FeatheredHat( hatHue ) ); break;
case 7: m.AddItem( new Hood( hatHue ) ); break;
case 8: m.AddItem( new WizardsHat( hatHue ) ); break;
case 9: m.AddItem( new WizardsHat( hatHue ) ); break;
}
}
else if ( job == 4 ) // BRIGAND
{
weapon = Utility.RandomList( 1000 );
switch ( Utility.Random( 8 ))
{
case 0: m.AddItem( new Longsword() ); break;
case 1: m.AddItem( new Cutlass() ); break;
case 2: m.AddItem( new Broadsword() ); break;
case 3: m.AddItem( new Axe() ); break;
case 4: m.AddItem( new Club() ); break;
case 5: m.AddItem( new Dagger() ); break;
case 6: m.AddItem( new Rapier() ); break;
case 7: m.AddItem( new Whip() ); break;
}
if ( Utility.RandomBool() )
{
switch ( Utility.Random( 4 ))
{
case 0: m.AddItem( new Buckler() ); break;
case 1: m.AddItem( new WoodenShield() ); break;
case 2: m.AddItem( new WoodenKiteShield() ); break;
case 3: m.AddItem( new MetalShield() ); break;
}
}
switch ( Utility.Random( 5 ) )
{
case 0: m.AddItem( new FancyShirt( Utility.RandomHue() ) ); break;
case 1: m.AddItem( new Doublet( Utility.RandomHue() ) ); break;
case 2: m.AddItem( new Shirt( Utility.RandomHue() ) ); break;
case 3: m.AddItem( new Tunic( Utility.RandomHue() ) ); break;
case 4: m.AddItem( new Surcoat( Utility.RandomHue() ) ); break;
}
if ( m.Female )
{
switch ( Utility.Random( 4 ) )
{
case 0: m.AddItem( new Skirt( Utility.RandomHue() ) ); break;
case 1: m.AddItem( new Kilt( Utility.RandomHue() ) ); break;
case 2: m.AddItem( new LongPants( Utility.RandomHue() ) ); break;
case 3: m.AddItem( new ShortPants( Utility.RandomHue() ) ); break;
}
}
else
{
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new LongPants( Utility.RandomHue() ) ); break;
case 1: m.AddItem( new ShortPants( Utility.RandomHue() ) ); break;
case 2: m.AddItem( new Kilt( Utility.RandomHue() ) ); break;
}
}
switch ( Utility.Random( 4 ) )
{
case 0: m.AddItem( new Shoes( Utility.RandomNeutralHue() ) ); break;
case 1: m.AddItem( new Boots( Utility.RandomNeutralHue() ) ); break;
case 2: m.AddItem( new Sandals( Utility.RandomNeutralHue() ) ); break;
case 3: m.AddItem( new ThighBoots( Utility.RandomNeutralHue() ) ); break;
}
if ( Utility.RandomBool() )
{
switch ( Utility.Random( 7 ) )
{
case 0: m.AddItem( new FloppyHat( Utility.RandomHue() ) ); break;
case 1: m.AddItem( new Hood( Utility.RandomHue() ) ); break;
case 2: m.AddItem( new WideBrimHat( Utility.RandomHue() ) ); break;
case 3: m.AddItem( new Cap( Utility.RandomHue() ) ); break;
case 4: m.AddItem( new SkullCap( Utility.RandomHue() ) ); break;
case 5: m.AddItem( new Bandana( Utility.RandomHue() ) ); break;
case 6: m.AddItem( new FeatheredHat( Utility.RandomHue() ) ); break;
}
}
if ( Utility.RandomBool() )
{
m.AddItem( new Cloak( Utility.RandomHue() ) );
}
if ( Utility.RandomBool() )
{
m.AddItem( new Robe( Utility.RandomHue() ) );
}
}
else if ( job == 5 ) // EVIL MAGE
{
weapon = 1000;
int robeHue = Utility.RandomEvilHue();
int cloakHue = Utility.RandomEvilHue();
int shirtHue = Utility.RandomEvilHue();
int legsHue = Utility.RandomEvilHue();
int hatHue = Utility.RandomList( robeHue, cloakHue );
bool robed = false;
bool cloaked = false;
switch ( Utility.Random( 5 ) )
{
case 0: m.AddItem( new FancyShirt( shirtHue ) ); break;
case 1: m.AddItem( new Doublet( shirtHue ) ); break;
case 2: m.AddItem( new Shirt( shirtHue ) ); break;
case 3: m.AddItem( new Tunic( shirtHue ) ); break;
case 4: m.AddItem( new Surcoat( shirtHue ) ); break;
}
if ( m.Female )
{
switch ( Utility.Random( 4 ) )
{
case 0: m.AddItem( new Skirt( legsHue ) ); break;
case 1: m.AddItem( new Kilt( legsHue ) ); break;
case 2: m.AddItem( new LongPants( legsHue ) ); break;
case 3: m.AddItem( new ShortPants( legsHue ) ); break;
}
}
else
{
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new LongPants( legsHue ) ); break;
case 1: m.AddItem( new ShortPants( legsHue ) ); break;
case 2: m.AddItem( new Kilt( legsHue ) ); break;
}
}
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new Shoes( Utility.RandomEvilHue() ) ); break;
case 1: m.AddItem( new Boots() ); break;
case 2: m.AddItem( new ThighBoots() ); break;
}
if ( Utility.RandomBool() ){ m.AddItem( new Cloak( cloakHue ) ); cloaked = true; }
switch ( Utility.Random( 3 ) )
{
case 0: if ( m.Female ){ m.AddItem( new PlainDress( robeHue ) ); } else { m.AddItem( new Robe( robeHue ) ); } robed = true; break;
case 1: if ( m.Female ){ m.AddItem( new FancyDress( robeHue ) ); } else { m.AddItem( new Robe( robeHue ) ); } robed = true; break;
case 2: m.AddItem( new Robe( robeHue ) ); robed = true; break;
}
if ( robed && !cloaked ){ hatHue = robeHue; }
else if ( !robed && cloaked ){ hatHue = cloakHue; }
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new Hood( hatHue ) ); break;
case 1: m.AddItem( new WizardsHat( hatHue ) ); break;
}
}
switch ( weapon )
{
case 0: m.AddItem( new ButcherKnife() ); break;
case 1: m.AddItem( new Cleaver() ); break;
case 2: m.AddItem( new Dagger() ); break;
case 3: m.AddItem( new SkinningKnife() ); break;
case 4: m.AddItem( new Broadsword() ); break;
case 5: m.AddItem( new Cutlass() ); break;
case 6: m.AddItem( new Katana() ); break;
case 7: m.AddItem( new Kryss() ); break;
case 8: m.AddItem( new Longsword() ); break;
case 9: m.AddItem( new Scimitar() ); break;
case 10: m.AddItem( new ThinLongsword() ); break;
case 11: m.AddItem( new VikingSword() ); break;
case 12: m.AddItem( new Scythe() ); shield = false; break;
case 13: m.AddItem( new Rapier() ); break;
case 14: m.AddItem( new BattleAxe() ); shield = false; break;
case 15: m.AddItem( new DoubleAxe() ); shield = false; break;
case 16: m.AddItem( new GreatAxe() ); shield = false; break;
case 17: m.AddItem( new LargeBattleAxe() ); shield = false; break;
case 18: m.AddItem( new Pickaxe() ); shield = false; break;
case 19: m.AddItem( new TwoHandedAxe() ); shield = false; break;
case 20: m.AddItem( new WarAxe() ); shield = false; break;
case 21: m.AddItem( new Axe() ); shield = false; break;
case 22: m.AddItem( new Spear() ); shield = false; break;
case 23: m.AddItem( new Pitchfork() ); shield = false; break;
case 24: m.AddItem( new Pike() ); shield = false; break;
case 25: m.AddItem( new Bardiche() ); shield = false; break;
case 26: m.AddItem( new Halberd() ); shield = false; break;
case 27: m.AddItem( new Club() ); break;
case 28: m.AddItem( new HammerPick() ); break;
case 29: m.AddItem( new Mace() ); break;
case 30: m.AddItem( new Maul() ); break;
case 31: m.AddItem( new WarHammer() ); break;
case 32: m.AddItem( new WarMace() ); break;
case 33: m.AddItem( new BlackStaff() ); shield = false; break;
case 34: m.AddItem( new GnarledStaff() ); shield = false; break;
case 35: m.AddItem( new QuarterStaff() ); shield = false; break;
case 36: m.AddItem( new ShepherdsCrook() ); shield = false; break;
case 37: m.AddItem( new HeavyCrossbow() ); shield = false; break;
case 38: m.AddItem( new Bow() ); shield = false; break;
case 39: m.AddItem( new Crossbow() ); shield = false; break;
}
if ( shield && job == 1 && Utility.RandomBool() )
{
switch ( Utility.Random( 8 ) )
{
case 0: m.AddItem( new BronzeShield() ); break;
case 1: m.AddItem( new ChaosShield() ); break;
case 2: m.AddItem( new HeaterShield() ); break;
case 3: m.AddItem( new MetalKiteShield() ); break;
case 4: m.AddItem( new MetalShield() ); break;
case 5: m.AddItem( new OrderShield() ); break;
case 6: m.AddItem( new WoodenKiteShield() ); break;
case 7: m.AddItem( new WoodenShield() ); break;
}
}
else if ( shield && job == 2 && Utility.RandomBool() )
{
switch ( Utility.Random( 3 ) )
{
case 0: m.AddItem( new Buckler() ); break;
case 1: m.AddItem( new WoodenKiteShield() ); break;
case 2: m.AddItem( new WoodenShield() ); break;
}
}
else if ( shield && job == 3 && Utility.RandomBool() )
{
switch ( Utility.Random( 4 ) )
{
case 0: m.AddItem( new Buckler() ); break;
}
}
}
public static void RemoveMyGear( Mobile m )
{
if ( m.FindItemOnLayer( Layer.OneHanded ) != null ) { m.FindItemOnLayer( Layer.OneHanded ).Delete(); }
if ( m.FindItemOnLayer( Layer.TwoHanded ) != null ) { m.FindItemOnLayer( Layer.TwoHanded ).Delete(); }
if ( m.FindItemOnLayer( Layer.FirstValid ) != null ) { m.FindItemOnLayer( Layer.FirstValid ).Delete(); }
if ( m.FindItemOnLayer( Layer.Helm ) != null ) { m.FindItemOnLayer( Layer.Helm ).Delete(); }
if ( m.FindItemOnLayer( Layer.Gloves ) != null ) { m.FindItemOnLayer( Layer.Gloves ).Delete(); }
}
}
}

View file

@ -0,0 +1,165 @@
using System;
using Server.Items;
using Server.Misc;
namespace Server.Misc
{
class CitizenTalking
{
public static void CitizenTalk( Mobile m )
{
string sSourceName = NameList.RandomName( "male" );
string sSourceJob = NameList.RandomName( "career" );
if ( Utility.RandomBool() )
sSourceName = NameList.RandomName( "female" );
string sSource = "I heard about";
switch( Utility.RandomMinMax( 1, 13 ) )
{
case 1: sSource = "Rumors are spoken about"; break;
case 2: sSource = "They are talking about"; break;
case 3: sSource = "There are rumors about"; break;
case 4: sSource = "I was told about"; break;
case 5: sSource = "I heard someone talking about"; break;
case 6: sSource = "There is a story about"; break;
case 7: sSource = sSourceName + " told me about"; break;
case 8: sSource = sSourceName + " the " + sSourceJob + " told me about"; break;
case 9: sSource = "Some " + sSourceJob + " told me about"; break;
case 10: sSource = sSourceName + " the " + sSourceJob + " heard about"; break;
case 11: sSource = "Some " + sSourceJob + " heard about"; break;
case 12: sSource = sSourceName + " the " + sSourceJob + " learned about"; break;
case 13: sSource = "Some " + sSourceJob + " learned about"; break;
}
string sPren = "this";
switch( Utility.RandomMinMax( 1, 4 ) )
{
case 1: sPren = "a"; break;
case 2: sPren = "the"; break;
case 3: sPren = "that"; break;
}
string sThey = NameList.RandomName( "male" );
if ( Utility.RandomBool() )
sThey = NameList.RandomName( "female" );
string city = NameList.RandomName( "city" );
string dungeon = NameList.RandomName( "dungeon" );
string sAdventurer = NameList.RandomName( "adventurer" );
string sDebt = NameList.RandomName( "debt" );
int relic = Utility.RandomMinMax( 1, 59 );
string sSpeech = "We are supposed to wait for " + sThey + ".";
switch( Utility.RandomMinMax( 1, 10 ) )
{
case 1: sSpeech = "We are supposed to wait for " + sThey + "."; break;
case 2: sSpeech = sThey + " lives somewhere near " + city + "."; break;
case 3: sSpeech = "We will go find " + sThey + " tomorrow."; break;
case 4: sSpeech = "We need to split this loot we have."; break;
case 5: sSpeech = sThey + " still owes me " + Utility.RandomMinMax( 5, 200 ) + " gold " + sDebt + "."; break;
case 6: sSpeech = "I think " + sThey + " stole it while we were " + NameList.RandomName( "action" ) + "."; break;
case 7: sSpeech = sThey + " will bring it here when they find it."; break;
case 8: sSpeech = NameList.RandomName( "question" ) + " " + sThey + "?"; break;
case 9: sSpeech = sThey + " sold " + sPren + " " + NameList.RandomName( "describe" ) + " " + NameList.RandomName( "item" ) + " for " + Utility.RandomMinMax( 5, 200 ) + " gold."; break;
case 10: sSpeech = "I paid " + sThey + " " + Utility.RandomMinMax( 5, 200 ) + " gold for " + sPren + " " + NameList.RandomName( "describe" ) + " " + NameList.RandomName( "item" ) + "."; break;
}
string sHappen = "A friend of mine died"; string sEnd = ".";
switch( Utility.RandomMinMax( 0, 35 ) )
{
case 0: sHappen = "A friend of mine was lost in"; sEnd = "."; break;
case 1: sHappen = "A friend of mine died in"; sEnd = "."; break;
case 2: sHappen = "I lost that weapon in"; sEnd = "."; break;
case 3: sHappen = "Have you ever been to"; sEnd = "?"; break;
case 4: sHappen = "Have you ever heard of"; sEnd = "?"; break;
case 5: sHappen = "When did you go to"; sEnd = "?"; break;
case 6: sHappen = "How did you get to"; sEnd = "?"; break;
case 7: sHappen = "Why did you go to"; sEnd = "?"; break;
case 8: sHappen = "What did you find in"; sEnd = "?"; break;
case 9: sHappen = "You found that in"; sEnd = "?"; break;
case 10: sHappen = "They died in"; sEnd = "."; break;
case 11: sHappen = "I have never been to"; sEnd = "."; break;
case 12: sHappen = "That artifact came from"; sEnd = "."; break;
case 13: sHappen = "They got lost in"; sEnd = "."; break;
case 14: sHappen = "They vanished in"; sEnd = "."; break;
case 15: sHappen = "I almost didn't make it out of"; sEnd = "."; break;
case 16: sHappen = "They didn't make it out of"; sEnd = "."; break;
case 17: sHappen = "I lost that magic item in"; sEnd = "."; break;
case 18: sHappen = "Did you lose it in"; sEnd = "?"; break;
case 19: sHappen = "We should go search in"; sEnd = "."; break;
case 20: sHappen = "We should go explore in"; sEnd = "."; break;
case 21: sHappen = "Tonight we will go to"; sEnd = "."; break;
case 22: sHappen = sThey + " was lost in"; sEnd = "."; break;
case 23: sHappen = sThey + " died in"; sEnd = "."; break;
case 24: sHappen = sThey + " lost that weapon in"; sEnd = "."; break;
case 25: sHappen = "When did " + sThey + " go to"; sEnd = "?"; break;
case 26: sHappen = "How did " + sThey + " get to"; sEnd = "?"; break;
case 27: sHappen = "Why did " + sThey + " go to"; sEnd = "?"; break;
case 28: sHappen = "What did " + sThey + " find in"; sEnd = "?"; break;
case 29: sHappen = sThey + " found that in"; sEnd = "?"; break;
case 30: sHappen = sThey + " has never been to"; sEnd = "."; break;
case 31: sHappen = sThey + " vanished in"; sEnd = "."; break;
case 32: sHappen = sThey + " almost didn't make it out of"; sEnd = "."; break;
case 33: sHappen = sThey + " didn't make it out of"; sEnd = "."; break;
case 34: sHappen = sThey + " lost that magic item in"; sEnd = "."; break;
case 35: sHappen = "Did " + sThey + " lose it in"; sEnd = "?"; break;
}
string sEvent = sHappen + " " + dungeon + sEnd;
int iWillSay = Utility.RandomMinMax( 1, 8 );
if ( iWillSay < 3 )
{
switch( Utility.RandomMinMax( 1, 39 ) )
{
case 1: m.PlaySound( m.Female ? 778 : 1049 ); m.Say( "*ah!*" ); break;
case 2: m.PlaySound( m.Female ? 779 : 1050 ); m.Say( "Ah ha!" ); break;
case 3: m.PlaySound( m.Female ? 780 : 1051 ); m.Say( "*applauds*" ); break;
case 4: m.PlaySound( m.Female ? 781 : 1052 ); m.Say( "*blows nose*" ); break;
case 5: m.PlaySound( m.Female ? 786 : 1057 ); m.Say( "*cough*" ); break;
case 6: m.PlaySound( m.Female ? 782 : 1053 ); m.Say( "*burp*" ); break;
case 7: m.PlaySound( m.Female ? 784 : 1055 ); m.Say( "*clears throat*" ); break;
case 8: m.PlaySound( m.Female ? 785 : 1056 ); m.Say( "*cough*" ); break;
case 9: m.PlaySound( m.Female ? 787 : 1058 ); m.Say( "*cries*" ); break;
case 10: m.PlaySound( m.Female ? 792 : 1064 ); m.Say( "*farts*" ); break;
case 11: m.PlaySound( m.Female ? 793 : 1065 ); m.Say( "*gasp*" ); break;
case 12: m.PlaySound( m.Female ? 794 : 1066 ); m.Say( "*giggles*" ); break;
case 13: m.PlaySound( m.Female ? 0x31B : 0x42B ); m.Say( "*groans*" ); break;
case 14: m.PlaySound( m.Female ? 0x338 : 0x44A ); m.Say( "*growls*" ); break;
case 15: m.PlaySound( m.Female ? 797 : 1069 ); m.Say( "Hey!" ); break;
case 16: m.PlaySound( m.Female ? 798 : 1070 ); m.Say( "*hiccup*" ); break;
case 17: m.PlaySound( m.Female ? 799 : 1071 ); m.Say( "Huh?" ); break;
case 18: m.PlaySound( m.Female ? 801 : 1073 ); m.Say( "*laughs*" ); break;
case 19: m.PlaySound( m.Female ? 802 : 1074 ); m.Say( "No!" ); break;
case 20: m.PlaySound( m.Female ? 803 : 1075 ); m.Say( "Oh!" ); break;
case 21: m.PlaySound( m.Female ? 811 : 1085 ); m.Say( "Oooh." ); break;
case 22: m.PlaySound( m.Female ? 812 : 1086 ); m.Say( "Oops!" ); break;
case 23: m.PlaySound( m.Female ? 0x32E : 0x440 ); m.Say( "Ahhhh!" ); break;
case 24: m.PlaySound( m.Female ? 815 : 1089 ); m.Say( "Shhh!" ); break;
case 25: m.PlaySound( m.Female ? 816 : 1090 ); m.Say( "*sigh*" ); break;
case 26: m.PlaySound( m.Female ? 817 : 1091 ); m.Say( "Ahh-choo!" ); break;
case 27: m.PlaySound( m.Female ? 818 : 1092 ); m.Say( "*sniff*" ); break;
case 28: m.PlaySound( m.Female ? 819 : 1093 ); m.Say( "*snore*" ); break;
case 29: m.PlaySound( m.Female ? 820 : 1094 ); m.Say( "*spits*" ); break;
case 30: m.PlaySound( m.Female ? 821 : 1095 ); m.Say( "*whistles*" ); break;
case 31: m.PlaySound( m.Female ? 783 : 1054 ); m.Say( "Woohoo!" ); break;
case 32: m.PlaySound( m.Female ? 822 : 1096 ); m.Say( "*yawns*" ); break;
case 33: m.PlaySound( m.Female ? 823 : 1097 ); m.Say( "Yea!" ); break;
case 34: m.PlaySound( m.Female ? 0x31C : 0x42C ); m.Say( "*yells*" ); break;
case 35: m.PlaySound( Utility.RandomList( 0x30, 0x2D6 ) ); break;
case 36: m.PlaySound( Utility.RandomList( 0x30, 0x2D6 ) ); break;
case 37: m.PlaySound( Utility.RandomList( 0x30, 0x2D6 ) ); break;
case 38: m.PlaySound( Utility.RandomList( 0x30, 0x2D6 ) ); break;
case 39: m.PlaySound( Utility.RandomList( 0x30, 0x2D6 ) ); break;
}
}
else if ( iWillSay < 5 ){ m.Say( sEvent ); }
else { m.Say( sSpeech ); }
}
}
}

View file

@ -0,0 +1,264 @@
using System;
using Server.Items;
using Server.Misc;
namespace Server.Misc
{
class CitizenTitles
{
public static string CitizenTitle( Mobile m )
{
string sTitle = "";
string myTitle = "";
int otitle = Utility.RandomMinMax( 1, 33 );
if (otitle == 1){sTitle = "of the North";}
else if (otitle == 2){sTitle = "of the South";}
else if (otitle == 3){sTitle = "of the East";}
else if (otitle == 4){sTitle = "of the West";}
else if (otitle == 5){sTitle = "of the City";}
else if (otitle == 6){sTitle = "of the Hills";}
else if (otitle == 7){sTitle = "of the Mountains";}
else if (otitle == 8){sTitle = "of the Plains";}
else if (otitle == 9){sTitle = "of the Woods";}
else if (otitle == 10){sTitle = "of the Light";}
else if (otitle == 11){sTitle = "of the Dark";}
else if (otitle == 12){sTitle = "of the Night";}
else if (otitle == 13){sTitle = "of the Sea";}
else if (otitle == 14){sTitle = "of the Desert";}
else if (otitle == 15){sTitle = "of the Order";}
else if (otitle == 16){sTitle = "of the Forest";}
else if (otitle == 17){sTitle = "of the Snow";}
else if (otitle == 18){sTitle = "of the Coast";}
else if (otitle == 19){sTitle = "of the Arid Wastes";}
else if (otitle == 20){sTitle = "of the Beetling Brow";}
else if (otitle == 21){sTitle = "of the Cyclopean City";}
else if (otitle == 22){sTitle = "of the Dread Wilds";}
else if (otitle == 23){sTitle = "of the Eerie Eyes";}
else if (otitle == 24){sTitle = "of the Foetid Swamp";}
else if (otitle == 25){sTitle = "of the Forgotten City";}
else if (otitle == 26){sTitle = "of the Haunted Heath";}
else if (otitle == 27){sTitle = "of the Hidden Valley";}
else if (otitle == 28){sTitle = "of the Howling Hills";}
else if (otitle == 29){sTitle = "of the Jagged Peaks";}
else if (otitle == 30){sTitle = "of the Menacing Mien";}
else if (otitle == 31){sTitle = "of the Savage Isle";}
else if (otitle == 32){sTitle = "of the Tangled Woods";}
else {sTitle = "of the Watchful Eyes";}
string sColor = "Red";
switch( Utility.RandomMinMax( 0, 9 ) )
{
case 0: sColor = "Black"; break;
case 1: sColor = "Blue"; break;
case 2: sColor = "Gray"; break;
case 3: sColor = "Green"; break;
case 4: sColor = "Red"; break;
case 5: sColor = "Brown"; break;
case 6: sColor = "Orange"; break;
case 7: sColor = "Yellow"; break;
case 8: sColor = "Purple"; break;
case 9: sColor = "White"; break;
}
string gColor = "Gold";
switch( Utility.RandomMinMax( 0, 11 ) )
{
case 0: gColor = "Gold"; break;
case 1: gColor = "Silver"; break;
case 2: gColor = "Arcane"; break;
case 3: gColor = "Iron"; break;
case 4: gColor = "Steel"; break;
case 5: gColor = "Emerald"; break;
case 6: gColor = "Ruby"; break;
case 7: gColor = "Bronze"; break;
case 8: gColor = "Jade"; break;
case 9: gColor = "Sapphire"; break;
case 10: gColor = "Copper"; break;
case 11: gColor = "Royal"; break;
}
string kKiller = "Giants";
switch( Utility.RandomMinMax( 0, 12 ) )
{
case 0: kKiller = "Giants"; break;
case 1: kKiller = "Dragons"; break;
case 2: kKiller = "Ogres"; break;
case 3: kKiller = "Trolls"; break;
case 4: kKiller = "Daemons"; break;
case 5: kKiller = "Devils"; break;
case 6: kKiller = "Lizards"; break;
case 7: kKiller = "Orcs"; break;
case 8: kKiller = "Minotaurs"; break;
case 9: kKiller = "Monsters"; break;
case 10: kKiller = "Undead"; break;
case 11: kKiller = "Serpents"; break;
case 12: kKiller = "Vampires"; break;
}
string mKiller = "Giant";
switch( Utility.RandomMinMax( 0, 12 ) )
{
case 0: mKiller = "Giant"; break;
case 1: mKiller = "Dragon"; break;
case 2: mKiller = "Ogre"; break;
case 3: mKiller = "Troll"; break;
case 4: mKiller = "Daemon"; break;
case 5: mKiller = "Devil"; break;
case 6: mKiller = "Lizard"; break;
case 7: mKiller = "Orc"; break;
case 8: mKiller = "Minotaur"; break;
case 9: mKiller = "Monster"; break;
case 10: mKiller = "Undead"; break;
case 11: mKiller = "Serpent"; break;
case 12: mKiller = "Vampire"; break;
}
string aKiller = "Slayer";
switch( Utility.RandomMinMax( 0, 4 ) )
{
case 0: aKiller = "Slayer"; break;
case 1: aKiller = "Killer"; break;
case 2: aKiller = "Butcher"; break;
case 3: aKiller = "Executioner"; break;
case 4: aKiller = "Hunter"; break;
}
switch ( Utility.RandomMinMax( 0, 107 ) )
{
case 0: myTitle = "from Above"; break;
case 1: myTitle = "from Afar"; break;
case 2: myTitle = "from Below"; break;
case 3: myTitle = "of the " + sColor + " Cloak"; break;
case 4: myTitle = "of the " + sColor + " Robe"; break;
case 5: myTitle = "of the " + sColor + " Order"; break;
case 6: myTitle = "of the " + gColor + " Shield"; break;
case 7: myTitle = "of the " + gColor + " Sword"; break;
case 8: myTitle = "of the " + gColor + " Helm"; break;
case 9: myTitle = sTitle; break;
case 10: myTitle = sTitle; break;
case 11: myTitle = sTitle; break;
case 12: myTitle = sTitle; break;
case 13: myTitle = sTitle; break;
case 14: myTitle = sTitle; break;
case 15: myTitle = sTitle; break;
case 16: myTitle = sTitle; break;
case 17: myTitle = sTitle; break;
case 18: myTitle = sTitle; break;
case 19: myTitle = sTitle; break;
case 20: myTitle = sTitle; break;
case 21: myTitle = sTitle; break;
case 22: myTitle = "the " + sColor; break;
case 23: myTitle = "the Adept"; break;
case 24: myTitle = "the Nomad"; break;
case 25: myTitle = "the Antiquarian"; break;
case 26: myTitle = "the Arcane"; break;
case 27: myTitle = "the Archaic"; break;
case 28: myTitle = "the Barbarian"; break;
case 29: myTitle = "the Batrachian"; break;
case 30: myTitle = "the Battler"; break;
case 31: myTitle = "the Bilious"; break;
case 32: myTitle = "the Bold"; break;
case 33: myTitle = "the Fearless"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Brave";} break;
case 34: myTitle = "the Savage"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Civilized";} break;
case 35: myTitle = "the Collector"; break;
case 36: myTitle = "the Cryptic"; break;
case 37: myTitle = "the Curious"; break;
case 38: myTitle = "the Dandy"; break;
case 39: myTitle = "the Daring"; break;
case 40: myTitle = "the Decadent"; break;
case 41: myTitle = "the Delver"; break;
case 42: myTitle = "the Distant"; break;
case 43: myTitle = "the Eldritch"; break;
case 44: myTitle = "the Exotic"; break;
case 45: myTitle = "the Explorer"; break;
case 46: myTitle = "the Fair"; break;
case 47: myTitle = "the Strong"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Weak";} break;
case 48: myTitle = "the Fickle"; break;
case 49:
int iDice = Utility.RandomMinMax( 1, 10 );
if (iDice == 1){myTitle = "the First";}
else if (iDice == 2){myTitle = "the Second";}
else if (iDice == 3){myTitle = "the Third";}
else if (iDice == 4){myTitle = "the Fourth";}
else if (iDice == 5){myTitle = "the Fifth";}
else if (iDice == 6){myTitle = "the Sixth";}
else if (iDice == 7){myTitle = "the Seventh";}
else if (iDice == 8){myTitle = "the Eighth";}
else if (iDice == 9){myTitle = "the Ninth";}
else {myTitle = "the Tenth";}
break;
case 50: myTitle = "the Foul"; break;
case 51: myTitle = "the Furtive"; break;
case 52: myTitle = "the Gambler"; break;
case 53: myTitle = "the Ghastly"; break;
case 54: myTitle = "the Gibbous"; break;
case 55: myTitle = "the Great"; break;
case 56: myTitle = "the Grizzled"; break;
case 57: myTitle = "the Gruff"; break;
case 58: myTitle = "the Spiritual"; break;
case 59: myTitle = "the Haunted"; break;
case 60: myTitle = "the Calm"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Frantic";} break;
case 61:
int iDice2 = Utility.RandomMinMax( 1, 4 );
if (iDice2 == 1){myTitle = "the Hooded";}
else if (iDice2 == 2){myTitle = "the Cloaked";}
else if (iDice2 == 3){myTitle = "the Cowled";}
else {myTitle = "the Robed";}
break;
case 62: myTitle = "the Hunter"; break;
case 63: myTitle = "the Imposing"; break;
case 64: myTitle = "the Irreverent"; break;
case 65: myTitle = "the Loathsome"; break;
case 66:
int iDice3 = Utility.RandomMinMax( 1, 3 );
if (iDice3 == 1){myTitle = "the Quiet";}
else if (iDice3 == 2){myTitle = "the Silent";}
else {myTitle = "the Loud";}
break;
case 67: myTitle = "the Lovely"; break;
case 68: myTitle = "the Mantled"; break;
case 69: myTitle = "the Masked"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Veiled";} break;
case 70: myTitle = "the Merciful"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Merciless";} break;
case 71: myTitle = "the Mercurial"; break;
case 72: myTitle = "the Mighty"; break;
case 73: myTitle = "the Morose"; break;
case 74: myTitle = "the Mutable"; break;
case 75: myTitle = "the Mysterious"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Unknown";} break;
case 76: myTitle = "the Obscure"; break;
case 77: myTitle = "the Old"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Young";} break;
case 78: myTitle = "the Ominous"; break;
case 79: myTitle = "the Peculiar"; break;
case 80: myTitle = "the Perceptive"; break;
case 81: myTitle = "the Pious"; break;
case 82: myTitle = "the Quick"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Slow";} break;
case 83: myTitle = "the Ragged"; break;
case 84: myTitle = "the Ready"; break;
case 85: myTitle = "the Rough"; break;
case 86: myTitle = "the Rugose"; break;
case 87: myTitle = "the Scarred"; break;
case 88: myTitle = "the Searcher"; break;
case 89: myTitle = "the Shadowy"; break;
case 90: myTitle = "the Short"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Tall";} break;
case 91: myTitle = "the Steady"; break;
case 92: myTitle = "the Uncanny"; break;
case 93: myTitle = "the Unexpected"; break;
case 94: myTitle = "the Unknowable"; break;
case 95: myTitle = "the Verbose"; break;
case 96: myTitle = "the Vigorous"; break;
case 97: myTitle = "the Traveler"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Wanderer";} break;
case 98: myTitle = "the Wary"; break;
case 99: myTitle = "the Weird"; break;
case 100: myTitle = "the Steady"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Unready";} break;
case 101: myTitle = "the Gentle"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Cruel";} break;
case 102: myTitle = "the Lost"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Exiled";} break;
case 103: myTitle = "the Careless"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Clumsy";} break;
case 104: myTitle = "the Hopeful"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Trustful";} break;
case 105: myTitle = "the Angry"; if (Utility.RandomMinMax( 1, 2 ) == 1){myTitle = "the Timid";} break;
case 106: myTitle = "the " + aKiller + " of " + kKiller; break;
case 107: myTitle = "the " + mKiller + " " + aKiller; break;
}
return myTitle;
}
}
}