From Stealth Client

Jump to: navigation, search

Переменные_чара

Armor

function Armor() : SmallInt

Возвращает параметр чара - кол-во "единиц" брони (Armor).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

  AddToSystemJournal('Armor rate: ' + IntToStr(Armor))

Backpack

function Backpack() : Cardinal

Возвращает параметр чара - ID рюкзака (Backpack ID).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Часто используется, например, в поиске, указателем получателя для перетаскивания вещей, и прочее.

Пример 1:

if Count(runes) < 10 then
begin
   MoveItem(runestack,10-Count(runes),Backpack,0,0,0)
end;

Пример 2:

  FindType($EED,Backpack)


CharName

function CharName() : String

Возвращает параметр чара - имя (Name).

В случае, если отсутствует соединение с UO сервером - вернет пустую строку ().

Пример 1:

if (CharName = 'MyChar') then
begin
  ''Do something
end;

Пример 2:

AddToSystemJournal('Имя чара: ' + CharName);


CharTitle

function CharTitle : string;

Возвращает параметр чара - Титул.

Пример:

  AddToSystemJournal(CharTitle);


ColdResist

function ColdResist() : Word

Возвращает параметр чара - сопротивление холоду (Cold Resist).

Работает только начиная с версии клиента Samurie Empire + на сервере должен быть включен режим расширенных статов,отсылаемых клиенту, иначе вернет 0.


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if ColdResist> 0 then
begin
  ''do something, like go home, or drop, etc.
end;

Пример 2:

  AddToSystemJournal('Текущий Cold Resist: ' + IntToStr(ColdResist))


ConnectedTime

function ConnectedTime() : TDateTime

Возвращает параметр чара - Время последнего подключения к серверу (ConnectedTime).

возвращает время последнего удачного коннекта к серверу.

В случае, если отсутствует соединение с UO сервером - вернет '30.12.1899' без времени. в формате даты это есть эквивалент нуля.

Пример:

  AddToSystemJournal('Последнее удачное подключение было в (Last Connect Time): ' + DateTimeToStr(ConnectedTime))


Dead

function Dead() : Boolean

Возвращает параметр чара - Мертвый (Dead).

Если True - мертв, если False - жив


В случае, если отсутствует соединение с UO сервером - вернет False.

Пример 1:

if Dead then
begin
  ''do something, like resurrect or something other
end;

Пример 2:

if (not Dead) then
  AddToSystemJournal('Чар жив')
else
  AddToSystemJournal('Чар мертв');


Dex

function Dex() : Integer

Возвращает параметр игрока - ловкость (DEX).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Dex > 0) then
begin
  ''Do something
end;

Пример 2:

AddToSystemJournal('Ловкость чара: ' + IntToStr(Dex));


DisconnectedTime

function DisconnectedTime() : TDateTime

Возвращает параметр чара - Время последнего отключения от сервера (DisconnectedTime).

возвращает время последнего отключения от сервера (независимо от причины).

В случае, если такового действия не происходило - вернет вернет '30.12.1899' без времени. в формате даты это есть эквивалент нуля.

Пример:

  AddToSystemJournal('Последнее отключение было в (Last Disconnect Time): ' + DateTimeToStr(DisconnectedTime))


EnergyResist

function EnergyResist() : Word

Возвращает параметр чара - сопротивление энергии (Energy Resist).

Работает только начиная с версии клиента Samurie Empire + на сервере должен быть включен режим расширенных статов,отсылаемых клиенту, иначе вернет 0.


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if EnergyResist> 0 then
begin
  ''do something, like go home, or drop, etc.
end;

Пример 2:

  AddToSystemJournal('Текущий Energy Resist: ' + IntToStr(EnergyResist))


FireResist

function FireResist() : Word

Возвращает параметр чара - огнеупорность (Fire Resist).

Работает только начиная с версии клиента Samurie Empire + на сервере должен быть включен режим расширенных статов,отсылаемых клиенту, иначе вернет 0.


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if FireResist > 0 then
begin
  ''do something, like go home, or drop, etc.
end;

Пример 2:

  AddToSystemJournal('Текущий Fire Resist: ' + IntToStr(FireResist))


GetAltName

function GetAltName(ObjID : Cardinal) : String;


GetCliloc

function GetCliloc(ObjID : Cardinal) : String;


GetPrice

function GetPrice(ObjID : Cardinal) : Cardinal;


GetTitle

function GetTitle(ObjID : Cardinal) : String;

Возвращает полное имя, или, по другому титул персонажа. Текст этого имени становиться виден, если открыть в UO-клиенте окно "Character". Тогда, под изображением персонажа, будет видна надпись вида 'The Lord Che-Burahka, Grandmaster Chef'. Функция возвращает не пустую строку ТОЛЬКО после того, как окно персонажа было открыто, до этого момента титул неизвестен и возвращать просто нечего. C точки зрения скрипта Stealth открыть окно "Character" можно вызовами функций Doc:RU/Api/UseObject или Doc:RU/Api/UseOtherPaperdollScroll.

