diff --git a/game/engines/default/engine/ai/talented.lua b/game/engines/default/engine/ai/talented.lua index b2bd43fe2b4e0c181c4fc31ff625f0ba2f0eef38..bee35b1c7bde906d5d6ed4cbbd457bc680f247b1 100644 --- a/game/engines/default/engine/ai/talented.lua +++ b/game/engines/default/engine/ai/talented.lua @@ -30,7 +30,7 @@ newAI("dumb_talented", function(self) -- print(self.name, self.uid, "dumb ai talents can try use", t.name, tid, "::", t.mode, not self:isTalentCoolingDown(t), target_dist <= self:getTalentRange(t), self:preUseTalent(t, true), self:canProject({type="bolt"}, self.ai_target.actor.x, self.ai_target.actor.y)) -- For dumb AI assume we need range and LOS -- No special check for bolts, etc. - local total_range = self:getTalentRange(t) + self:getTalentRadius(t) + local total_range = (self:getTalentRange(t) or 0) + (self:getTalentRadius(t) or 0) local tg = {type=util.getval(t.direct_hit, self, t) and "hit" or "bolt", range=total_range} if t.mode == "activated" and not t.no_npc_use and not self:isTalentCoolingDown(t) and self:preUseTalent(t, true, true) and diff --git a/game/modules/tome/ai/tactical.lua b/game/modules/tome/ai/tactical.lua index 2d78bfcd3a11d6b9acfcc903fd69a656c87f9189..2323a973956863307ed65e31f7d8d29806a04f33 100644 --- a/game/modules/tome/ai/tactical.lua +++ b/game/modules/tome/ai/tactical.lua @@ -83,7 +83,7 @@ newAI("use_tactical", function(self) local tg = self:getTalentTarget(t) local default_tg = {type=util.getval(t.direct_hit, self, t) and "hit" or "bolt"} -- Only assume range... some talents may no require LOS, etc - local within_range = target_dist and target_dist <= (self:getTalentRange(t) + self:getTalentRadius(t)) + local within_range = target_dist and target_dist <= ((self:getTalentRange(t) or 0) + (self:getTalentRadius(t) or 0)) if t.mode == "activated" and not t.no_npc_use and not self:isTalentCoolingDown(t) and self:preUseTalent(t, true, true) and (not self:getTalentRequiresTarget(t) or within_range)