Suggestion: Add ranged support here is code from my modified version
lines ~70:
Code:
//Potions...
PotionName = ''; //Name of the potion you want to use.
PotionsPerRun = 5; //How many to bring on each run?
EffectivePotionTime = 300; //How long before sipping some more potion? !!!!!!!IN SECONDS!!!!!!
//Item Pickup
Items = True; //True or False
//Training Ranged?
Arrow = 'Steel arrow'; // if not training ranged leave ''
ArrowID = 886; // if not training ranged, leave 0
look at last const (i added pre-made code so u can find where to put it easier)
lines ~158:
Code:
if(Items = True) then
begin
if(arrow<>'')then
begin
pickup := [arrow, 'Uncut diamond', 'Uncut ruby', 'Uncut emerald', 'Steel arrow', 'Uncut dragonstone']; //Names in same order as IDs
itemsToPickUp := [arrowID, 1617, 1619, 1621, 886, 1631]; //IDs in same order as Names
//Steel arrow = 886, diamond = 1617, ruby = 1619, emerald = 1621, sapphire = 1623).
end else
begin
pickup := ['Steel arrow', 'Uncut diamond', 'Uncut ruby', 'Uncut emerald', 'Uncut sapphire', 'Uncut dragonstone']; //Names in same order as IDs
itemsToPickUp := [886, 1617, 1619, 1621, 1623, 1631]; //IDs in same order as Names
end;
end else
begin
pickup := [];
itemsToPickUp := [];
end;
lines ~1245:
Code:
inv := r_getInventoryItems;
for invIndex := 0 to high(inv) do
begin
dropTheItem := true;
//Check items to keep
for arrIndex := 0 to high(pickup) do
if(strContains(pickup[arrIndex], inv[invIndex].Name)) then
begin
dropTheItem := false;
if(arrow<>'')then
begin
if(strContains(arrow,inv[invIndex].Name)) then
R_ClickItem(inv[invIndex].slot,'Wield');
end;
end;