From Stealth Client

Jump to: navigation, search

Object

ClickOnObject

procedure ClickOnObject(ObjectID:Cardinal)

A single click on the object.

Example:

ClickOnObject(FindType($ 0DE1, Ground));


GetColor

function GetColor(ObjID:Cardinal):Word

object parameter:color


GetDex

function GetDex(ObjID:Cardinal):Integer

object parameter:Dex

GetDirection

function GetDirection(ObjID:Cardinal):Byte

parameter object:Direction

  • dirNorth(0)
  • dirNorthEast(1)
  • dirEast(2)
  • dirSouthEast(3)
  • dirSouth(4)
  • dirSouthWest(5)
  • dirWest(6)
  • dirNorthWest(7)

Example1: Will check if you are facing north

   getdirection(self); 
   if dirNorth then Uosay('Facing North');


Example2: Will cast teleport +11 tiles in direction you are facing

Procedure Teleport;
begin
   Cast('Teleport');
   WaitForTarget(2000); 
   case getdirection(self) of 
     dirNorth : TargetToXYZ(GetX(Self()),GetY(Self())-11,GetZ(Self())); 
     dirNorthEast : TargetToXYZ(GetX(Self())+11,GetY(Self())-11,GetZ(Self())); 
     dirEast : TargetToXYZ(GetX(Self())+11,GetY(Self()),GetZ(Self()));   
     dirSouthEast : TargetToXYZ(GetX(Self())+11,GetY(Self())+11,GetZ(Self()));
     dirSouth : TargetToXYZ(GetX(Self()),GetY(Self())+11,GetZ(Self()));
     dirSouthWest : TargetToXYZ(GetX(Self())-11,GetY(Self())+11,GetZ(Self()));
     dirWest : TargetToXYZ(GetX(Self())-11,GetY(Self()),GetZ(Self()));
     dirNorthWest : TargetToXYZ(GetX(Self())-11,GetY(Self())-11,GetZ(Self()));
   end;
end;


GetDistance

function GetDistance(ObjID:Cardinal):Integer

object parameter:the distance


GetHP

function GetHP(ObjID:Cardinal):Integer

object parameter:HP


GetInt

function GetInt(ObjID:Cardinal):Integer

object parameter:INT


GetMana

function GetMana(ObjID:Cardinal):Integer

object parameter:Mana


GetMaxHP

function GetMaxHP(ObjID:Cardinal):Integer

object parameter:MaxHP


GetMaxMana

function GetMaxMana(ObjID:Cardinal):Integer

object parameter:MaxMana


GetMaxStam

function GetMaxStam(ObjID:Cardinal):Integer

object parameter:MaxStam


GetName

function GetName(ObjID:Cardinal):String

object parameter name


GetNotoriety

function GetNotoriety(ObjID:Cardinal):Byte

object parameter:malice(notoriety)


GetParent

function GetParent(ObjID:Cardinal):Cardinal

object parameter:ID container for this object

Example for Python 3.3. Function to define full item "path" in bags:

def FullParentPath(p):
    if type(p)!=list or not p: p=[p]
    if not p[-1]: return p[1:-1]
    return FullParentPath(p+[GetParent(p[-1])])

p-ObjID