Пример

function GetProfile(Id: Cardinal): String;
var _Timer : Integer;
begin
  Result := GetTitle(Id);
  if (Result = '') and IsNPC(Id) then begin
    UseObject(Id);
    _Timer := Timer+15000; // Задаем максимальное время ожидания ответа 
    while (Timer < _Timer) and (GetTitle(Id) = '') do Wait(100); // Ждем, когда истечет тамаут или обновиться GetTitle
    Result := GetTitle(Id);// Если титул можно узнать, то он будет возвращен
  end
end;

Многие начинающие скрипторы, бояться, что вызов UseObject может спровоцировать атаку на объект, если включен боевой режим WarMode = True. Эти опасения безосновательны, для атаки нужен явный вызов функции Attack.


GetTooltip

function GetTooltip(ObjID : Cardinal) : String;


Gold

function Gold() : Cardinal

Возвращает параметр чара - кол-во денег в паке (Gold amount).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if Gold < 60000 then
begin
  Grab(FindType($OEED,ground),60000-Gold);
end;

Пример 2:

  AddToSystemJournal('Денег в паке(Gold in backpack): ' + IntToStr(Gold))

Ground

function Ground() : Cardinal

Указатель на землю. Часто используется, например, в поиске.

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1: Поиск золотых монет на земле (установить радиус поиска можно используя FindDistance и FindVertical)

  FindType($EED, Ground);


HP

function HP() : Integer

То же, что и Doc:RU/Api/Life.

Возвращает параметр чара - здоровье (HITS).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (HP > 0) then
begin
  ''Do something
end;

Пример 2:

AddToSystemJournal('Здоровье чара: ' + IntToStr(HP));


Hidden

function Hidden() : Boolean

Возвращает параметр чара - Скрытность (Hidden).

В случае, если отсутствует соединение с UO сервером - вернет False.

Пример 1:

if (not Hidden) then
begin
  UseSkill('Hiding');
end;

Пример 2:

if (not Hidden) then
  AddToSystemJournal('Чар не в хайде')
else
  AddToSystemJournal('Чар в хайде');


Int

function Int() : Integer

Возвращает параметр игрока - интеллект (INT).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Int > 0) then
begin
  ''Do something
end;

Пример 2:

AddToSystemJournal('Интеллект чара: ' + IntToStr(Int));


Life

function Life() : Integer

То же, что и Doc:RU/Api/HP.

Возвращает параметр чара - здоровье (HITS).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Life > 0) then
begin
  ''Do something
end;

Пример 2:

AddToSystemJournal('Здоровье чара: ' + IntToStr(Life));


Luck

function Luck() : Word

Возвращает параметр чара - Удача (Luck).

Работает только начиная с версии клиента Samurie Empire + на сервере должен быть включен режим расширенных статов,отсылаемых клиенту, иначе вернет 0.

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

  AddToSystemJournal('Удача чара (Char Luck): ' + IntToStr(Luck))


Mana

function Mana() : Integer

Возвращает параметр чара - Мана (Mana points).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Mana < 30) then
begin
  UseSkill('Meditation');
end;

Пример 2:

AddToSystemJournal('Кол-во маны: ' + IntToStr(Mana));


MaxHP

function MaxHP() : Integer

То же, что и Doc:RU/Api/MaxLife.

В 99% случаев равно Str. Может отличаться, только если админ специально меняет параметры обьекта (чара, НПЦ) и руками выставляет MaxHP отличное от Str(обычно в бОльшую сторону).

Возвращает параметр чара - максимальное кол-во здоровья (Max HITS).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Life < MaxHP) then
begin
  UOSay('Man, some problem with HP here');
end;

Пример 2:

AddToSystemJournal('Максимум здоровья чара: ' + IntToStr(MaxHP));


MaxLife

function MaxLife() : Integer

То же, что и Doc:RU/Api/MaxHP.

В 99% случаев равно Str. Может отличаться, только если админ специально меняет параметры обьекта (чара, НПЦ) и руками выставляет MaxHP отличное от Str(обычно в бОльшую сторону).

Возвращает параметр чара - максимальное кол-во здоровья (Max HITS).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Life < MaxLife) then
begin
  UOSay('Man, some problem with HP here');
end;

Пример 2:

AddToSystemJournal('Максимум здоровья чара: ' + IntToStr(MaxLife));


MaxMana

function MaxMana() : Integer

В 99% случаев равно Int. Может отличаться, только если админ специально меняет параметры обьекта (чара, НПЦ) и руками выставляет MaxMana отличное от Int(обычно в бОльшую сторону).

Возвращает параметр чара - максимальное кол-во маны (Max Mana).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Mana < MaxMana) then
begin
  UOSay('It's time for meditation');
end;

Пример 2:

AddToSystemJournal('Максимум маны чара: ' + IntToStr(MaxMana));


MaxStam

function MaxStam() : Integer

В 99% случаев равно Dex. Может отличаться, только если админ специально меняет параметры обьекта (чара, НПЦ) и руками выставляет MaxStam отличное от Dex(обычно в бОльшую сторону).

Возвращает параметр чара - максимальное кол-во стамины (Max Stamina).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Stam < MaxStam) then
begin
  UOSay('Not full stamina');
