2015-03-12 3 views
0

Я пытаюсь использовать инструмент «Создать движущийся экземпляр» объекта в создателе игры. Проблема в том, что x и y должны быть такими же, как объект, запускающий эти новые экземпляры.Как получить экземпляр объекта в игре?

Я пытался ставить this.x и player.x, но я не знаю, как сказать моим пули, что они должны иметь первоначальный x и y от плеера.

+0

(имя объекта) .x и (objectname) .y – Timtech

ответ

0

В большинстве диалогов создания действий есть флажок «относительный». Если вы проверите его, он установит значения относительно объекта, из которого вызывается действие. x = 0 y = 0 сделает трюк.

В GML коде, вы могли бы сделать:

var bullet = instance_create(x, y, obj_bullet); 
bullet.direction = direction; // shoot in direction the player is moving 
bullet.speed = 4; 
0

Предположим, вы объект игрока называется obj_player, вы можете использовать obj_player.x и obj_player.y. Это также предполагает, что у вас есть только один экземпляр игрока за один раз (что верно для большинства игр).

ИЛИ, если это действие в объект, который вы желающей позицию с, вы можете просто использовать x и y или self.x и self.y. Оба совершают тот же подвиг. Этот вариант не делает предположение как вариант выше, поэтому его технически безопаснее использовать.

 Смежные вопросы

  • Нет связанных вопросов^_^