- Incognito spell won't change gender anymore
(http://www.uodemise.com/discussion/showthread.php?t=117148) - Abyss Champion spawn has Greater Mongbats in tier 1 instead of Mongbats (http://www.uodemise.com/discussion/showthread.php?t=125248) - BOD books won't return to page 1 anymore when picking or dropping BODs (http://www.uodemise.com/discussion/showthread.php?t=115354) - Added Plague Beast Lords with relative puzzle; Plague Beasts release healty glands (http://www.uodemise.com/discussion/showthread.php?t=116548) - Arch Cure area effect will follow OSI rules in Felucca facet (http://www.uodemise.com/discussion/showthread.php?t=115600) - Solen Ants Holes can spawn randomly in forest (http://www.uodemise.com/discussion/showthread.php?t=123899) - Death Robes will decay after 60 seconds from dropping on the ground (http://www.uodemise.com/discussion/showthread.php?t=121188) - Weapon speeds are indicated in seconds of delay (http://www.uodemise.com/discussion/showthread.php?t=123707)
This commit is contained in:
parent
207be3f720
commit
123af436f9
99 changed files with 2341 additions and 75 deletions
|
|
@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|||
using Server.Network;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Spells.Fourth
|
||||
{
|
||||
|
|
@ -46,15 +47,28 @@ namespace Server.Spells.Fourth
|
|||
List<Mobile> targets = new List<Mobile>();
|
||||
|
||||
Map map = Caster.Map;
|
||||
Mobile m_directtarget = p as Mobile;
|
||||
|
||||
if ( map != null )
|
||||
{
|
||||
//you can target directly someone/something and become criminal if it's a criminal action
|
||||
if ( m_directtarget != null )
|
||||
targets.Add ( m_directtarget );
|
||||
|
||||
IPooledEnumerable eable = map.GetMobilesInRange( new Point3D( p ), 2 );
|
||||
|
||||
foreach ( Mobile m in eable )
|
||||
{
|
||||
// Archcure doesn't cure aggressors or victims
|
||||
if ( Caster.CanBeBeneficial( m, false ) && (!Core.AOS || !IsAggressor( m ) && !IsAggressed( m )) )
|
||||
// Archcure area effect won't cure aggressors or victims, nor murderers, criminals or monsters
|
||||
// plus Arch Cure Area will NEVER work on summons/pets if you are in Felucca facet
|
||||
// red players can cure only themselves and guildies with arch cure area.
|
||||
|
||||
if ( map.Rules == MapRules.FeluccaRules )
|
||||
{
|
||||
if ( Caster.CanBeBeneficial( m, false ) && ( !Core.AOS || !IsAggressor( m ) && !IsAggressed( m ) && (( IsInnocentTo ( Caster, m ) && IsInnocentTo ( m, Caster ) ) || ( IsAllyTo ( Caster, m ) )) && m != m_directtarget && m is PlayerMobile || m == Caster && m != m_directtarget ))
|
||||
targets.Add( m );
|
||||
}
|
||||
else if ( Caster.CanBeBeneficial( m, false ) && ( !Core.AOS || !IsAggressor( m ) && !IsAggressed( m ) && (( IsInnocentTo ( Caster, m ) && IsInnocentTo ( m, Caster ) ) || ( IsAllyTo ( Caster, m ) )) && m != m_directtarget || m == Caster && m != m_directtarget ))
|
||||
targets.Add( m );
|
||||
}
|
||||
|
||||
|
|
@ -119,6 +133,16 @@ namespace Server.Spells.Fourth
|
|||
return false;
|
||||
}
|
||||
|
||||
private static bool IsInnocentTo( Mobile from, Mobile to )
|
||||
{
|
||||
return ( Notoriety.Compute( from, (Mobile)to ) == Notoriety.Innocent );
|
||||
}
|
||||
|
||||
private static bool IsAllyTo( Mobile from, Mobile to )
|
||||
{
|
||||
return ( Notoriety.Compute( from, (Mobile)to ) == Notoriety.Ally );
|
||||
}
|
||||
|
||||
private class InternalTarget : Target
|
||||
{
|
||||
private ArchCureSpell m_Owner;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue