if distance_to_object(Warrior or Mage_Male)<10 { heal -=global.damage }
попробуй увеличить дистанцию. возможно спрайт монстра слишком большой для таких значений. хорошим тоном было бы в названии обьекта добавлять индекс o_ или obj_ . Сразу становится понятно, что это обьект а не переменная или спрайт или... или...