Бьендгайд от Дервена
Часть 1
В языке DM(dream maker) все объекты, что мы создаем делятся на две важные части:
1. datum — их нельзя поставить на карту
2. atom — их можно поставить на карту
atom —аббревиатура, расшифровывается как area turf object mob, это значит
Например, если мы напишем:
https://pastebin.com/Et36sykV
То мы создадим объект vasya, который является подтипом obj. Таким образом благодаря табуляции мы помогли дрим мейкеру правильно понять иерархию объектов, что и к чему относится.
Теперь поговорим о методах и свойствах. Если говорить простыми словами, то методы — это те действия, которые может выполнить объект. Свойства — это переменные, которые говорят нам о каких-то показателях (здоровье, инвентарь), важно понять, что свойством может быть и другой объект, например, перчатка на нашем персонаже. Также у всех объектов есть встроенные методы и свойства. Чтобы проиллюстрировать все это я приведу пример:
https://pastebin.com/3644GDVV
У цверкуни, как и у всех объектов есть встроенное свойства luminosity, оно освещает столько тайлов, сколько мы укажем. При значении равном 0, ничего не будет светится. Также мы объявили переменную и определили её значение, так как мы поставили количество табуляций ровно на 1 больше, чем у cverkun данные свойства принадлежат именно к этому объекту и его подтипам. Также мы создали для cverkun метод(proc), который заставляет наш объект светиться на 1 тайл и записывает ему в message ‘я свечусь’
Как же нам задействовать то, что мы написали? Вариантов много, например мы можем использовать конструктор New() в качестве команды, с которой начнет свое выполнение наш метод cverkun.
https://pastebin.com/PqavW6PW
То есть теперь, если мы поместим наш объект на карту, то при его создании дрим мейкер должен будет выполнить все то, что мы прописали под New().