mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-17 03:08:26 +00:00
[Quest API] Add Override Parameters to ScaleNPC() in Perl/Lua. (#2816)
# Perl - Add `$npc->ScaleNPC(level, always_scale_stats)`. - Add `$npc->ScaleNPC(level, always_scale_stats, always_scale_special_abilities)`. # Lua - Add `npc:ScaleNPC(level, always_scale_stats)`. - Add `npc:ScaleNPC(level, always_scale_stats, always_scale_special_abilities)`. # Notes - Allows operators to not have to set stats to 0 in order for scaling to kick in when scripting. - Special ability override is separate in case you don't want to override some inherent special abilities the NPC has from a script or otherwise.
This commit is contained in:
+18
-6
@@ -594,11 +594,6 @@ void Perl_NPC_RecalculateSkills(NPC* self) // @categories Skills and Recipes
|
||||
self->RecalculateSkills();
|
||||
}
|
||||
|
||||
void Perl_NPC_ScaleNPC(NPC* self, uint8 npc_level)
|
||||
{
|
||||
return self->ScaleNPC(npc_level);
|
||||
}
|
||||
|
||||
bool Perl_NPC_IsRaidTarget(NPC* self)
|
||||
{
|
||||
return self->IsRaidTarget();
|
||||
@@ -750,6 +745,21 @@ void Perl_NPC_SetLDoNTrapDetected(NPC* self, bool is_detected)
|
||||
self->SetLDoNTrapDetected(is_detected);
|
||||
}
|
||||
|
||||
void Perl_NPC_ScaleNPC(NPC* self, uint8 npc_level)
|
||||
{
|
||||
return self->ScaleNPC(npc_level);
|
||||
}
|
||||
|
||||
void Perl_NPC_ScaleNPC(NPC* self, uint8 npc_level, bool always_scale_stats)
|
||||
{
|
||||
return self->ScaleNPC(npc_level, always_scale_stats);
|
||||
}
|
||||
|
||||
void Perl_NPC_ScaleNPC(NPC* self, uint8 npc_level, bool always_scale_stats, bool always_scale_special_abilities)
|
||||
{
|
||||
return self->ScaleNPC(npc_level, always_scale_stats, always_scale_special_abilities);
|
||||
}
|
||||
|
||||
void perl_register_npc()
|
||||
{
|
||||
perl::interpreter perl(PERL_GET_THX);
|
||||
@@ -872,7 +882,9 @@ void perl_register_npc()
|
||||
package.add("SaveGuardSpot", (void(*)(NPC*))&Perl_NPC_SaveGuardSpot);
|
||||
package.add("SaveGuardSpot", (void(*)(NPC*, bool))&Perl_NPC_SaveGuardSpot);
|
||||
package.add("SaveGuardSpot", (void(*)(NPC*, float, float, float, float))&Perl_NPC_SaveGuardSpot);
|
||||
package.add("ScaleNPC", &Perl_NPC_ScaleNPC);
|
||||
package.add("ScaleNPC", (void(*)(NPC*, uint8))&Perl_NPC_ScaleNPC);
|
||||
package.add("ScaleNPC", (void(*)(NPC*, uint8, bool))&Perl_NPC_ScaleNPC);
|
||||
package.add("ScaleNPC", (void(*)(NPC*, uint8, bool, bool))&Perl_NPC_ScaleNPC);
|
||||
package.add("SendPayload", (void(*)(NPC*, int))&Perl_NPC_SendPayload);
|
||||
package.add("SendPayload", (void(*)(NPC*, int, std::string))&Perl_NPC_SendPayload);
|
||||
package.add("SetCopper", &Perl_NPC_SetCopper);
|
||||
|
||||
Reference in New Issue
Block a user