15 is visible from the uppermost
So, 17 and 148 work for you?
Printable View
Well, the old maths work because there is a high amount of margin for error since it can fit 14/15 worlds at a time on the screen. The solution is to fix math all together for the new interface... but I'm having trouble decrypting the code. I think it's these lines in FindWorld
SCAR Code:if Length(WorldArray) < 1 then
LoadWorldArrays;
H := High(WorldArray);
for i := 0 to H do
if (WorldArray[i].Number = W) then
begin
WPos := i+1;
Break;
end;
SPos := Round(WPos*100/(H+1));
if not WorldsOrdered then
begin
Mouse(101, 128, 4, 4, true);//makes them drop down
WorldsOrdered := true;
wait(500+random(500));
end;
if (W < 16) then SPos := 0;
if (W > H-9) then SPos := 100;
Mouse(699, Round(SPos/100.0*262.0+156), 3, 0, true);
SCAR Code:if Length(WorldArray) < 1 then
LoadWorldArrays;
H := High(WorldArray);
for i := 0 to H do
if (WorldArray[i].Number = W) then
begin
WPos := i+1;
Break;
end;
SPos := Round(WPos*100/(H+1)); //this is where it sets the position on the scroll bar via W (world #) and H (the highest world)
if not WorldsOrdered then
begin
Mouse(101, 128, 4, 4, true);//makes them drop down
WorldsOrdered := true;
wait(500+random(500));
end;
if (W < 16) then SPos := 0;
if (W > H-9) then SPos := 100;
Mouse(699, Round(SPos/100.0*262.0+156), 3, 0, true); //this line is the math for the point on the scroll bar
I had to extend the + at the end inside the round procedure to fit inside the the newer, bigger scroll when i did my edits. I thought it worked, and, for the most part it did :/
Look at my edit, kind of fucked it over.
But i have no idea how to write a new math algorithm, but i know how the current one works, i just can't explain things that well :p
E: Also what i ment of extending the + in the round procedure, i ment when i first made this thread i 'thought' i fixed that by extending the y coord in the last line to fit the new scroll bar length.
The algorithm should be fine. Is it loading the world array correct for you guys? I can't check it out right now not at home. But i'll test it with the new stuff when I get home.
Also if this one goes wrong
SPos := Round(WPos*100/(H+1));
then the final algorithm won't work
Edit:
Try adding Writeln('Spos = '+inttostr(SPos)); for debug I bet its not working right... I had the problem in Simba as well... idk whats up with it. I changed it from the original which was SPos := Round(WPos/(H+1)*100);