Изменения

м
Строка 1: Строка 1:  +
{{Устарело}}
 
''Это 1 глава перевода оригинального руководства по Dream Maker от разработчиков.''
 
''Это 1 глава перевода оригинального руководства по Dream Maker от разработчиков.''
   Строка 7: Строка 8:  
=Глава 1: Встречайте Dream Maker=
 
=Глава 1: Встречайте Dream Maker=
   −
''The first step to mastery in the lands of sleep is the realization, without waking, that one dreams. In the day worlds, mastery begins by forgetting, without dreaming, that one is awake.'' -- DoD1
+
''Первый шаг к мастерству в мире сна — это умение осознать то, что ты спишь, не пробудившись при этом. Первый шаг к мастерству в мире яви — это умение забыть о реальности, не погружаясь при этом в сон.'' — Книга Дел, часть первая.
    
DM это язык программирования для создания многопользовательских '''Миров'''. Под словом '''Мир''', я подразумеваю виртуальную, мультимедийную среду, где люди управляют своими персонажами, через которых взаимодействуют друг с другом и с игровым миром. Это могут быть соревнования, ролевая игра, место для обсуждения, и многое, многое  другое, трудно себе даже представить.  
 
DM это язык программирования для создания многопользовательских '''Миров'''. Под словом '''Мир''', я подразумеваю виртуальную, мультимедийную среду, где люди управляют своими персонажами, через которых взаимодействуют друг с другом и с игровым миром. Это могут быть соревнования, ролевая игра, место для обсуждения, и многое, многое  другое, трудно себе даже представить.  
Строка 124: Строка 125:  
     icon = 'player.dmi'
 
     icon = 'player.dmi'
   −
Несколько свойств были добавлены. Имя свойство пишется в левой части, а значение, которое оно принимает, в правой. В случае с картинками (''icons''), значением является имя файла записанное в одинарных кавычках. В случае с ''плотностью'' (destinity), значение должно быть 0 либо 1. При значение 1, объект не позволит через себя пройти другим объектам с свойством ''destiny'' равным 1.
+
Несколько свойств были добавлены. Имя свойство пишется в левой части, а значение, которое оно принимает, в правой. В случае с картинками (''icons''), значением является имя файла записанное в одинарных кавычках. В случае с ''плотностью'' (density), значение должно быть 0 либо 1. При значение 1, объект не позволит через себя пройти другим объектам с свойством ''density'' равным 1.
    
==Захватывающее создание карты==
 
==Захватывающее создание карты==
Строка 131: Строка 132:     
'''1.''' Создайте новый проект “''maze''” через пункт меню '''New environment'''.
 
'''1.''' Создайте новый проект “''maze''” через пункт меню '''New environment'''.
 +
 
'''2.''' Создайте основной файл “''maze .dm''” и внесите туда код:
 
'''2.''' Создайте основной файл “''maze .dm''” и внесите туда код:
   Строка 152: Строка 154:  
'''7.''' Скомпилируйте новый, уже графический проект и запустите в ''Dream Seeker''. Если всё было сделано правильно, вы увидите свой проект на экране. Ваш аватар может ходить по этому полу и ударяться головой об эти стены. Не так плохо для нескольких минут работы!  
 
'''7.''' Скомпилируйте новый, уже графический проект и запустите в ''Dream Seeker''. Если всё было сделано правильно, вы увидите свой проект на экране. Ваш аватар может ходить по этому полу и ударяться головой об эти стены. Не так плохо для нескольких минут работы!  
   −
Причина по которой мы не убрали ''floor'' в свойствах плотность ("''destiny = 0''"), в том что ''turf'' уже имеет по умолчанию "''destiny = 0''". Так как ''floor'' является потомком ''turf'', он наследует все свойства родителя. Этот вид наследования свойств один из главных элементов объектно-ориентированных языков, к которым относится DM. В конечном счёте, это просто компактный способ описания связей между родственными объектами.     
+
Причина по которой мы не убрали ''floor'' в свойствах плотность ("''density = 0''"), в том что ''turf'' уже имеет по умолчанию "''density = 0''". Так как ''floor'' является потомком ''turf'', он наследует все свойства родителя. Этот вид наследования свойств один из главных элементов объектно-ориентированных языков, к которым относится DM. В конечном счёте, это просто компактный способ описания связей между родственными объектами.     
    
Перед тем как рассматривать пример, вы должны нарисовать иконки и построить из них лабиринт.   
 
Перед тем как рассматривать пример, вы должны нарисовать иконки и построить из них лабиринт.   
Строка 188: Строка 190:  
Всю работу выполняет последняя строка. Запускается процедура со странным именем: две точки. Это имя DM использует для описания процедур по умолчанию, более известная как родительская или суперпроцедура. То есть процедура ''Login'' проверяет наличие на карте ''mob'', если его нет, то размещает его на любое доступное место. Это именно то что мы хотели получить.  
 
Всю работу выполняет последняя строка. Запускается процедура со странным именем: две точки. Это имя DM использует для описания процедур по умолчанию, более известная как родительская или суперпроцедура. То есть процедура ''Login'' проверяет наличие на карте ''mob'', если его нет, то размещает его на любое доступное место. Это именно то что мы хотели получить.  
   −
Теперь вы можете ощутить общее впечатление от программирование на DM. Есть ряд событий (''Login'' один из них), которые обрабатываются процедурами. В необходимости вы можете заменить процедуру по умолчанию на свою собственную, что бы всё работало именно как вы хотели.  
+
Теперь вы можете ощутить общее впечатление от программирование на DM. Есть ряд событий (''Login'' один из них), которые обрабатываются процедурами. В необходимости вы можете заменить процедуру по умолчанию на свою собственную, чтобы всё работало именно как вы хотели.  
    
Это ещё один важный момент объектно-ориентированного программирования. Каждый тип объекта может реагировать на события по разному. Так он может реагировать как его родитель по умолчанию, либо добавить дополнительные меры по необходимости.  
 
Это ещё один важный момент объектно-ориентированного программирования. Каждый тип объекта может реагировать на события по разному. Так он может реагировать как его родитель по умолчанию, либо добавить дополнительные меры по необходимости.