UO Topic shops vendors - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

Shops & Vendors

Home · BASIC · UO API · A–Z · Examples · Languages

Покупка, продажа, списки магазина, задержки и цены личного торговца. AllPrice и MassPriceMove используют type предмета там, где это указано в их параметрах.

Разделы

Тема Команды и пояснения
Buy UO.Buy
Sell UO.Sell
AutoBuy UO.AutoBuy
AutoSell UO.AutoSell
Shop List UO.GetShopList · UO.ClearShopList · UO.Shop
Prices UO.GetPrice · UO.AllPrice · UO.MassPriceMove
VendorMenu UO.VendorMenu
SendShopReply UO.SendShopReply

Все команды темы

Buying / Selling

UO.Buy · UO.Sell · UO.AutoBuy · UO.AutoBuyEx · UO.AutoSell · UO.Shop · UO.GetShopList · UO.ClearShopList · UO.VendorMenu · UO.SendShopReply

Prices

UO.GetPrice · UO.AllPrice · UO.MassPriceMove

Delays

UO.GetAutoBuyDelay · UO.GetAutoSellDelay · UO.SetAutoBuyDelay · UO.SetAutoSellDelay

Примеры по теме

Параметры, требования к состоянию клиента и результат каждого вызова описаны в связанной карточке. Перед игровыми действиями замените демонстрационные serial, координаты и имена на свои.

UO.AllPrice

Полная карточка: параметры, возврат и разбор

# Одна цена для последующих предметов любого типа
#
# Включает автоматический ввод цены после помещения предмета в инвентарь своего вендора. Команда
# сама не переносит предметы. Сначала включите режим, затем перетащите предмет. Цена
# отправляется только после соответствующего запроса сервера. Второй параметр фильтрует TYPE
# предмета.
#
# Unit: значения нет. Activate AllPrice сообщает о включении. Строка sent price сообщает об
# отправленном ответе, не о подтверждённом сервером принятии цены.

# price=125 — цена каждого item целиком. type отсутствует: подходят любые типы.
# После запуска вручную положите товар в инвентарь своего вендора. На запрос цены клиент ответит
# 125. Каждый следующий предмет получает такую же цену до выключения.
# Print только напоминает действие; эта процедура сама ничего не переносит.

SUB PriceNewGoods()
    UO.AllPrice(125)
    UO.Print('Drop goods into your vendor inventory')
END SUB

Это фрагмент для тела процедуры; полный контекст использования приведён в карточке.

UO.MassPriceMove

Полная карточка: параметры, возврат и разбор

# Перенести 50 стопок с ценой, определяя тип мышью
#
# Включает массовый перенос предметов одного TYPE с автоматическим назначением цены в инвентаре
# своего вендора. Источник определяется первым ручным переносом. Каждый стек переносится целиком
# и считается одним item; после его запроса цены клиент отвечает и только затем продолжает
# очередь.
#
# Unit: значения нет. Activate MassPriceMove включает ожидание ручного образца. Сообщения о
# переносе и цене означают отправленные запросы, а не гарантию принятия сервером.

# delay=350 мс; quantity=50 отдельных items, включая первый ручной; type=0 запоминает TYPE
# образца; price=125 за каждый item целиком.
# destination и координаты отсутствуют: перетащите образец именно в инвентарь своего вендора.
# Если исходных стопок 100, переносятся максимум 50 полных стопок. Каждая получает цену 125
# после запроса сервера.

SUB StockVendor()
    UO.MassPriceMove(350, 50, 0, 125)
    UO.Print('Drag one complete stack into your vendor bag')
END SUB

Это фрагмент для тела процедуры; полный контекст использования приведён в карточке.