if !instance_exists(owner)
	instance_destroy();

x = owner.x + x_offset;
y = owner.y + y_offset;

var _temp_list = ds_list_create();
var _num = instance_place_list(x, y, oParentEntity, _temp_list, false);

for(var i = 0; i < _num; i++)
{
    var _inst = _temp_list[| i];

    if ds_list_find_index(hit_list, _inst) == -1 && instance_exists(_inst)
	{
		if !feedback_activated
			hit_feedback(_inst);
		
		if variable_instance_exists(_inst, "get_hit")
			_inst.get_hit(hit_info);

		ds_list_add(hit_list, _inst);
    }
}
ds_list_destroy(_temp_list);