нацеливание противника на студию создателя игры 2 DnD - PullRequest
0 голосов
/ 10 февраля 2020

Я использую Game Maker Studio 2 для создания игры в подземелье в качестве опыта программирования, и я пытаюсь сделать врага целью игрока. так как я не понимаю команды в программе, я использую Drag and Drop, чтобы сделать это. Я устанавливаю его скорость равной 4, затем он проверяет, существует ли экземпляр (поскольку у меня есть несколько типов объектов игрока), затем устанавливает направление точки для этого объекта игрока, но он просто начинает двигаться в верхнем левом углу экрана. Кто-нибудь есть идеи, как я могу это исправить? Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 14 февраля 2020

Похоже, что значения X и Y необходимо обновить до экземпляра объекта целевого игрока. Я не уверен с dnd, но с gml вы можете получить к нему доступ из самого объекта. Например, если вы хотите, чтобы координата X объекта проигрывателя вы могли получить, используя что-то вроде этого

objPlayer.x;

Возможно, вам придется использовать глобальную переменную, хотя, если это не работает для вас (не забудьте обновить ее хотя в STEP событии!) Кроме того, еще кое-что следует отметить, что если у вас есть несколько объектов игрока (что звучит так же, как и у вас), вам необходимо знать идентификатор экземпляра для этого объекта игрока. Для этого вы можете использовать что-то вроде этого:

players[i] = instance_create(xx, yy, objPlayer);

Примечание: я также согласен со Стивеном. Я бы порекомендовал начать с этого как можно проще и добавить к нему сложность, поскольку вы получаете все, что хотите. В долгосрочной перспективе это спасет ваше здравомыслие, поверьте мне. ;)

0 голосов
/ 11 февраля 2020

Проверить, существует ли какой-либо экземпляр из нескольких экземпляров, в Gamemaker Studio немного сложно, потому что он должен принять решение, какой из них наиболее близок. Поскольку он не может принять это решение, он, похоже, следует точке по умолчанию (вверху слева).

Так что ему нужно проверить все экземпляры игрока и посмотреть, какой из них ближе всего, затем выбрать этот экземпляр игрока, чтобы следовать. Это должно быть сделано в Step Event, потому что Step Event постоянно обновляется.

Я не знаком с Drag and Drop, поэтому боюсь, что не могу привести вам пример.

Проверьте, работает ли следующий механизм c сначала с одним экземпляром (игроком). Как только это сработает, вы можете попробовать несколько экземпляров.

...