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
Secondsfield 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в каждой записи баффа содержит длительность на момент применения, а не оставшееся время.
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;
def GetBuffBarInfo() -> list[BuffBarInfo]: ...
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.
buffs = GetBuffBarInfo()
if not buffs:
AddToSystemJournal('No active buffs')
else:
for buff in buffs:
AddToSystemJournal(f'Buff: {buff.BuffText}, Duration: {buff.Seconds}s')