-
Notifications
You must be signed in to change notification settings - Fork 0
API UO Drop
Оглавление · Алфавитный указатель · Items
ClassicUO • Runtime API
Выполняет полный перенос указанного предмета, по умолчанию на землю под персонажем.
UO.Drop(object:Any) -> Integer
UO.Drop(object:Any, count:Any) -> Integer
UO.Drop(object:Any, count:Any, destination:Any) -> Integer
UO.Drop(ObjID:Any, Count:Any, X:Any, Y:Any, Z:Any) -> Any
Выберите одну из зарегистрированных форм. Параметры передаются позиционно. Any означает значение BASIC с преобразованием внутри команды; Unit — отсутствие возвращаемого значения.
-
object / ObjID— Serial конкретного предмета/персонажа: число, hex/десятичная строка, self/backpack/lasttarget/lastobject/lastcontainer/lastcorpse/finditem/laststatus либо сохранённое имя AddObject. Это не type. Объект должен быть загружен; перед действием проверяйте Exists. -
count / Count— Количество единиц внутри одного стека. 0 или отрицательное значение означает весь стек; положительное ограничивается доступным количеством. Это НЕ число стопок, которое ограничивает MassMove. В короткой форме без count равен 0. -
destination— Только в форме с тремя аргументами: Serial контейнера или установленное имя AddObject; backpack/self/my выбирают рюкзак, receiving/catchbag — SetCatchBag, а без него рюкзак. lastcontainer/lastobject/lasttarget/lastcorpse/finditem/laststatus допустимы, когда разрешаются в нужный контейнер. ground или 0 явно выбирает землю; -1 — прежний селектор рюкзака. Неизвестное или неустановленное имя вызывает ошибку до захвата предмета. Без аргумента назначения используется рюкзак. -
X— Только в форме с пятью аргументами: мировая X назначения на земле. -
Y— Мировая Y для пятиаргументной формы. -
Z— Мировая высота для пятиаргументной формы.
Integer 1 — запрос полного переноса принят клиентом; 0 — не удалось. Пятиаргументная совместимая форма имеет метадату Any, но фактически также возвращает Integer 1/0. Это не сброс ранее взятого DragItem: для него используйте DropItem.
Это логический результат: 1 = TRUE, 0 = FALSE. После VAR result = команда(...) можно писать IF result = TRUE THEN или IF result = 1 THEN; для отрицательного результата — IF result = FALSE THEN или IF result = 0 THEN. TRUE/FALSE пишутся без кавычек. Вызовите команду один раз и сохраните результат: повторный вызов может повторить действие или прочитать уже изменившееся состояние.
- Зарегистрированы формы с 1, 2, 3 и 5 аргументами. Формы с четырьмя аргументами нет.
- Drop(item) переносит весь стек на землю под собой; Drop(item,count) задаёт единицы; Drop(item,count,destination) позволяет контейнер.
- Drop(item,count,X,Y,Z) всегда означает землю. Для контейнера с координатами гампа используйте MoveItem.
- Действуют ограничения подъёма, DropCheckCoord и проверки сервера. Команда не ждёт отдельного подтверждения доставки.
# Весь стек под ноги
#
# Выполняет полный перенос указанного предмета, по умолчанию на землю под персонажем.
#
# Integer 1 — запрос полного переноса принят клиентом; 0 — не удалось. Пятиаргументная
# совместимая форма имеет метадату Any, но фактически также возвращает Integer 1/0. Это не сброс
# ранее взятого DragItem: для него используйте DropItem.
#
# Это логический результат: 1 = TRUE, 0 = FALSE. После VAR result = команда(...) можно писать IF
# result = TRUE THEN или IF result = 1 THEN; для отрицательного результата — IF result = FALSE
# THEN или IF result = 0 THEN. TRUE/FALSE пишутся без кавычек. Вызовите команду один раз и
# сохраните результат: повторный вызов может повторить действие или прочитать уже изменившееся
# состояние.
SUB Main()
# object=loot через AddObject, count=0 по умолчанию.
# Назначение — текущая точка персонажа на земле.
VAR ok = UO.Drop('loot')
END SUBРазбор параметров и выполнения:
- object=loot через AddObject, count=0 по умолчанию.
- Назначение — текущая точка персонажа на земле.
# Пять единиц в рюкзак
#
# Выполняет полный перенос указанного предмета, по умолчанию на землю под персонажем.
#
# Integer 1 — запрос полного переноса принят клиентом; 0 — не удалось. Пятиаргументная
# совместимая форма имеет метадату Any, но фактически также возвращает Integer 1/0. Это не сброс
# ранее взятого DragItem: для него используйте DropItem.
#
# Это логический результат: 1 = TRUE, 0 = FALSE. После VAR result = команда(...) можно писать IF
# result = TRUE THEN или IF result = 1 THEN; для отрицательного результата — IF result = FALSE
# THEN или IF result = 0 THEN. TRUE/FALSE пишутся без кавычек. Вызовите команду один раз и
# сохраните результат: повторный вызов может повторить действие или прочитать уже изменившееся
# состояние.
SUB Main()
# count=5 единиц одной стопки; destination=backpack.
# Третий аргумент здесь контейнер, не X.
VAR ok = UO.Drop('loot', 5, 'backpack')
END SUBРазбор параметров и выполнения:
- count=5 единиц одной стопки; destination=backpack.
- Третий аргумент здесь контейнер, не X.
# Явная точка на земле
#
# Выполняет полный перенос указанного предмета, по умолчанию на землю под персонажем.
#
# Integer 1 — запрос полного переноса принят клиентом; 0 — не удалось. Пятиаргументная
# совместимая форма имеет метадату Any, но фактически также возвращает Integer 1/0. Это не сброс
# ранее взятого DragItem: для него используйте DropItem.
#
# Это логический результат: 1 = TRUE, 0 = FALSE. После VAR result = команда(...) можно писать IF
# result = TRUE THEN или IF result = 1 THEN; для отрицательного результата — IF result = FALSE
# THEN или IF result = 0 THEN. TRUE/FALSE пишутся без кавычек. Вызовите команду один раз и
# сохраните результат: повторный вызов может повторить действие или прочитать уже изменившееся
# состояние.
SUB Main()
# ObjID замените своим serial; Count=0 весь стек; X/Y/Z=1445/1690/0.
# Для этой формы третье значение — X. Предварительный Drag не нужен.
VAR ok = UO.Drop(0x40001234, 0, 1445, 1690, 0)
END SUBРазбор параметров и выполнения:
- ObjID замените своим serial; Count=0 весь стек; X/Y/Z=1445/1690/0.
- Для этой формы третье значение — X. Предварительный Drag не нужен.
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь