I dont have a bonfire script but attempted one for u 
Simba Code:
procedure Bonfire;
var
x,y,t:integer;
label
Start,Start2;
begin
Start:
InvMouse(randomrange(2,28),2); //randomly choose a slot, dont include 1st slot if its for holding hatchet
if WaitUpTextMulti(['Craf','raft','log'],1200) then
begin
ClickMouse2(false);
WaitOption('ight',1000);
end else
goto Start; //incase its not log but something else!
Start2:
MarkTime(t);
repeat
wait(50);
until (TimeFromMark(t)>5000) or FindColorSpiralTolerance(x,y,1337488,157,87,426,285,10); //if doesn't work, try a different color; search radius is only near the centre screen
if (TimeFromMark(t)>5000) then
begin
writeln('cant find bonfire');
TerminateScript;
end;
writeln('found bonfire!');
Mouse(x,y,1,1,false);
if not WaitOptionMulti(['dd','dd-lo','Fire'],1200) then
goto Start2;
while ExistsItem(28) do wait(100); //wait until last slot empty
end;