Tool — различия между версиями

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
(Параметры объекта Tool)
Строка 10: Строка 10:
  
 
* '''Инвентарь''' - обязательно в свойствах должен быть указан инвентарь с которым связан объект, а с инвентарем — таблица, в ячейках которой хранятся объекты (см. свойства объекта Inventory)
 
* '''Инвентарь''' - обязательно в свойствах должен быть указан инвентарь с которым связан объект, а с инвентарем — таблица, в ячейках которой хранятся объекты (см. свойства объекта Inventory)
 +
* '''Флаер''' - Флаер, который тул будет использовать для подстветки при состоянии hint.
 +
* '''Подпись''' - Текстовый объект, который тул будет отображать при таскании.
 +
* '''Текст''' - Айди текстового ресурса, который будет отображаться при таскании.
  
* '''Add''' - состояние объекта, в котором он по клику на него добавит себя в инвентарь. В этом сотояниии можно изменить другой объект:
+
[[Файл:+.png]] '''Add''' - состояние объекта, в котором он по клику на него добавит себя в инвентарь. В этом сотояниии можно изменить другой объект:
 
* obj - объект, состояние которого меняем;
 
* obj - объект, состояние которого меняем;
 
* st - новое состояние объекта.
 
* st - новое состояние объекта.
  
* '''Fail drop''' - неудачный дроп, т.е. объект Tool применили не к тому объекту. При этом можно можно изменить другой объект:
+
[[Файл:+.png]] '''Fail drop''' - неудачный дроп, т.е. объект Tool применили не к тому объекту. При этом можно можно изменить другой объект:
 
* obj - объект, состояние которого меняем;
 
* obj - объект, состояние которого меняем;
 
* st - новое состояние объекта.
 
* st - новое состояние объекта.
  
* '''Drag'''- если на объект наступили мышкой, и не отпуская его, начали перемещать, то при наличии этой команды, объект "прилипнет" к мышке, и будет за ней таскаться. Параметры команды:
+
[[Файл:+.png]]'''Drag'''- если на объект наступили мышкой, и не отпуская его, начали перемещать, то при наличии этой команды, объект "прилипнет" к мышке, и будет за ней таскаться. Параметры команды:
 
* x1 - разрешено таскать, когда координата объекта правее;  
 
* x1 - разрешено таскать, когда координата объекта правее;  
 
* x2 - разрешено таскать, когда координата объекта левее;  
 
* x2 - разрешено таскать, когда координата объекта левее;  
Строка 27: Строка 30:
 
* st - состояние, на какое надо изменить состояние.
 
* st - состояние, на какое надо изменить состояние.
  
* '''Drop''' - если нажатая кнопка мышки отпускается, вызвается эта команда, используется вместе с командой drop.  
+
[[Файл:+.png]] '''Drop''' - если нажатая кнопка мышки отпускается, вызвается эта команда, используется вместе с командой drop.  
 
Параметры команды:
 
Параметры команды:
 
* obj - объект, на который надо уронить таскаемый объект
 
* obj - объект, на который надо уронить таскаемый объект

Версия 14:14, 16 июля 2013

Объект Tool - "применение" - объект, который можно применить для других игровых объектов.

Описание для чего используется объект Tool

Объект Tool — это игровой объект, который мы можем добавить в инвентарь, извлечь из инвентаря, применять на другие объекты, изменять им состояние, вернуть в инвентарь и удалить из инвентаря. При этом не требуется описание сложных машин, где задавались состояния для инвентаря: add (добавление в инвентарь), extract (извлечение из инвентаря и последующего его использования), return (возвращение в инвентарь), remove (удаление объекта и удаление из инвентаря). Объект Tool существует и имеет область применения в рамках всех существующих (или заданных) экранов.

Например: Tt.PNG

Параметры объекта Tool

  • Инвентарь - обязательно в свойствах должен быть указан инвентарь с которым связан объект, а с инвентарем — таблица, в ячейках которой хранятся объекты (см. свойства объекта Inventory)
  • Флаер - Флаер, который тул будет использовать для подстветки при состоянии hint.
  • Подпись - Текстовый объект, который тул будет отображать при таскании.
  • Текст - Айди текстового ресурса, который будет отображаться при таскании.

+.png Add - состояние объекта, в котором он по клику на него добавит себя в инвентарь. В этом сотояниии можно изменить другой объект:

  • obj - объект, состояние которого меняем;
  • st - новое состояние объекта.

+.png Fail drop - неудачный дроп, т.е. объект Tool применили не к тому объекту. При этом можно можно изменить другой объект:

  • obj - объект, состояние которого меняем;
  • st - новое состояние объекта.

+.pngDrag- если на объект наступили мышкой, и не отпуская его, начали перемещать, то при наличии этой команды, объект "прилипнет" к мышке, и будет за ней таскаться. Параметры команды:

  • x1 - разрешено таскать, когда координата объекта правее;
  • x2 - разрешено таскать, когда координата объекта левее;
  • y1 - разрешено таскать, когда координата объекта ниже;
  • y2 - разрешено таскать, когда координата объекта выше;
  • obj - объект, у какого объекта надо изменить состояние;
  • st - состояние, на какое надо изменить состояние.

+.png Drop - если нажатая кнопка мышки отпускается, вызвается эта команда, используется вместе с командой drop. Параметры команды:

  • obj - объект, на который надо уронить таскаемый объект
  • obj2go -объект, которому меняем состояние, когда уронили на объект obj
  • go — новое состояние объекта obj2go
  • del — если 1 — объект Tool удаляется из инвентаря сразу после применения на объект obj, если 0 - объект Tool не удаляется из инвентаря после применения на объект obj.
Примечание: Если Tool не удаляется после применения, то он остается лежать поверху объекта, на который был совершен дроп. Если Tool перетащить за пределы объекта, на который был дроп, то при отпускании Tool вернется в инвентарь. Чтобы после применения Tool самостоятельно вернулся в инвентарь, нужно передать объекту Tool состояние return (а) или в поле del указать значение -1 (б).

Ttt.PNGTt2.PNGTt1.PNG

Состояния объекта Tool

У объекта Tool есть 6 состояний, которые можно задавать машиной:

  • idle - дефолтное состояние, объект на клики, драг, дроп не реагирует;
  • add - объект лежит, но по клику на него добавит себя в инвентарь;
  • forced_add - объект добавляет себя в инвентарь (сразу по вызову состояния, безо всяких кликов), при этом срабатывает обработчик add, который может переводить различные объекты в другое состояние.

После любого из этих двух состояний объект переходит в состояние:

  • extract - объект лежит в инвентаре и ждет пока его вытащат;
  • return - объект возвращается в инвентарь, где бы он ни был;
  • remove - объект удаляется из инвентаря навсегда.

Пример использования объекта Tool

В проекте RiteOfResurrection используеться объект Топор, который имеет тип Tool. Ex1.PNG Данный объект имеет следующие параметры: Prim.PNG

По клику на объект (Топор) - он переходит в состояние Add, т.е. добавляеться в инвентарь. Ex2.PNG

Если мы вытаскиваем объект из инвентаря (т.е. выполняем Drag) и ни куда не применяем (т.е. не выполняем команду Drop), объект автоматически возвращаеться в инвентарь. Ex3.PNG

Когда объект (Топор)роняем на объект Стул (машина Maska_stul2), то объект Maska_stul2 принимает новое состояние:

1) потащили Топор на Стул:

Ex4.PNG

2) вызвали новое состояние объекта Maska_stul2 (топор стал рубить стул):

Ex5.PNG