我刚刚开始使用gamemaker studio 2,我一直在摸索这个。
我需要能够在不使用碰撞事件的情况下销毁我的敌人对象的特定实例。这是我当前的代码:
在我的播放器对象中:
if (sprite_index = spr_player_attack_left) {
if (obj_enemy.x > x - 25 && obj_enemy.x < x) {
obj_enemy.hp--;
}
}
//detect right
if (sprite_index = spr_player_attack_right) {
if (obj_enemy.x < x + 25 && obj_enemy.x > x) {
obj_enemy.hp--;
}
}
//detect up
if (sprite_index = spr_player_attack_up) {
if (obj_enemy.y > y - 25 && obj_enemy.y < y) {
obj_enemy.hp--;
}
}
//detect down
if (sprite_index = spr_player_attack_up) {
if (obj_enemy.y < y + 25 && obj_enemy.y > y) {
obj_enemy.hp--;
}
}
在我的敌人对象中:
if (hp <= 0) {
var attacked = instance_find(obj_enemy, this.id);
instance_destroy(attacked);
}
目前房间里只有一个敌人实例记录了一次攻击,当我攻击那个实例时,所有实例都被破坏了,而我只希望一个实例被破坏。
提前感谢您的帮助!