Home API Manuals About Forum
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

GetBuffBarInfo

Returns a list of the character’s currently active buffs and debuffs.

In Pascal, returns TBuffBarInfo — a record with Count and Buffs array. In Python, returns list[BuffBarInfo].

If the character is not connected, returns a record with Count = 0 (Pascal) or an empty list (Python).

Note: The Seconds field in each buff entry represents the buff duration at the time it was applied, not the remaining time.

Возвращает список активных баффов и дебаффов персонажа.

В Pascal возвращает TBuffBarInfo — запись с Count и массивом Buffs. В Python возвращает list[BuffBarInfo].

Если персонаж не подключён, возвращает запись с Count = 0 (Pascal) или пустой список (Python).

Примечание: Поле Seconds в каждой записи баффа содержит длительность на момент применения, а не оставшееся время.

Pascal

function GetBuffBarInfo: TBuffBarInfo;

Type definitions:

TBuffIcon = packed record
  Attribute_ID: Word;
  TimeStart: TDateTime;
  Seconds: Word;
  ClilocID1: Cardinal;
  ClilocID2: Cardinal;
  ClilocID3: Cardinal;
  BuffText: String;
end;

TBuffBarInfo = packed record
  Count: Byte;
  Buffs: TArray<TBuffIcon>;
end;

Python

def GetBuffBarInfo() -> list[BuffBarInfo]: ...

Pascal Example

var
  Info: TBuffBarInfo;
  i: Integer;
begin
  Info := GetBuffBarInfo;
  if Info.Count = 0 then
  begin
    AddToSystemJournal('No active buffs');
    Exit;
  end;
  for i := 0 to Info.Count - 1 do
    AddToSystemJournal('Buff: ' + Info.Buffs[i].BuffText +
      ', Duration: ' + IntToStr(Info.Buffs[i].Seconds) + 's');
end.

Python Example

buffs = GetBuffBarInfo()
if not buffs:
    AddToSystemJournal('No active buffs')
else:
    for buff in buffs:
        AddToSystemJournal(f'Buff: {buff.BuffText}, Duration: {buff.Seconds}s')

See Also

ExtendedInfo