GameMaker: студия бесконечной местности / бесконечная перемычка

#algorithm #logic #game-maker

#алгоритм #Логические #создатель игр

Вопрос:

Я хочу сделать небольшую игру «Doodle Jump», чтобы получить больше опыта с GM: S. Моя единственная проблема — алгоритм бесконечной местности / блоков / комнат в GM. Может кто-нибудь объяснить, как это работает? Или пример с obj_block , obj_player?

Ответ №1:

Не совсем уверен, что вы имеете в виду под «алгоритмом бесконечной местности / блоков / комнат в GM». Однако игра в стиле doodle jump довольно проста, заставьте игрока не двигаться вертикально, а вместо этого переместить все блоки вниз. Затем, когда блок выходит из нижней части комнаты, переместите его чуть выше верхней части экрана со случайной позицией x.

 ///Player movement code///

//update horizontal
x  = horizontal_speed

//move all blocks down
with (obj_block) {
  y -= other.vertical_speed
}


///in block step event///

//check if out of screen
if (y (sprite_height) > room_height) {
  y = -sprite_height
  x = random_range(0, room_width - sprite_width)
}
  

возможно, потребуется немного отступов по краям, но это зависит от вашей игры, удачи!