15. Разделение внутреннего и внешнего - Порядок в проекте Construct 3 - собственный взгляд
Добрый день!
Меня зовут Руслан.
С 2016 года делаю игры в редакторе Construct 3.
В каждой игре есть внутренняя часть и есть внешняя.
Внутренняя - это обработка событий, работа с переменными, изменение массивов и т.д.
Внешняя - передвижение персонажей по экрану, нажатие кнопок, раскрывание окон и т.п.
Внутреннее и внешнее лучше разделять в тех случаях, когда требуется максимальное быстродействие игры.
Например, если есть игровое поле из квадратиков и нужно знать, в каком квадратике находится герой. И знать это нужно часто и быстро.
Если по 60 раз в секунду опрашивать каждый квадратик на пересечение со спрайтом героя - это может затормозить игру.
А если герой скачет достаточно быстро - то игра может не успеть просчитать его столкновения и не учтёт какое-нибудь важное событие.
В таких случаях лучше перенести обработку событий во внутреннюю часть - завести массив, в котором будет отмечаться, где находится герой.
И соответственно - проверять уже не каждый квадратик поля а каждую ячейку массива на наличие в нём "символа" героя. Это будет значительно быстрее.
А игроку можно будет показывать уже только результат этой проверки.
Как говорится - разделяй и властвуй.
P.S. По поводу игры на скриншоте - она называется Running Eva. Это мой клон старенькой игры Lode runner, которая существовала ещё на компьютерах ZX Spectrum.
Хотя в целом игра работает и в ней даже есть несколько уровней, мне пока не удалось прописать в ней приличный ИИ для врагов. Они вроде бы бегают за героиней, но как-то кривовато. Может со временем допилю.
Поиграть можно здесь:
https://dharmagames.ru/games/arcade/runningeva/index.html
P.P.S. Как обычно, Телеграм:
https://t.me/toyprogrammer