Что такое класс в RPG Maker MV, и как он объявляется?

Классом мы будем называть функции, которые хранят переменные и имеют встроенные функции, и явно определенную функцию initialize.

Существует два типа классов: динамические и статические (о статических классах поговорим позже). Забегая вперед, скажу, что при описании функции в динамическом классе используется ключевое слово prototype, но это не все отличия
Спойлер Скриншот:


Статический класс:
Спойлер Скриншот:


Пример динамического класса и разница функции и класса:
Спойлер Скриншот:


Третий тип переменных – переменные класса.

Итак, переменная класса – переменная, которая объявляется внутри любой функции класса через указатель this.

Эти переменные доступны через созданный объект с помощью . (точки), как и функции класса.

Когда мы создали объект new classA(), в object записался наш объект, и он будет существовать до конца работы программы, то есть в переменной a будет храниться значение ‘class’, пока мы его не изменим или программа не завершит работу, либо пока мы принудительно не уничтожим объект.

Уничтожить объект мы можем так: object = null; // в прошлом уроке мы говорили, что null – объект, означающий пустоту. Теперь мы не сможем вызвать функцию object.changeA() или обратиться к переменной а - object.a.

Если мы записали объект в локальную переменную, то после выхода из функции этот объект уничтожается.

Итак, благодаря этому типу переменных игра знает на какой вы сейчас карте, сколько у вас денег и т.д., потому что в глобальной переменной хранится объект, в котором определены все эти переменные (номер карты, золото и прочее). В своих плагинах вы можете получить доступ к этой информации в любой момент.

Важно! Нельзя давать одинаковые имена переменным класса и функциям класса.


Функции с параметрами по умолчанию
Спойлер Скриншот:


По умолчанию значение любой переменной неопределенно, то есть принимает значение undefined
Этим можно пользоваться для создания более гибких и универсальных функций