UseType
Searches for an object of the specified type and color on the character (equipped layers first, then backpack), then uses (double-clicks) it.
ObjType — graphic (type) of the object. Use $FFFF to match any type.
Color — color (hue) of the object. Use $FFFF to match any color.
Returns the serial (ID) of the found and used object, or 0 if no matching object was found.
Search order:
- Character’s equipped layers (excluding the backpack itself).
- Backpack (recursively).
If found on the character’s layers and the result equals the backpack ID, it is skipped to avoid accidentally opening the backpack when searching for items with the same type.
Logs an error if no matching object is found.
Ищет объект указанного типа и цвета на персонаже (сначала слои экипировки, затем рюкзак), затем использует (double-click) его.
ObjType — graphic (тип) объекта. $FFFF — любой тип.
Color — цвет объекта. $FFFF — любой цвет.
Возвращает serial (ID) найденного и использованного объекта, или 0 если подходящий объект не найден.
Порядок поиска:
- Слои экипировки персонажа (кроме самого рюкзака).
- Рюкзак (рекурсивно).
Если объект найден в слоях и его ID совпадает с ID рюкзака, он пропускается, чтобы избежать случайного открытия рюкзака.
Логирует ошибку, если подходящий объект не найден.
function UseType(ObjType: Word; Color: Word): Cardinal;
def UseType(ObjType: int, Color: int) -> int: ...
const
BANDAGE_TYPE = $0E21;
begin
if UseType(BANDAGE_TYPE, $FFFF) > 0 then
AddToSystemJournal('Used bandage: $' + IntToHex(FindItem, 8))
else
AddToSystemJournal('No bandages found');
end.
BANDAGE_TYPE = 0x0E21
result = UseType(BANDAGE_TYPE, 0xFFFF)
if result > 0:
AddToSystemJournal(f'Used bandage: ${FindItem():08X}')
else:
AddToSystemJournal('No bandages found')