Returns list: [BagID1, BagID2, BagIDpreGround], where BagID1 - first parent for ObjID, BagIDpreGround - last bag before ground (so if you were searching in char's layers or Backpack - CharID).


GetQuantity

function GetQuantity(ObjID:Cardinal):Integer

object parameter:number in the stack


GetStam

function GetStam(ObjID:Cardinal):Integer

object parameter:Stamina


GetStr

function GetStr(ObjID:Cardinal):Integer

object parameter:STR


GetTooltip

function GetTooltip(ObjID : Cardinal) : String;


GetTooltipRec

function GetToolTipRec(ObjID : Cardinal) : TClilocRec;
 
TClilocRec = packed record
   Count : Cardinal;
   Items : array of TClilocItemRec;
end;
 
TClilocItemRec = packed record
   ClilocID : Cardinal;
   Params : array of String;
 end;

This function will return the tooltip of an item with the records that composes it.

Example:

Program New;
var
aa : TClilocRec;
bb : TClilocItemRec;
i,k : Integer;
begin
aa := GetToolTipRec(BackPack);
AddToSystemJournal('Total lines in Toolptip: ' + IntToStr(aa.Count));
if aa.count > 0 then
for i := 0 to aa.Count - 1 do
begin
AddToSystemJournal('Line ' + IntToStr(i) + ': ');
bb := aa.Items[i]; 
AddToSystemJournal('Cliloc: $' + IntToHex(bb.ClilocID,8));
AddToSystemJournal('Cliloc text: ' + GetClilocByID(bb.ClilocID));
for k := 0 to Length(bb.Params) - 1 do
AddToSystemJournal('Param-' + IntToStr(k) + ': "'
+ bb.Params[k] + '"');
end;


GetType

function GetType(ObjID:Cardinal):Word

object parameter:type


GetZ

function GetZ(ObjID:Cardinal):Byte

object parameter:Z coordinate of


IsContainer

function IsContainer(ObjID:Cardinal):Boolean

object parameter:container?


IsDead

function IsDead(ObjID:Cardinal):Boolean

object parameter:dead


IsFemale

function IsFemale(ObjID:Cardinal):Boolean

object parameter:the floor


IsHidden

function IsHidden(ObjID:Cardinal):Boolean

object parameter:hidden?


IsMovable

function IsMovable(ObjID:Cardinal):Boolean

object parameter:movable?


IsNPC

function IsNPC(ObjID:Cardinal):Boolean

parameter is an object:a thing or person?

IsObjectExists

function IsObjectExists(ObjID : Cardinal) : Boolean;

Checks if ObjID exists.


IsPoisoned

function IsPoisoned(ObjID:Cardinal):Boolean

object parameter:poisoned?


IsRunning

function IsRunning(ObjID:Cardinal):Boolean

object parameter:run


IsWarMode

function IsWarMode(ObjID:Cardinal):Boolean

object parameter:war mode


IsYellowHits

function IsYellowHits(ObjID:Cardinal):Boolean

object parameter:yellowhits?

UseFromGround

function UseFromGround(ObjType : Word;Color : Word) : Cardinal;

Найти на земле предмет по типу и использовать его. Возвращает ИД использованного обьекта.

Пример:

ObjectID := UseFromGround($0DE1,$0000);

UseObject

procedure UseObject(ObjectID: Cardinal)

Использовать объект (двойной клик на него).

Пример:

while not Dead do
   begin
   UseObject(FindType($0DE1,Ground));
   wait(3000);
   end;

Примечание: В случае, если объект не существует, то Stealth клиент проигнорирует выполнение данной комманды и зафиксирует это в System журнале.

UseType

function UseType(ObjType : Word;Color : Word) : Cardinal;

Найти в рюкзаке предмет по типу и использовать его. Возвращает ИД использованного обьекта.

Пример:

ObjectID := UseType($0DE1,$0000);


GetTooltipRec

function GetToolTipRec(ObjID : Cardinal) : TClilocRec;
 
TClilocRec = packed record
   Count : Cardinal;
   Items : array of TClilocItemRec;
end;
 
TClilocItemRec = packed record
   ClilocID : Cardinal;
   Params : array of String;
 end;

Функция возвращает тултип айтема в виде записей с номером клилока и массива параметров

Пример:

Program New;
var
aa : TClilocRec;
bb : TClilocItemRec;
i,k : Integer;
begin
aa := GetToolTipRec(BackPack);
AddToSystemJournal('Total lines in Toolptip: ' + IntToStr(aa.Count));
if aa.count > 0 then
for i := 0 to aa.Count - 1 do
begin
AddToSystemJournal('Line ' + IntToStr(i) + ': ');
bb := aa.Items[i]; 
AddToSystemJournal('Cliloc: $' + IntToHex(bb.ClilocID,8));
AddToSystemJournal('Cliloc text: ' + GetClilocByID(bb.ClilocID));
for k := 0 to Length(bb.Params) - 1 do
AddToSystemJournal('Param-' + IntToStr(k) + ': "'
+ bb.Params[k] + '"');
end;