just misc merge cleanups
This commit is contained in:
parent
030ad1db5b
commit
2a9b547f7b
13 changed files with 73 additions and 34 deletions
|
|
@ -676,7 +676,7 @@ namespace Server.Engines.CannedEvil
|
|||
if( m == null )
|
||||
return;
|
||||
|
||||
Point3D loc = GetSpawnLocation();
|
||||
Point3D loc = GetSpawnLocation();
|
||||
|
||||
// Allow creatures to turn into Paragons at Ilshenar champions.
|
||||
m.OnBeforeSpawn( loc, Map );
|
||||
|
|
|
|||
|
|
@ -344,7 +344,6 @@ namespace Server.Engines.ConPVP
|
|||
|
||||
if( !Core.AOS )
|
||||
{
|
||||
|
||||
#region Mage 5x
|
||||
Ruleset m5x = new Ruleset( m_Root );
|
||||
|
||||
|
|
|
|||
|
|
@ -265,7 +265,7 @@ namespace Server.Items
|
|||
}
|
||||
}
|
||||
|
||||
Timer.DelayCall( TimeSpan.Zero, ValidatePlacement );
|
||||
Timer.DelayCall( TimeSpan.Zero, ValidatePlacement );
|
||||
}
|
||||
|
||||
public void ValidatePlacement()
|
||||
|
|
|
|||
|
|
@ -43,34 +43,38 @@ namespace Server.Items
|
|||
|
||||
ClearCurrentAbility( attacker );
|
||||
|
||||
if( Server.Items.ParalyzingBlow.IsImmune( defender ) ) //After mana consumption intentional
|
||||
bool cantpara = Server.Items.ParalyzingBlow.IsImmune(defender);
|
||||
|
||||
if ( cantpara )
|
||||
{
|
||||
attacker.SendLocalizedMessage( 1070804 ); // Your target resists paralysis.
|
||||
defender.SendLocalizedMessage( 1070813 ); // You resist paralysis.
|
||||
return;
|
||||
attacker.SendLocalizedMessage(1070804); // Your target resists paralysis.
|
||||
defender.SendLocalizedMessage(1070813); // You resist paralysis.
|
||||
}
|
||||
else
|
||||
{
|
||||
attacker.SendLocalizedMessage(1063356); // You cripple your target with a nerve strike!
|
||||
defender.SendLocalizedMessage(1063357); // Your attacker dealt a crippling nerve strike!
|
||||
}
|
||||
|
||||
attacker.SendLocalizedMessage( 1063356 ); // You cripple your target with a nerve strike!
|
||||
defender.SendLocalizedMessage( 1063357 ); // Your attacker dealt a crippling nerve strike!
|
||||
|
||||
attacker.PlaySound( 0x204 );
|
||||
defender.FixedEffect( 0x376A, 9, 32 );
|
||||
defender.FixedParticles( 0x37C4, 1, 8, 0x13AF, 0, 0, EffectLayer.Waist );
|
||||
attacker.PlaySound(0x204);
|
||||
defender.FixedEffect(0x376A, 9, 32);
|
||||
defender.FixedParticles(0x37C4, 1, 8, 0x13AF, 0, 0, EffectLayer.Waist);
|
||||
|
||||
if ( Core.ML )
|
||||
{
|
||||
AOS.Damage( defender, attacker, (int)( 15.0 * ( attacker.Skills[SkillName.Bushido].Value - 50.0 ) / 70.0 + Utility.Random( 10 ) ), true, 100, 0, 0, 0, 0 ); //0-25
|
||||
if ( ( ( 150.0 / 7.0 + ( 4.0 * attacker.Skills[SkillName.Bushido].Value ) / 7.0) / 100.0 ) > Utility.RandomDouble() )
|
||||
|
||||
if (!cantpara && ((150.0 / 7.0 + (4.0 * attacker.Skills[SkillName.Bushido].Value) / 7.0) / 100.0) > Utility.RandomDouble())
|
||||
{
|
||||
defender.Paralyze( TimeSpan.FromSeconds( 2.0 ) );
|
||||
Server.Items.ParalyzingBlow.BeginImmunity( defender, Server.Items.ParalyzingBlow.FreezeDelayDuration );
|
||||
}
|
||||
}
|
||||
else
|
||||
else if( !cantpara )
|
||||
{
|
||||
AOS.Damage( defender, attacker, (int)(15.0 * (attacker.Skills[SkillName.Bushido].Value - 50.0) / 70.0 + 10), true, 100, 0, 0, 0, 0 ); //10-25
|
||||
defender.Freeze( TimeSpan.FromSeconds( 2.0 ) );
|
||||
Server.Items.ParalyzingBlow.BeginImmunity( defender, Server.Items.ParalyzingBlow.FreezeDelayDuration );
|
||||
defender.Freeze(TimeSpan.FromSeconds(2.0));
|
||||
Server.Items.ParalyzingBlow.BeginImmunity(defender, Server.Items.ParalyzingBlow.FreezeDelayDuration);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1910,7 +1910,9 @@ namespace Server.Items
|
|||
|
||||
List<Mobile> list = new List<Mobile>();
|
||||
|
||||
foreach ( Mobile m in from.GetMobilesInRange( 10 ) )
|
||||
int range = Core.ML ? 5 : 10;
|
||||
|
||||
foreach ( Mobile m in from.GetMobilesInRange( range ) )
|
||||
{
|
||||
if ( from != m && defender != m && SpellHelper.ValidIndirectTarget( from, m ) && from.CanBeHarmful( m, false ) && ( !Core.ML || from.InLOS( m ) ) )
|
||||
list.Add( m );
|
||||
|
|
@ -1921,22 +1923,25 @@ namespace Server.Items
|
|||
|
||||
Effects.PlaySound( from.Location, map, sound );
|
||||
|
||||
// TODO: What is the damage calculation?
|
||||
|
||||
for ( int i = 0; i < list.Count; ++i )
|
||||
{
|
||||
Mobile m = list[i];
|
||||
|
||||
double scalar = (11 - from.GetDistanceToSqrt( m )) / 10;
|
||||
double scalar = Core.ML ? 1.0 : ( 11 - from.GetDistanceToSqrt( m ) ) / 10;
|
||||
double damage = GetBaseDamage( from );
|
||||
|
||||
if ( scalar > 1.0 )
|
||||
scalar = 1.0;
|
||||
else if ( scalar < 0.0 )
|
||||
if(scalar <= 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
else if( scalar < 1.0 )
|
||||
{
|
||||
damage *= ( 11 - from.GetDistanceToSqrt( m ) ) / 10;
|
||||
}
|
||||
|
||||
from.DoHarmful( m, true );
|
||||
m.FixedEffect( 0x3779, 1, 15, hue, 0 );
|
||||
AOS.Damage( m, from, (int)(GetBaseDamage( from ) * scalar), phys, fire, cold, pois, nrgy );
|
||||
AOS.Damage(m, from, (int)damage, phys, fire, cold, pois, nrgy);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ namespace Server.Items
|
|||
public class WarMace : BaseBashing
|
||||
{
|
||||
public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.CrushingBlow; } }
|
||||
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.BleedAttack; } }
|
||||
public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.MortalStrike; } }
|
||||
|
||||
public override int AosStrengthReq{ get{ return 80; } }
|
||||
public override int AosMinDamage{ get{ return 16; } }
|
||||
|
|
|
|||
|
|
@ -3349,6 +3349,15 @@ namespace Server.Mobiles
|
|||
{
|
||||
if ( m is BaseCreature && !((BaseCreature)m).Controlled )
|
||||
return ( !Alive || !m.Alive || IsDeadBondedPet || m.IsDeadBondedPet ) || ( Hidden && AccessLevel > AccessLevel.Player );
|
||||
#region Dueling
|
||||
if ( Region.IsPartOf( typeof( Engines.ConPVP.SafeZone ) ) && m is PlayerMobile )
|
||||
{
|
||||
PlayerMobile pm = (PlayerMobile) m;
|
||||
|
||||
if ( pm.DuelContext == null || pm.DuelPlayer == null || !pm.DuelContext.Started || pm.DuelContext.Finished || pm.DuelPlayer.Eliminated )
|
||||
return true;
|
||||
}
|
||||
#endregion
|
||||
|
||||
return base.OnMoveOver( m );
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,9 @@ namespace Server.Mobiles
|
|||
{
|
||||
public abstract class BaseChampion : BaseCreature
|
||||
{
|
||||
public override bool CanMoveOverObstacles { get { return true; } }
|
||||
public override bool CanDestroyObstacles { get { return true; } }
|
||||
|
||||
public BaseChampion( AIType aiType ) : this( aiType, FightMode.Closest )
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -127,12 +127,11 @@ namespace Server.Mobiles
|
|||
public static void UnConvert( BaseCreature bc )
|
||||
{
|
||||
if( !bc.IsParagon )
|
||||
if( !bc.IsParagon )
|
||||
return;
|
||||
|
||||
bc.Hue = 0;
|
||||
|
||||
if ( bc.HitsMaxSeed >= 0 )
|
||||
if( bc.HitsMaxSeed >= 0 )
|
||||
bc.HitsMaxSeed = (int)( bc.HitsMaxSeed / HitsBuff );
|
||||
|
||||
bc.RawStr = (int)( bc.RawStr / StrBuff );
|
||||
|
|
|
|||
|
|
@ -307,10 +307,23 @@ namespace Server.Mobiles
|
|||
{
|
||||
if ( m_Amount <= 0 )
|
||||
{
|
||||
m_MaxAmount *= 2;
|
||||
/*
|
||||
Core.ML using this vendor system is undefined behavior, so being
|
||||
as it lends itself to an abusable exploit to cause ingame havok
|
||||
and the stackable items are not found to be over 20 items, this is
|
||||
changed until there is a better solution.
|
||||
*/
|
||||
|
||||
if ( m_MaxAmount >= 999 )
|
||||
m_MaxAmount = 999;
|
||||
object Obj_Disp = GetDisplayEntity();
|
||||
|
||||
if( Core.ML && Obj_Disp is Item && !( Obj_Disp as Item ).Stackable )
|
||||
{
|
||||
m_MaxAmount = Math.Min( 20, m_MaxAmount );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_MaxAmount = Math.Min( 999, m_MaxAmount * 2 );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2298,7 +2298,7 @@ namespace Server.Multis
|
|||
{
|
||||
from.SendLocalizedMessage( 501362 ); // That can't be a co-owner of the house.
|
||||
}
|
||||
else if ( HasAccountHouse( targ ) )
|
||||
else if ( !Core.AOS && HasAccountHouse( targ ) )
|
||||
{
|
||||
from.SendLocalizedMessage( 501364 ); // That person is already a house owner.
|
||||
}
|
||||
|
|
|
|||
|
|
@ -57,7 +57,11 @@ namespace Server.Spells.Ninjitsu
|
|||
if ( attacker.Hidden )
|
||||
return 1.0;
|
||||
|
||||
return 1.0 + GetBonus( attacker ) / 10;
|
||||
/*
|
||||
* Pub40 changed pvp damage max to 55%
|
||||
*/
|
||||
|
||||
return 1.0 + GetBonus(attacker) / ( (Core.ML && attacker.Player && defender.Player) ? 40 : 10 );
|
||||
}
|
||||
|
||||
public override void OnHit( Mobile attacker, Mobile defender, int damage )
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue