Thanks for your response @Fitta, i'll give an example of the code I was trying to use.
procedure poisoned();
var anti :TReflectInvItem;
begin
if (anti.Find('Anti-venom+(4)')) then
begin
Reflect.Mouse.Move(anti.GetPoint, 2, 2);
fastClick(mouse_left);
end else
writeln('anti venom not found');
When I run this function with an anti-venom+(4) potion in my inv, it doesnt find the potion. I use identical functions for eating food, which work. I also had trouble with another item with a hyphen "-", in it's name, so I think the problem lies there.
Also I followed your advice and ran this
var
inv: TReflectInvItemArray;
begin
inv.GetAll
writeln(inv);
I'm not sure if I did something wrong, it returned a list of my inventory with IDs and references, but the names of all the inventory slots were blank.
[{REFERENCE = 295051960, _INVSLOT = 1, _ID = 2444, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 2, _ID = 3024, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 3, _ID = 12913, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 9, _ID = 2550, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 11, _ID = 3144, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 13, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 14, _ID = 3144, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 15, _ID = 3144, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 17, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 18, _ID = 3144, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 19, _ID = 3144, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 20, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 21, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 22, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 23, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 24, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 25, _ID = 12938, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 26, _ID = 2560, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 27, _ID = 385, _NAME = }, {REFERENCE = 295051960, _INVSLOT = 28, _ID = 385, _NAME = }]