From 5fe8649ed26ebc8da6ee9570a4c46c3b262e0483 Mon Sep 17 00:00:00 2001 From: Dinkledork <118951051+Day36512@users.noreply.github.com> Date: Thu, 2 Feb 2023 18:14:12 -0700 Subject: [PATCH] Update SetnpclevelScourgeTrash.lua --- SetnpclevelScourgeTrash.lua | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/SetnpclevelScourgeTrash.lua b/SetnpclevelScourgeTrash.lua index c0ac202..aa8bde4 100644 --- a/SetnpclevelScourgeTrash.lua +++ b/SetnpclevelScourgeTrash.lua @@ -8,31 +8,32 @@ local npcIds = { 8531, 11551, 10488, - 10487, + 10487, 1788, 10414, 10407 } --- Function to cast spell ID 41236 on the creature and mask the level up spawning visual. this was really just for an event and can be removed local function CastSpellOnSpawn(event, creature) --- Set the creature's level to a random value between 25-30 -local level = math.random(25, 30) -local originalLevel = creature:GetLevel() -creature:SetLevel(level) + if not creature then + print("Error: creature was not set!") + return + end -if level < originalLevel then --modifies health of affected npcs by 3% per level. Adjust it to your liking. -creature:SetMaxHealth(creature:GetMaxHealth() * (1 - (originalLevel - level) * 0.03)) -creature:SetHealth(creature:GetMaxHealth()) -else -creature:SetMaxHealth(creature:GetMaxHealth() * (1 + (level - originalLevel) * 0.03)) -creature:SetHealth(creature:GetMaxHealth()) + local originalLevel = creature:GetLevel() + local randomLevel = math.random(25, 30) + local levelDiff = originalLevel - randomLevel + + creature:SetLevel(randomLevel) + creature:SetMaxHealth(creature:GetMaxHealth() * (1 - levelDiff * 0.03)) + creature:SetHealth(creature:GetMaxHealth()) + creature:CastSpell(creature, 41236, true) --teleport visual end -creature:CastSpell(creature, 41236, true) --teleport visual +for _, npcId in ipairs(npcIds) do + RegisterCreatureEvent(npcId, 5, CastSpellOnSpawn) end - -- Register the function to be called on creature spawn event for each NPC ID for i = 1, #npcIds do RegisterCreatureEvent(npcIds[i], 5, CastSpellOnSpawn)