summary refs log tree commit diff
path: root/auto-tune/hooks
diff options
context:
space:
mode:
authorRabbit Whispers <us@starfall.systems>2025-06-14 19:06:40 -0500
committerRabbit Whispers <us@starfall.systems>2025-06-14 19:06:40 -0500
commit164f72cc2fd73fca01ec5efc19c9dfe8a73f3dfe (patch)
tree238db9934518f3c5ab5c593411f288f6f0934f0e /auto-tune/hooks
parentddb751b02017bd003c39cc0ad970990c58361c52 (diff)
auto-tune: clean up code a little bit
Diffstat (limited to 'auto-tune/hooks')
-rw-r--r--auto-tune/hooks/load.lua26
1 files changed, 14 insertions, 12 deletions
diff --git a/auto-tune/hooks/load.lua b/auto-tune/hooks/load.lua
index 1e3a421..ec15beb 100644
--- a/auto-tune/hooks/load.lua
+++ b/auto-tune/hooks/load.lua
@@ -1,9 +1,9 @@
 class:bindHook("ToME:load", function(self, data)
 	local Talents = require "engine.interface.ActorTalents"
-	local TD = Talents.talents_def
+	local DamageType = require "engine.DamageType"
 
-	if TD.T_ATTUNE_MINDSTAR then
-		TD.T_ATTUNE_MINDSTAR.action = function(self, t)
+	if Talents.talents_def.T_ATTUNE_MINDSTAR then
+		Talents.talents_def.T_ATTUNE_MINDSTAR.action = function(self, t)
 			-- do nothing if disarmed
 			if self:attr("disarmed") then
 				return nil
@@ -19,7 +19,6 @@ class:bindHook("ToME:load", function(self, data)
 					return nil
 				end
 				
-				game.logPlayer(self, "Found a %s in %s", o:getName{do_color=1}, slot)
 				return o
 			end
 
@@ -34,17 +33,20 @@ class:bindHook("ToME:load", function(self, data)
 				return
 			end
 
-			local wanted_damage_type = engine.DamageType.MIND
-			if primary.combat.damtype == engine.DamageType.MIND then
-				wanted_damage_type = engine.DamageType.NATURE
+			local wanted = DamageType.MIND
+			if primary.combat.damtype == DamageType.MIND then
+				wanted = DamageType.NATURE
 			end
 
 			-- update damage types
-			if mh then mh.combat.damtype = wanted_damage_type end
-			if oh then oh.combat.damtype = wanted_damage_type end
-			if tk then tk.combat.damtype = wanted_damage_type end
-
-			game.logPlayer(self, "You attune your mindstar(s) to deal %s%s#LAST# damage.", engine.DamageType.dam_def[wanted_damage_type].text_color, engine.DamageType.dam_def[wanted_damage_type].name)
+			local attune = function (o, dt)
+				if not o then return end
+				o.combat.damtype = dt
+				game.logPlayer(self, "You attune your %s to deal %s%s#LAST# damage.", o:getName{do_color=1}, DamageType:get(dt).text_color, DamageType:get(dt).name)
+			end
+			attune(mh, wanted)
+			attune(oh, wanted)
+			attune(tk, wanted)
 		end
 	end
 end)