--- @alias SpellTargetTest fun(caster: Character, targetPosition: Vec3) : boolean

return {
    any = function() return true end,
    caster = function(caster, targetPosition)
        local targetCharacterId = Tree.level.characterGrid:get(targetPosition)
        return caster.id == targetCharacterId
    end,
    character = function(caster, targetPosition)
        local targetCharacterId = Tree.level.characterGrid:get(targetPosition)
        return not not targetCharacterId
    end
}
