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, oParentAttackable, _temp_list, false); for (var i = 0; i < _num; i++) { var _inst = _temp_list[| i]; if ds_list_find_index(hit_list, _inst) == -1 { if ds_list_empty(hit_list) with(owner) { global.hitstop = other.hit_feedback; if other.y_offset > 0 // δΈ‹εŠˆ player_perform_pogo(); if other.x_offset != 0 // 反冲 player_perform_recoil(); } if object_is_ancestor(_inst.object_index, oParentEnemy) with(_inst) { enemy_get_hit(other.damage, other.kb_factor_x, other.kb_factor_y); } ds_list_add(hit_list, _inst); } } ds_list_destroy(_temp_list);