end;

Пример 2:

AddToSystemJournal('Максимум стамины чара: ' + IntToStr(MaxStam));


MaxWeight

function MaxWeight() : Word

Возвращает параметр чара - Максимальный Вес (Weight).

Работает только начиная с версии клиента Samurie Empire + на сервере должен быть включен режим расширенных статов,отсылаемых клиенту, иначе вернет 0.


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if Weight > MaxWeight - 20 then
begin
  ''do something, like go home, or drop, etc.
end;

Пример 2:

  AddToSystemJournal('Максимальный Вес (Your Max weight): ' + IntToStr(MaxWeight))


Paralyzed

function Paralyzed() : Boolean

Возвращает параметр чара - парализованность (Paralyzed).

В случае, если отсутствует соединение с UO сервером - вернет False.

Пример 1:

if Paralyzed then
begin
  ''do something, like cast Cure or drink cure potion
end;

Пример 2:

if (not Paralyzed) then
  AddToSystemJournal('Чар не парализован');
else
  AddToSystemJournal('Чар парализован');


PetsCurrent

function PetsCurrent() : Byte

Возвращает параметр чара - количество животных (Pets).


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

 if PetsCurrent > 2 then
  UOSay('У меня больше 2-х животных');


PetsMax

function PetsMax() : Byte

Возвращает параметр чара - максимальное количество животных (Pets Maximum).


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

 if PetsCurrent < PetsMaximum then
  UOSay('Я еще могу приручить животное);


PoisonResist

function PoisonResist() : Word

Возвращает параметр чара - сопротивление яду (Poison Resist).

Работает только начиная с версии клиента Samurie Empire + на сервере должен быть включен режим расширенных статов,отсылаемых клиенту, иначе вернет 0.


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if PoisonResist> 0 then
begin
  ''do something, like go home, or drop, etc.
end;

Пример 2:

  AddToSystemJournal('Текущий Poison Resist: ' + IntToStr(PoisonResist))


Poisoned

function Poisoned() : Boolean

Возвращает параметр чара - Отравленность (Poisoned).

В случае, если отсутствует соединение с UO сервером - вернет False.

Пример 1:

if Poisoned then
begin
  ''do something, like cast Cure or drink cure potion
end;

Пример 2:

if (not Poisoned) then
  AddToSystemJournal('Чар не отравлен')
else
  AddToSystemJournal('Чар отравлен');


Race

function Race() : Byte

Возвращает параметр чара - Раса (Race).

Работает только начиная с версии клиента Samurie Empire + на сервере должны быть включены расы, иначе вернет 0.

Значения: 0=Human, 1=Elf (на некоторых серверах эти стандартные значения могут быть изменены либо расширены)


В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

  AddToSystemJournal('Раса чара (Char Race): ' + IntToStr(Race))


Self

function Self() : Cardinal

Возвращает параметр чара - ID чара (Char ID).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

  WaitTargetObject(Self);
  CastSpell('Bless');


Sex

function Sex() : Byte

Возвращает параметр чара - Пол (Sex).

Если возврщает 0 - male мужской, 1- female женский

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

case Sex of
  0: AddToSystemJournal('Чар мужского пола')
  1: AddToSystemJournal('Чар женского пола')
  else AddToSystemJournal('Чар еще не определился :)');


Stam

function Stam() : Integer

Возвращает параметр чара - стамина (Stamina).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Stam > 0) then
begin
  ''Do something
end;

Пример 2:

AddToSystemJournal('Стамина чара: ' + IntToStr(Stam));


Str

function Str() : Integer

Возвращает параметр чара - сила (STR).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if (Str > 0) then
begin
  ''Do something
end;

Пример 2:

AddToSystemJournal('Сила чара(Char strength): ' + IntToStr(Str));


Weight

function Weight() : Word

Возвращает параметр чара - Вес (Weight).

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример 1:

if Weight > 190 then
begin
  ''do something, like go home, or drop, etc.
end;

Пример 2:

  AddToSystemJournal('Вес (Your weight): ' + IntToStr(Weight))

WorldNum

function WorldNum() : Byte

Возвращает параметр чара - Номер мира (WorldNum).

Работает на серверах, где кол-во мировых карт( или миров, как их обычно называют) больше одной.

Значения:

  • 0 - Felucca (Britannia)
  • 1 - Trammel (Britannia_alt)
  • 2 - Ilshenar
  • 3 - Malas
  • 4 - Tokuno

номера миров из версии SA добавлю позже.

В случае, если отсутствует соединение с UO сервером - вернет 0.

Пример:

  AddToSystemJournal('Номер мира (Your World number is): ' + IntToStr(WorldNum))