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

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
(Добавляемые параметры)
(Добавляемые параметры)
Строка 64: Строка 64:
 
* свойство — параметр, который мы изменяем;
 
* свойство — параметр, который мы изменяем;
 
* значение — новое значение параметра;
 
* значение — новое значение параметра;
* del — если 1 — объект Tool удаляется из инвентаря сразу после применения на объект obj, если 0 -  объект Tool не удаляется из  инвентаря после применения на объект obj.  
+
* del — если 1 — объект Tool удаляется из инвентаря сразу после применения на объект obj, т.е. при использовании объект сам себе установит состояние remove, если 0 -  объект Tool не удаляется из  инвентаря после применения на объект obj.  
: Примечание: Если Tool не удаляется после применения, то он остается лежать поверху объекта, на который был совершен дроп. Если Tool перетащить за пределы объекта, на который был дроп, то при отпускании Tool вернется в инвентарь. Чтобы после применения Tool самостоятельно вернулся в инвентарь, нужно передать объекту Tool состояние return (а) или в поле del указать значение -1 (б).
+
: Примечание: Если Tool не удаляется после применения, то он остается лежать поверху объекта, на который был совершен дроп. Если Tool перетащить за пределы объекта, на который был дроп, то при отпускании Tool вернется в инвентарь. Чтобы после применения Tool самостоятельно вернулся в инвентарь, нужно передать объекту Tool состояние return или в поле del указать значение 1. Если в дальнейшем Tool нужно будет удалить, то его необходимо перевести в состояние remove.
[[Файл:Ttt.PNG]][[Файл:Tt2.PNG]][[Файл:Tt1.PNG]]
 
  
 
== Состояния объекта Tool ==
 
== Состояния объекта Tool ==

Версия 08:11, 11 июня 2014

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

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

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

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


Общие параметры (см. описание Object)

  • прокликиваемая - Если 1, то кнопка прозрачна для клика мышкой (пропускает объектам под ней). Если 2, то кнопка сама обрабатывает клик, но и пропускает его дальше;
  • память - Если 1, то при повторном открытии экрана объект не обновляет свое состояние (помнит текущие параметры, оставшиеся от предыдущего посещения экрана);
  • курсор - Графический ресурс курсора текущего и всех дочерних объектов.
Пример подписи при drag

Основные параметры

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

Группа - Положение подписи

  • txt_x - Положение по оси х обьекта с подписью. Отсчитывается от точки пивота тула.
  • txt_y - Положение по оси y обьекта с подписью. Отсчитывается от точки пивота тула.

Например: необходимо, чтобы при клике мышкой на объект Tool выводилось текстовое сообщение от этом объекте. Для этого необходимо сначала создать текстовый объект (см. рисунок - txt_ax) и текстовый айди в базе ресурсов с текстом, открыть его в параметре "Подпись" (1), перетянуть текстовый айди из базы ресурсов в параметр "Текст"(2) и указать время отображения и положение относительно точки пивота объекта Tool.

Добавляемые параметры

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

  • объект - При добавлении объекта в инвентарь перевести объект в состояние из следующего поля;
  • состояние - Новое состояние для объекта из предыдущего поля;
  • свойство - Параметр, который мы изменяем;
  • значение - Новое значение параметра.

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

  • объект - При неудачном дропе объекта перевести объект в состояние из следующего поля;
  • состояние - Новое состояние для объекта из предыдущего поля;
  • свойство - Параметр, который мы изменяем;
  • значение - Новое значение параметра.

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

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

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

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

Состояния объекта 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