its AcidElemental, not ToxicElemental

This commit is contained in:
xavier 2013-01-03 13:41:03 +00:00
parent a253a03e95
commit 55519d49dc
8 changed files with 12 additions and 262 deletions

View file

@ -58,7 +58,7 @@ namespace Server.Items
#region Elementals
typeof( EarthElemental ), typeof( PoisonElemental ), typeof( FireElemental ), typeof( SnowElemental ),
typeof( IceElemental ), typeof( ToxicElemental ), typeof( WaterElemental ), typeof( Efreet ),
typeof( IceElemental ), typeof( AcidElemental ), typeof( WaterElemental ), typeof( Efreet ),
typeof( AirElemental ), typeof( Golem ),
#endregion

View file

@ -1634,9 +1634,9 @@ namespace Server.Items
attacker.PlaySound( 0x44D );
}
if ( m_MaxHits > 0 && ((MaxRange <= 1 && (defender is Slime || defender is ToxicElemental)) || Utility.Random( 25 ) == 0) ) // Stratics says 50% chance, seems more like 4%..
if ( m_MaxHits > 0 && ((MaxRange <= 1 && (defender is Slime || defender is AcidElemental)) || Utility.Random( 25 ) == 0) ) // Stratics says 50% chance, seems more like 4%..
{
if ( MaxRange <= 1 && (defender is Slime || defender is ToxicElemental) )
if ( MaxRange <= 1 && (defender is Slime || defender is AcidElemental) )
attacker.LocalOverheadMessage( MessageType.Regular, 0x3B2, 500263 ); // *Acid blood scars your weapon!*
if ( Core.AOS && m_AosWeaponAttributes.SelfRepair > Utility.Random( 10 ) )

View file

@ -85,7 +85,7 @@ namespace Server.Items
elemental.Opposition = new SlayerGroup[]{ abyss };
elemental.FoundOn = new Type[]{ typeof( Balron ), typeof( Daemon ) };
elemental.Super = new SlayerEntry( SlayerName.ElementalBan, typeof( ToxicElemental ), typeof( AgapiteElemental ), typeof( AirElemental ), typeof( SummonedAirElemental ), typeof( BloodElemental ), typeof( BronzeElemental ), typeof( CopperElemental ), typeof( CrystalElemental ), typeof( DullCopperElemental ), typeof( EarthElemental ), typeof( SummonedEarthElemental ), typeof( Efreet ), typeof( FireElemental ), typeof( SummonedFireElemental ), typeof( GoldenElemental ), typeof( IceElemental ), typeof( KazeKemono ), typeof( PoisonElemental ), typeof( RaiJu ), typeof( SandVortex ), typeof( ShadowIronElemental ), typeof( SnowElemental ), typeof( ValoriteElemental ), typeof( VeriteElemental ), typeof( WaterElemental ), typeof( SummonedWaterElemental ) );
elemental.Super = new SlayerEntry( SlayerName.ElementalBan, typeof( AcidElemental ), typeof( AgapiteElemental ), typeof( AirElemental ), typeof( SummonedAirElemental ), typeof( BloodElemental ), typeof( BronzeElemental ), typeof( CopperElemental ), typeof( CrystalElemental ), typeof( DullCopperElemental ), typeof( EarthElemental ), typeof( SummonedEarthElemental ), typeof( Efreet ), typeof( FireElemental ), typeof( SummonedFireElemental ), typeof( GoldenElemental ), typeof( IceElemental ), typeof( KazeKemono ), typeof( PoisonElemental ), typeof( RaiJu ), typeof( SandVortex ), typeof( ShadowIronElemental ), typeof( SnowElemental ), typeof( ValoriteElemental ), typeof( VeriteElemental ), typeof( WaterElemental ), typeof( SummonedWaterElemental ) );
elemental.Entries = new SlayerEntry[]
{
new SlayerEntry( SlayerName.BloodDrinking, typeof( BloodElemental ) ),

View file

@ -147,7 +147,7 @@ namespace Server
/* Medium */
new SpeedInfo( 0.25, 0.5, new Type[]
{
typeof( ToxicElemental ), typeof( AgapiteElemental ), typeof( Alligator ),
typeof( AcidElemental ), typeof( AgapiteElemental ), typeof( Alligator ),
typeof( AncientLich ), typeof( Betrayer ), typeof( Bird ),
typeof( BlackBear ), typeof( BlackSolenInfiltratorQueen ), typeof( BlackSolenInfiltratorWarrior ),
typeof( BlackSolenQueen ), typeof( BlackSolenWarrior ), typeof( BlackSolenWorker ),

View file

@ -10,7 +10,7 @@ namespace Server.Mobiles
public abstract class BaseFamiliar : BaseCreature
{
public BaseFamiliar()
: base( AIType.AI_Melee, FightMode.Closest, 10, 1, -1, -1 )
: base( AIType.AI_Melee, FightMode.Closest, 10, 1, .1, .1 )
{
}

View file

@ -4,11 +4,12 @@ using Server.Items;
namespace Server.Mobiles
{
[TypeAlias( "Server.Mobiles.ToxicElemental" )]
[CorpseName( "an acid elemental corpse" )]
public class ToxicElemental : BaseCreature
public class AcidElemental : BaseCreature
{
[Constructable]
public ToxicElemental () : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
public AcidElemental () : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
{
Name = "an acid elemental";
Body = 0x9E;
@ -57,7 +58,8 @@ namespace Server.Mobiles
public override int TreasureMapLevel{ get{ return Core.AOS ? 2 : 3; } }
public ToxicElemental( Serial serial ) : base( serial )
public AcidElemental( Serial serial )
: base( serial )
{
}

View file

@ -1,252 +0,0 @@
using System;
using System.Text;
using Server.Gumps;
using Server.Network;
using Server.Commands;
namespace Server.Misc
{
public class TestCenter
{
private const bool m_Enabled = false;
public static bool Enabled { get{ return m_Enabled; } }
public static void Initialize()
{
// Register our speech handler
if( Enabled )
EventSink.Speech += new SpeechEventHandler( EventSink_Speech );
}
private static void EventSink_Speech( SpeechEventArgs args )
{
if ( !args.Handled )
{
if( Insensitive.StartsWith( args.Speech, "set" ) )
{
Mobile from = args.Mobile;
string[] split = args.Speech.Split( ' ' );
if ( split.Length == 3 )
{
try
{
string name = split[1];
double value = Convert.ToDouble( split[2] );
if ( Insensitive.Equals( name, "str" ) )
ChangeStrength( from, (int)value );
else if ( Insensitive.Equals( name, "dex" ) )
ChangeDexterity( from, (int)value );
else if ( Insensitive.Equals( name, "int" ) )
ChangeIntelligence( from, (int)value );
else
ChangeSkill( from, name, value );
}
catch
{
}
}
}
else if( Insensitive.Equals( args.Speech, "help" ) )
{
args.Mobile.SendGump( new TCHelpGump() );
args.Handled = true;
}
}
}
private static void ChangeStrength( Mobile from, int value )
{
if ( value < 10 || value > 125 )
{
from.SendLocalizedMessage( 1005628 ); // Stats range between 10 and 125.
}
else
{
if ( (value + from.RawDex + from.RawInt) > from.StatCap )
{
from.SendLocalizedMessage( 1005629 ); // You can not exceed the stat cap. Try setting another stat lower first.
}
else
{
from.RawStr = value;
from.SendLocalizedMessage( 1005630 ); // Your stats have been adjusted.
}
}
}
private static void ChangeDexterity( Mobile from, int value )
{
if ( value < 10 || value > 125 )
{
from.SendLocalizedMessage( 1005628 ); // Stats range between 10 and 125.
}
else
{
if ( (from.RawStr + value + from.RawInt) > from.StatCap )
{
from.SendLocalizedMessage( 1005629 ); // You can not exceed the stat cap. Try setting another stat lower first.
}
else
{
from.RawDex = value;
from.SendLocalizedMessage( 1005630 ); // Your stats have been adjusted.
}
}
}
private static void ChangeIntelligence( Mobile from, int value )
{
if ( value < 10 || value > 125 )
{
from.SendLocalizedMessage( 1005628 ); // Stats range between 10 and 125.
}
else
{
if ( (from.RawStr + from.RawDex + value) > from.StatCap )
{
from.SendLocalizedMessage( 1005629 ); // You can not exceed the stat cap. Try setting another stat lower first.
}
else
{
from.RawInt = value;
from.SendLocalizedMessage( 1005630 ); // Your stats have been adjusted.
}
}
}
private static void ChangeSkill( Mobile from, string name, double value )
{
SkillName index;
#if Framework_4_0
if( !Enum.TryParse( name, true, out index ) || (!Core.SE && (int)index > 51) || (!Core.AOS && (int)index > 48) )
{
from.SendLocalizedMessage( 1005631 ); // You have specified an invalid skill to set.
return;
}
#else
try
{
index = (SkillName)Enum.Parse( typeof( SkillName ), name, true );
}
catch
{
from.SendLocalizedMessage( 1005631 ); // You have specified an invalid skill to set.
return;
}
if ( ( !Core.SE && (int)index > 51 ) || ( !Core.AOS && (int)index > 48 ) )
{
from.SendLocalizedMessage( 1005631 ); // You have specified an invalid skill to set.
return;
}
#endif
Skill skill = from.Skills[index];
if ( skill != null )
{
if ( value < 0 || value > skill.Cap )
{
from.SendMessage( String.Format( "Your skill in {0} is capped at {1:F1}.", skill.Info.Name, skill.Cap ) );
}
else
{
int newFixedPoint = (int)(value * 10.0);
int oldFixedPoint = skill.BaseFixedPoint;
if ( ((skill.Owner.Total - oldFixedPoint) + newFixedPoint) > skill.Owner.Cap )
{
from.SendMessage( "You can not exceed the skill cap. Try setting another skill lower first." );
}
else
{
skill.BaseFixedPoint = newFixedPoint;
}
}
}
else
{
from.SendLocalizedMessage( 1005631 ); // You have specified an invalid skill to set.
}
}
public class TCHelpGump : Gump
{
public TCHelpGump() : base( 40, 40 )
{
AddPage( 0 );
AddBackground( 0, 0, 160, 120, 5054 );
AddButton( 10, 10, 0xFB7, 0xFB9, 1, GumpButtonType.Reply, 0 );
AddLabel( 45, 10, 0x34, "RunUO.com" );
AddButton( 10, 35, 0xFB7, 0xFB9, 2, GumpButtonType.Reply, 0 );
AddLabel( 45, 35, 0x34, "List of skills" );
AddButton( 10, 60, 0xFB7, 0xFB9, 3, GumpButtonType.Reply, 0 );
AddLabel( 45, 60, 0x34, "Command list" );
AddButton( 10, 85, 0xFB1, 0xFB3, 0, GumpButtonType.Reply, 0 );
AddLabel( 45, 85, 0x34, "Close" );
}
public override void OnResponse( NetState sender, RelayInfo info )
{
switch ( info.ButtonID )
{
case 1: // RunUO.com
{
sender.LaunchBrowser( "http://www.RunUO.com" );
break;
}
case 2: // List of skills
{
string[] strings = Enum.GetNames( typeof( SkillName ) );
Array.Sort( strings );
StringBuilder sb = new StringBuilder();
if ( strings.Length > 0 )
sb.Append( strings[0] );
for ( int i = 1; i < strings.Length; ++i )
{
string v = strings[i];
if ( (sb.Length + 1 + v.Length) >= 256 )
{
sender.Send( new AsciiMessage( Server.Serial.MinusOne, -1, MessageType.Label, 0x35, 3, "System", sb.ToString() ) );
sb = new StringBuilder();
sb.Append( v );
}
else
{
sb.Append( ' ' );
sb.Append( v );
}
}
if ( sb.Length > 0 )
{
sender.Send( new AsciiMessage( Server.Serial.MinusOne, -1, MessageType.Label, 0x35, 3, "System", sb.ToString() ) );
}
break;
}
case 3: // Command list
{
sender.Mobile.SendAsciiMessage( 0x482, "The command prefix is \"{0}\"", CommandSystem.Prefix );
CommandHandlers.Help_OnCommand( new CommandEventArgs( sender.Mobile, "help", "", new string[0] ) );
break;
}
}
}
}
}
}

View file

@ -116,7 +116,7 @@ namespace Server.Spells.Necromancy
typeof( ValoriteElemental ), typeof( VeriteElemental ), typeof( PoisonElemental ),
typeof( FireElemental ), typeof( SummonedFireElemental ), typeof( SnowElemental ),
typeof( AirElemental ), typeof( SummonedAirElemental ), typeof( WaterElemental ),
typeof( SummonedAirElemental ), typeof ( ToxicElemental )
typeof( SummonedAirElemental ), typeof ( AcidElemental )
}, new SummonEntry[]
{
new SummonEntry( 5000, typeof( WailingBanshee ) ),