GetSpawnPointX(). GetSpawnPointY(), GetSpawnPointZ(), and GetSpawnPointH() replaced with GetSpawnPoint()

This commit is contained in:
Arthur Ice 2014-11-30 15:29:13 -08:00
parent f9036ddc6a
commit 69dbdb2485
4 changed files with 14 additions and 16 deletions

View File

@ -314,22 +314,22 @@ int Lua_NPC::GetSpawnPointID() {
float Lua_NPC::GetSpawnPointX() { float Lua_NPC::GetSpawnPointX() {
Lua_Safe_Call_Real(); Lua_Safe_Call_Real();
return self->GetSpawnPointX(); return self->GetSpawnPoint().m_X;
} }
float Lua_NPC::GetSpawnPointY() { float Lua_NPC::GetSpawnPointY() {
Lua_Safe_Call_Real(); Lua_Safe_Call_Real();
return self->GetSpawnPointY(); return self->GetSpawnPoint().m_Y;
} }
float Lua_NPC::GetSpawnPointZ() { float Lua_NPC::GetSpawnPointZ() {
Lua_Safe_Call_Real(); Lua_Safe_Call_Real();
return self->GetSpawnPointZ(); return self->GetSpawnPoint().m_Z;
} }
float Lua_NPC::GetSpawnPointH() { float Lua_NPC::GetSpawnPointH() {
Lua_Safe_Call_Real(); Lua_Safe_Call_Real();
return self->GetSpawnPointH(); return self->GetSpawnPoint().m_Heading;
} }
float Lua_NPC::GetGuardPointX() { float Lua_NPC::GetGuardPointX() {

View File

@ -1125,19 +1125,20 @@ void Mob::AI_Process() {
if(DivineAura()) if(DivineAura())
return; return;
auto npcSpawnPoint = CastToNPC()->GetSpawnPoint();
if(GetSpecialAbility(TETHER)) { if(GetSpecialAbility(TETHER)) {
float tether_range = static_cast<float>(GetSpecialAbilityParam(TETHER, 0)); float tether_range = static_cast<float>(GetSpecialAbilityParam(TETHER, 0));
tether_range = tether_range > 0.0f ? tether_range * tether_range : pAggroRange * pAggroRange; tether_range = tether_range > 0.0f ? tether_range * tether_range : pAggroRange * pAggroRange;
if(DistNoRootNoZ(CastToNPC()->GetSpawnPointX(), CastToNPC()->GetSpawnPointY()) > tether_range) { if(DistNoRootNoZ(npcSpawnPoint.m_X, npcSpawnPoint.m_Y) > tether_range) {
GMMove(CastToNPC()->GetSpawnPointX(), CastToNPC()->GetSpawnPointY(), CastToNPC()->GetSpawnPointZ(), CastToNPC()->GetSpawnPointH()); GMMove(npcSpawnPoint.m_X, npcSpawnPoint.m_Y, npcSpawnPoint.m_Z, npcSpawnPoint.m_Heading);
} }
} else if(GetSpecialAbility(LEASH)) { } else if(GetSpecialAbility(LEASH)) {
float leash_range = static_cast<float>(GetSpecialAbilityParam(LEASH, 0)); float leash_range = static_cast<float>(GetSpecialAbilityParam(LEASH, 0));
leash_range = leash_range > 0.0f ? leash_range * leash_range : pAggroRange * pAggroRange; leash_range = leash_range > 0.0f ? leash_range * leash_range : pAggroRange * pAggroRange;
if(DistNoRootNoZ(CastToNPC()->GetSpawnPointX(), CastToNPC()->GetSpawnPointY()) > leash_range) { if(DistNoRootNoZ(npcSpawnPoint.m_X, npcSpawnPoint.m_Y) > leash_range) {
GMMove(CastToNPC()->GetSpawnPointX(), CastToNPC()->GetSpawnPointY(), CastToNPC()->GetSpawnPointZ(), CastToNPC()->GetSpawnPointH()); GMMove(npcSpawnPoint.m_X, npcSpawnPoint.m_Y, npcSpawnPoint.m_Z, npcSpawnPoint.m_Heading);
SetHP(GetMaxHP()); SetHP(GetMaxHP());
BuffFadeAll(); BuffFadeAll();
WipeHateList(); WipeHateList();

View File

@ -211,10 +211,7 @@ public:
uint32 GetSp2() const { return spawn_group; } uint32 GetSp2() const { return spawn_group; }
uint32 GetSpawnPointID() const; uint32 GetSpawnPointID() const;
float GetSpawnPointX() const { return m_SpawnPoint.m_X; } xyz_heading const GetSpawnPoint() const { return m_SpawnPoint; }
float GetSpawnPointY() const { return m_SpawnPoint.m_Y; }
float GetSpawnPointZ() const { return m_SpawnPoint.m_Z; }
float GetSpawnPointH() const { return m_SpawnPoint.m_Heading; }
xyz_heading const GetGuardPoint() const { return m_GuardPoint; } xyz_heading const GetGuardPoint() const { return m_GuardPoint; }
EmuAppearance GetGuardPointAnim() const { return guard_anim; } EmuAppearance GetGuardPointAnim() const { return guard_anim; }
void SaveGuardPointAnim(EmuAppearance anim) { guard_anim = anim; } void SaveGuardPointAnim(EmuAppearance anim) { guard_anim = anim; }

View File

@ -1545,7 +1545,7 @@ XS(XS_NPC_GetSpawnPointX)
Perl_croak(aTHX_ "THIS is nullptr, avoiding crash."); Perl_croak(aTHX_ "THIS is nullptr, avoiding crash.");
RETVAL = THIS->GetSpawnPointX(); RETVAL = THIS->GetSpawnPoint().m_X;
XSprePUSH; PUSHn((double)RETVAL); XSprePUSH; PUSHn((double)RETVAL);
} }
XSRETURN(1); XSRETURN(1);
@ -1572,7 +1572,7 @@ XS(XS_NPC_GetSpawnPointY)
Perl_croak(aTHX_ "THIS is nullptr, avoiding crash."); Perl_croak(aTHX_ "THIS is nullptr, avoiding crash.");
RETVAL = THIS->GetSpawnPointY(); RETVAL = THIS->GetSpawnPoint().m_Y;
XSprePUSH; PUSHn((double)RETVAL); XSprePUSH; PUSHn((double)RETVAL);
} }
XSRETURN(1); XSRETURN(1);
@ -1599,7 +1599,7 @@ XS(XS_NPC_GetSpawnPointZ)
Perl_croak(aTHX_ "THIS is nullptr, avoiding crash."); Perl_croak(aTHX_ "THIS is nullptr, avoiding crash.");
RETVAL = THIS->GetSpawnPointZ(); RETVAL = THIS->GetSpawnPoint().m_Z;
XSprePUSH; PUSHn((double)RETVAL); XSprePUSH; PUSHn((double)RETVAL);
} }
XSRETURN(1); XSRETURN(1);
@ -1626,7 +1626,7 @@ XS(XS_NPC_GetSpawnPointH)
Perl_croak(aTHX_ "THIS is nullptr, avoiding crash."); Perl_croak(aTHX_ "THIS is nullptr, avoiding crash.");
RETVAL = THIS->GetSpawnPointH(); RETVAL = THIS->GetSpawnPoint().m_Heading;
XSprePUSH; PUSHn((double)RETVAL); XSprePUSH; PUSHn((double)RETVAL);
} }
XSRETURN(1); XSRETURN(1);