fix: Fixes travel issues (#1285)

This commit is contained in:
Kamron Batman 2022-11-28 17:36:00 -08:00 committed by GitHub
parent 6d34cf8824
commit 0facd73842
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 19 additions and 15 deletions

View file

@ -758,33 +758,33 @@ public class Region : IComparable<Region>
Parent?.OnSpeech(args);
}
public virtual bool OnSkillUse(Mobile m, int skill) => Parent?.OnSkillUse(m, skill) != false;
public virtual bool OnSkillUse(Mobile m, int skill) => Parent?.OnSkillUse(m, skill) ?? true;
public virtual bool OnBeginSpellCast(Mobile m, ISpell s) => Parent?.OnBeginSpellCast(m, s) != false;
public virtual bool OnBeginSpellCast(Mobile m, ISpell s) => Parent?.OnBeginSpellCast(m, s) ?? true;
public virtual void OnSpellCast(Mobile m, ISpell s)
{
Parent?.OnSpellCast(m, s);
}
public virtual bool OnResurrect(Mobile m) => Parent?.OnResurrect(m) != false;
public virtual bool OnResurrect(Mobile m) => Parent?.OnResurrect(m) ?? true;
public virtual bool OnBeforeDeath(Mobile m) => Parent?.OnBeforeDeath(m) != false;
public virtual bool OnBeforeDeath(Mobile m) => Parent?.OnBeforeDeath(m) ?? true;
public virtual void OnDeath(Mobile m)
{
Parent?.OnDeath(m);
}
public virtual bool OnDamage(Mobile m, ref int damage) => Parent?.OnDamage(m, ref damage) != false;
public virtual bool OnDamage(Mobile m, ref int damage) => Parent?.OnDamage(m, ref damage) ?? true;
public virtual bool OnHeal(Mobile m, ref int heal) => Parent?.OnHeal(m, ref heal) != false;
public virtual bool OnHeal(Mobile m, ref int heal) => Parent?.OnHeal(m, ref heal) ?? true;
public virtual bool OnDoubleClick(Mobile m, object o) => Parent?.OnDoubleClick(m, o) != false;
public virtual bool OnDoubleClick(Mobile m, object o) => Parent?.OnDoubleClick(m, o) ?? true;
public virtual bool OnSingleClick(Mobile m, object o) => Parent?.OnSingleClick(m, o) != false;
public virtual bool OnSingleClick(Mobile m, object o) => Parent?.OnSingleClick(m, o) ?? true;
public virtual bool AllowSpawn() => Parent?.AllowSpawn() != false;
public virtual bool AllowSpawn() => Parent?.AllowSpawn() ?? true;
public virtual void AlterLightLevel(Mobile m, ref int global, ref int personal)
{

View file

@ -660,7 +660,6 @@ namespace Server.Spells
m_TravelType = type;
var v = (int)type;
var isValid = true;
if (caster != null)
{
@ -669,16 +668,21 @@ namespace Server.Spells
if (destination?.CheckTravel(caster, loc, type, out message) == false || current?.CheckTravel(caster, loc, type, out message) == false)
{
isValid = false;
return false;
}
}
for (var i = 0; isValid && i < m_Validators.Length; ++i)
for (var i = 0; i < m_Validators.Length; ++i)
{
isValid = m_Rules[v, i] || !m_Validators[i](map, loc);
var isValid = m_Rules[v, i] || !m_Validators[i](map, loc);
if (!isValid)
{
message = InvalidTravelMessage(type);
return false;
}
}
return !isValid;
return true;
}
public static bool IsWindLoc(Point3D loc)

View file

@ -90,7 +90,7 @@ namespace Server.Spells.Ninjitsu
m.PlaySound(0x512);
Stealth.OnUse(m); // stealth check after the a jump
Stealth.OnUse(m); // stealth check after the shadow jump
}
FinishSequence();