function BuffTime(ID: integer; Obj: TL2Live = nil): cardinal;  overload;   // проверка времени бафа у объекта по ID
var i: integer;
begin
  result:= 0;
  if (Obj = nil) then Obj:= User;                 // если объект не указан, то по умолчанию используем юзера 
  for i:= 0 to Obj.Buffs.Count-1 do begin         // пробегаем по списку своих бафов
    if (Obj.Buffs.Items(i).id = ID) then begin    // если ID совпал, то
      result:= Obj.Buffs.Items(i).EndTime;        // записываем в результат время до окончания бафа
      break;
    end;
  end;
end;

function BuffTime(const Name: string; Obj: TL2Live = nil): cardinal;  overload;   // проверка времени бафа у объекта по названию
var i: integer;
begin
  result:= 0;                                            
  if (Obj = nil) then Obj:= User;                     // если объект не указан, то по умолчанию используем юзера 
  for i:= 0 to Obj.Buffs.Count-1 do begin             // пробегаем по списку своих бафов
    if (Obj.Buffs.Items(i).Name = Name) then begin    // если название совпало, то
      result:= Obj.Buffs.Items(i).EndTime;            // записываем в результат время до окончания бафа
      break;
    end;
  end;
end;

begin
  Print(BuffTime(1204));                // Распечатает наше время бафа в мс
  Print(BuffTime('Щит', User.Target));  // Распечатает время бафа нашего таргета в мс
end.