Getting this error when attempting to load custom map and grab coords from OSBuddy.
http://prntscr.com/6eypeu
Hm OSBuddy... Ok first of all did you save your map file in the correct location? (AeroLib > maps > custom > "YOURMAP.png") And when loading your map file & RSWalker are you loading the correct path?
^ Excluding ".png". And... did you remember to drag Simba's client-selector crosshair onto OSBuddy, and ran the script when you were already logged in?Simba Code:Walker.Init('custom','YOUR_MAP', w_getClientPID());
Current projects:
[ AeroGuardians (GotR minigame), Motherlode Miner, Blast furnace ]
"I won't fall in your gravity. Open your eyes,
you're the Earth and I'm the sky..."
ive tried both ways still gives me that error!
Maybe my custom map is off??
On a sidenote: Don't use the memory scanner with that map. That will (probably) fail. That means you should initialize with `-1` instead of for example `w_getClientPID()`.
The map also looks a little small, tho it might be big enough (when you do not use the memory scan stuff)..
Also, my fix for OSBuddy when using memory scanning didn't last, so generally whenever you use OSBuddy do NOT use the mom-scanner. I _might_ write a fix.. but I honestly don't give a fuck about OSBuddy. And I really do not understand why people use it for BOTTING.
Last edited by slacky; 03-10-2015 at 05:22 PM.
!No priv. messages please
This for sure.
That image is far too small, you should take a look at Slacky's tutorial on the correct use of map images. I also agree, I wouldn't recommend OSBuddy at all. I've seen Slacky's post on the amount of memory that client uses and it seems like you'd be killing your speed using the memory-scanning of RSWalker...I say stick with SMART or the browser, both will work smoothly.
Current projects:
[ AeroGuardians (GotR minigame), Motherlode Miner, Blast furnace ]
"I won't fall in your gravity. Open your eyes,
you're the Earth and I'm the sky..."
I only used it because it on ur walker thread someone said not to use smart and to use osbuddy cuz of the memory. -_-
the map cant get any bigger thats the whole map.
Give me just a minute to load up SMART and I'll make a map for you.
Here ya go:
http://i.imgur.com/0S7XFfO.png
Also, it looks like your map was made with the camera at West, but maps should always be made at North.
Last edited by Flight; 03-11-2015 at 02:25 PM.
Current projects:
[ AeroGuardians (GotR minigame), Motherlode Miner, Blast furnace ]
"I won't fall in your gravity. Open your eyes,
you're the Earth and I'm the sky..."
So when you on smart it will grab the map for you??
I have another question with error.
my loop was working fine it just was rushing through without actually waiting until my char got to the pos.
so i added a not function if its not at the location it should begin that function all over.
error:Code:Procedure Loop; begin {$IFDEF SMART} Walker.Init('custom', 'DraynorRoof', OS_SMART.ID); {$ELSE} Walker.Init('custom', 'DraynorRoof', w_getClientPID()); {$ENDIF} Walker.skipClose := 5; Walker.walkStyle := wsSPS; Walker.anyAngle := True; If AgilityIcon then begin ClimbWall; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Rope1 then begin CrossTightRope; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Rope1 then begin Wait(RandomRange(1500,2500)); CrossTightRope; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Rope2 then begin CrossTightRope; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Rope2 then begin Wait(RandomRange(1500,2500)); CrossTightRope; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Balance then begin BalanceNarrowWall; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Balance then begin Wait(RandomRange(1500,2500)); BalanceNarrowWall; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Jump then begin JumpUpWall; Wait(RandomRange(1000,1500)); setCompass('N'); end if not Walker._GetPosCustom() := Jump then begin Wait(RandomRange(1500,2500)); JumpUpWall; Wait(RandomRange(1000,1500)); setCompass('N'); end if Walker._GetPosCustom() := Gap then begin JumpGap; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Gap then begin Wait(RandomRange(1500,2500)); JumpGap; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Crate then begin ClimbCrate; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Crate then begin Wait(RandomRange(1500,2500)); ClimbCrate; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Not AgilityIcon then begin AgilityIcon; Wait(RandomRange(1000,1500)); ClimbWall; Wait(RandomRange(1000,1500)); end; end;
Code:Error: Operator "NOT" not compatible with "record [0]Int32; [4]Int32; end" at line 210 Compiling failed.
Last edited by 3Garrett3; 03-12-2015 at 08:58 PM.
nope that was not the issue.
Ive tried to change := to = it gives me an error saying that
the difference between if and if not is that if its at location it should do this , if its not at location it should start loop over.Code:Error: Operator "cmp_Equal" not compatible with types at line 204 Compiling failed.
I can say for sure though that YES, that was the issue, because I fixed your error. You just have ANOTHER error that has to be fixed now. Previously you were trying to assign the value of "Rope1" to a function, which you can't do so it broke. Now it's telling you that you're just comparing incompatible types of variables. Since you haven't shown me where you define "Rope1" etc. I can't say for sure what the problem is. I assume that "Walker._GetPosCustom()" gives you a TPoint and I can also assume that you don't have Rope1 set to be a TPoint.
I have everything set.
I have yet to work on failsafe need to figure loop out first.Code:program DraynorAgility; {$DEFINE SMART} {$DEFINE WALKER} {$i AeroLib/AeroLib.Simba} //Made By Rules Var X, Y, Agility :Integer; Walker : TRSWalker; Const //Locations Rope1 := Point(214, 133); Rope2 := Point(166, 149); Balance := Point(173, 188); Jump := Point(157, 207); Gap := Point(157, 231); Crate := Point(189, 228); procedure declarePlayer(); begin Me.Name := ''; Me.Pass := ''; Me.Pin := ''; Me.Nick := ''; Me.LampSkill := SKILL_FARMING; Me.Member := True; Me.Active := True; end; Procedure Login; begin loginPlayer(false) end; Procedure DTMz; begin Agility := DTMFromString('m6wAAAHic42ZgYGADYm4g5oNiEJsViBkZEIAZiNmhahmhNCcQ8yLp4UDTx8jISDQmBTCSgJEAAIodAMo='); end; Function ClimbWall: Boolean; // A boolean returns true or false. begin SetAngle(1); setCompass('W'); //if FindObjCustom(X, Y, ['Climb', 'Rou', 'ough wa'], [858658, 2243147, 2045767], 6)then if findMSObjectSimple([858658, 2243147, 2045767], ['Climb', 'Rou', 'ough wa']) then begin writeLn('Climbing Wall'); fastClick(mouse_Right); WaitUpText('Cimb', randomrange(300, 400)); ChooseOptionMulti(['Cimb', 'Rou']); Result := True; // If it finds & clicks the judge, result is true. end; end; Function CrossTightRope: Boolean; // A boolean returns true or false. begin SetAngle(1); setCompass('W'); //if FindObjCustom(X, Y, ['Cross', 'Tigh', 'rope'], [2504771, 3032659, 3493725], 6)then if findMSObjectSimple([2504771, 3032659, 3493725], ['Cross', 'Tigh', 'rope']) then begin writeLn('Crossing Rope'); fastClick(mouse_Right); WaitUpText('Cross', randomrange(300, 400)); ChooseOptionMulti(['Cross', 'Tighrope']); Result := True; // If it finds & clicks the judge, result is true. end; end; Function BalanceNarrowWall: Boolean; // A boolean returns true or false. begin SetAngle(1); setCompass('W'); //if FindObjCustom(X, Y, ['Balance', 'Narrow', 'wall'], [14401, 605511, 13115], 6)then if findMSObjectSimple([14401, 605511, 13115], ['Balance', 'Narrow', 'wall']) then begin writeLn('Balancing Wall'); fastClick(mouse_Right); WaitUpText('Balance', randomrange(300, 400)); ChooseOptionMulti(['Balance', 'Narrow', 'wall']); Result := True; // If it finds & clicks the judge, result is true. end; end; Function JumpUpWall: Boolean; // A boolean returns true or false. begin SetAngle(1); setCompass('W'); //if FindObjCustom(X, Y, ['Jump', '-up', 'wall'], [7982, 4013377, 12347], 6)then if findMSObjectSimple([7982, 4013377, 12347], ['Jump', '-up', 'wall']) then begin writeLn('Jumping Wall'); fastClick(mouse_Right); WaitUpText('Jump', randomrange(300, 400)); ChooseOptionMulti(['Jump', '-up', 'wall']); Result := True; // If it finds & clicks the judge, result is true. end; end; Function JumpGap: Boolean; // A boolean returns true or false. begin SetAngle(1); setCompass('E'); //if FindObjCustom(X, Y, ['Gap'], [3752543, 1845581, 1320014], 6)then if findMSObjectSimple([3752543, 1845581, 1320014], ['Gap']) then begin writeLn('Jumping Gap'); fastClick(mouse_Right); WaitUpText('Gap', randomrange(300, 400)); ChooseOptionMulti(['Gap']); Result := True; // If it finds & clicks the judge, result is true. end; end; Function ClimbCrate: Boolean; // A boolean returns true or false. begin SetAngle(1); setCompass('E'); //if FindObjCustom(X, Y, ['Climb-','-down','Crate'], [6184542, 5658198, 5263440], 6)then if findMSObjectSimple([6184542, 5658198, 5263440], ['Climb-','-down','Crate']) then begin writeLn('Climb Boxes'); fastClick(mouse_Right); WaitUpText('Climb-', randomrange(300, 400)); ChooseOptionMulti(['Climb-','-down','Crate']); Result := True; // If it finds & clicks the judge, result is true. end; end; Function AgilityIcon: Boolean; var mmPnt : TPoint; begin if DTM_findBestPointEx([Agility], AREA_MM, mmPnt) then begin Result := True; mouse(mmPnt, 5, 5, MOUSE_LEFT); end; end; Function WalkSetup: Boolean; begin {$IFDEF SMART} Walker.Init('custom', 'DraynorRoof', OS_SMART.ID); {$ELSE} Walker.Init('custom', 'DraynorRoof', w_getClientPID()); {$ENDIF} Walker.skipClose := 5; Walker.walkStyle := wsSPS; Walker.anyAngle := True; writeln('MyPos: '+toStr(Walker.getMyPos())); Walker.Free(); Result := True; end; Procedure FreeDTMz; begin FreeDTM(Agility); Walker.Free(); end; Procedure LoopFial; begin {$IFDEF SMART} Walker.Init('custom', 'DraynorRoof', OS_SMART.ID); {$ELSE} Walker.Init('custom', 'DraynorRoof', w_getClientPID()); {$ENDIF} Walker.skipClose := 5; Walker.walkStyle := wsSPS; Walker.anyAngle := True; END; Procedure Loop; begin {$IFDEF SMART} Walker.Init('custom', 'DraynorRoof', OS_SMART.ID); {$ELSE} Walker.Init('custom', 'DraynorRoof', w_getClientPID()); {$ENDIF} Walker.skipClose := 5; Walker.walkStyle := wsSPS; Walker.anyAngle := True; If AgilityIcon then begin ClimbWall; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Rope1 then begin CrossTightRope; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Rope1 then begin Loop; end; if Walker._GetPosCustom() := Rope2 then begin CrossTightRope; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Rope2 then begin Wait(RandomRange(1500,2500)); CrossTightRope; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Balance then begin BalanceNarrowWall; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Balance then begin Wait(RandomRange(1500,2500)); BalanceNarrowWall; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Jump then begin JumpUpWall; Wait(RandomRange(1000,1500)); setCompass('N'); end if not Walker._GetPosCustom() := Jump then begin Wait(RandomRange(1500,2500)); JumpUpWall; Wait(RandomRange(1000,1500)); setCompass('N'); end if Walker._GetPosCustom() := Gap then begin JumpGap; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Gap then begin Wait(RandomRange(1500,2500)); JumpGap; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Walker._GetPosCustom() := Crate then begin ClimbCrate; Wait(RandomRange(1000,1500)); setCompass('N'); end; if not Walker._GetPosCustom() := Crate then begin Wait(RandomRange(1500,2500)); ClimbCrate; Wait(RandomRange(1000,1500)); setCompass('N'); end; if Not AgilityIcon then begin AgilityIcon; Wait(RandomRange(1000,1500)); ClimbWall; Wait(RandomRange(1000,1500)); end; end; begin DISABLE_RANDOMS := False; declarePlayer(); initAL(); MouseSpeed:=30; DTMz; waitEx(1); //MapTest; repeat; loop; Until(False); FreeDTMz; end.
I don't have simba or really much time. Try compiling this and tell me if it works. No idea why you're using custom position functions and I don't even know what it returns but the regular one should work. I've changed all the assignes (:=) to equals (=) so that the script should compile, because you hadn't changed them in this version yet.
Simba Code:program DraynorAgility;
{$DEFINE SMART}
{$DEFINE WALKER}
{$i AeroLib/AeroLib.Simba}
//Made By Rules
Var
X, Y, Agility :Integer;
Walker : TRSWalker;
Const
//Locations
Rope1 := Point(214, 133);
Rope2 := Point(166, 149);
Balance := Point(173, 188);
Jump := Point(157, 207);
Gap := Point(157, 231);
Crate := Point(189, 228);
procedure declarePlayer();
begin
Me.Name := '';
Me.Pass := '';
Me.Pin := '';
Me.Nick := '';
Me.LampSkill := SKILL_FARMING;
Me.Member := True;
Me.Active := True;
end;
Procedure Login;
begin
loginPlayer(false)
end;
Procedure DTMz;
begin
Agility := DTMFromString('m6wAAAHic42ZgYGADYm4g5oNiEJsViBkZEIAZiNmhahmhNCcQ8yLp4UDTx8jISDQmBTCSgJEAAIodAMo=');
end;
Function ClimbWall: Boolean; // A boolean returns true or false.
begin
SetAngle(1);
setCompass('W');
//if FindObjCustom(X, Y, ['Climb', 'Rou', 'ough wa'], [858658, 2243147, 2045767], 6)then
if findMSObjectSimple([858658, 2243147, 2045767], ['Climb', 'Rou', 'ough wa']) then
begin
writeLn('Climbing Wall');
fastClick(mouse_Right);
WaitUpText('Cimb', randomrange(300, 400));
ChooseOptionMulti(['Cimb', 'Rou']);
Result := True; // If it finds & clicks the judge, result is true.
end;
end;
Function CrossTightRope: Boolean; // A boolean returns true or false.
begin
SetAngle(1);
setCompass('W');
//if FindObjCustom(X, Y, ['Cross', 'Tigh', 'rope'], [2504771, 3032659, 3493725], 6)then
if findMSObjectSimple([2504771, 3032659, 3493725], ['Cross', 'Tigh', 'rope']) then
begin
writeLn('Crossing Rope');
fastClick(mouse_Right);
WaitUpText('Cross', randomrange(300, 400));
ChooseOptionMulti(['Cross', 'Tighrope']);
Result := True; // If it finds & clicks the judge, result is true.
end;
end;
Function BalanceNarrowWall: Boolean; // A boolean returns true or false.
begin
SetAngle(1);
setCompass('W');
//if FindObjCustom(X, Y, ['Balance', 'Narrow', 'wall'], [14401, 605511, 13115], 6)then
if findMSObjectSimple([14401, 605511, 13115], ['Balance', 'Narrow', 'wall']) then
begin
writeLn('Balancing Wall');
fastClick(mouse_Right);
WaitUpText('Balance', randomrange(300, 400));
ChooseOptionMulti(['Balance', 'Narrow', 'wall']);
Result := True; // If it finds & clicks the judge, result is true.
end;
end;
Function JumpUpWall: Boolean; // A boolean returns true or false.
begin
SetAngle(1);
setCompass('W');
//if FindObjCustom(X, Y, ['Jump', '-up', 'wall'], [7982, 4013377, 12347], 6)then
if findMSObjectSimple([7982, 4013377, 12347], ['Jump', '-up', 'wall']) then
begin
writeLn('Jumping Wall');
fastClick(mouse_Right);
WaitUpText('Jump', randomrange(300, 400));
ChooseOptionMulti(['Jump', '-up', 'wall']);
Result := True; // If it finds & clicks the judge, result is true.
end;
end;
Function JumpGap: Boolean; // A boolean returns true or false.
begin
SetAngle(1);
setCompass('E');
//if FindObjCustom(X, Y, ['Gap'], [3752543, 1845581, 1320014], 6)then
if findMSObjectSimple([3752543, 1845581, 1320014], ['Gap']) then
begin
writeLn('Jumping Gap');
fastClick(mouse_Right);
WaitUpText('Gap', randomrange(300, 400));
ChooseOptionMulti(['Gap']);
Result := True; // If it finds & clicks the judge, result is true.
end;
end;
Function ClimbCrate: Boolean; // A boolean returns true or false.
begin
SetAngle(1);
setCompass('E');
//if FindObjCustom(X, Y, ['Climb-','-down','Crate'], [6184542, 5658198, 5263440], 6)then
if findMSObjectSimple([6184542, 5658198, 5263440], ['Climb-','-down','Crate']) then
begin
writeLn('Climb Boxes');
fastClick(mouse_Right);
WaitUpText('Climb-', randomrange(300, 400));
ChooseOptionMulti(['Climb-','-down','Crate']);
Result := True; // If it finds & clicks the judge, result is true.
end;
end;
Function AgilityIcon: Boolean;
var
mmPnt : TPoint;
begin
if DTM_findBestPointEx([Agility], AREA_MM, mmPnt) then
begin
Result := True;
mouse(mmPnt, 5, 5, MOUSE_LEFT);
end;
end;
Function WalkSetup: Boolean;
begin
{$IFDEF SMART}
Walker.Init('custom', 'DraynorRoof', OS_SMART.ID);
{$ELSE}
Walker.Init('custom', 'DraynorRoof', w_getClientPID());
{$ENDIF}
Walker.skipClose := 5;
Walker.walkStyle := wsSPS;
Walker.anyAngle := True;
writeln('MyPos: '+toStr(Walker.getMyPos()));
Walker.Free();
Result := True;
end;
Procedure FreeDTMz;
begin
FreeDTM(Agility);
Walker.Free();
end;
Procedure LoopFial;
begin
{$IFDEF SMART}
Walker.Init('custom', 'DraynorRoof', OS_SMART.ID);
{$ELSE}
Walker.Init('custom', 'DraynorRoof', w_getClientPID());
{$ENDIF}
Walker.skipClose := 5;
Walker.walkStyle := wsSPS;
Walker.anyAngle := True;
END;
Procedure Loop;
begin
{$IFDEF SMART}
Walker.Init('custom', 'DraynorRoof', OS_SMART.ID);
{$ELSE}
Walker.Init('custom', 'DraynorRoof', w_getClientPID());
{$ENDIF}
Walker.skipClose := 5;
Walker.walkStyle := wsSPS;
Walker.anyAngle := True;
If AgilityIcon then
begin
ClimbWall;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if Walker.getMyPos() = Rope1 then
begin
CrossTightRope;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if not Walker.getMyPos() = Rope1 then
begin
Loop;
end;
if Walker.getMyPos() = Rope2 then
begin
CrossTightRope;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if not Walker.getMyPos() = Rope2 then
begin
Wait(RandomRange(1500,2500));
CrossTightRope;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if Walker.getMyPos() = Balance then
begin
BalanceNarrowWall;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if not Walker.getMyPos() = Balance then
begin
Wait(RandomRange(1500,2500));
BalanceNarrowWall;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if Walker.getMyPos() = Jump then
begin
JumpUpWall;
Wait(RandomRange(1000,1500));
setCompass('N');
end
if not Walker.getMyPos() = Jump then
begin
Wait(RandomRange(1500,2500));
JumpUpWall;
Wait(RandomRange(1000,1500));
setCompass('N');
end
if Walker.getMyPos() = Gap then
begin
JumpGap;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if not Walker.getMyPos() = Gap then
begin
Wait(RandomRange(1500,2500));
JumpGap;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if Walker.getMyPos() = Crate then
begin
ClimbCrate;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if not Walker.getMyPos() = Crate then
begin
Wait(RandomRange(1500,2500));
ClimbCrate;
Wait(RandomRange(1000,1500));
setCompass('N');
end;
if Not AgilityIcon then
begin
AgilityIcon;
Wait(RandomRange(1000,1500));
ClimbWall;
Wait(RandomRange(1000,1500));
end;
end;
begin
DISABLE_RANDOMS := False;
declarePlayer();
initAL();
MouseSpeed:=30;
DTMz;
waitEx(1);
//MapTest;
repeat;
loop;
Until(False);
FreeDTMz;
end.
I'm not sure why you init and free the walker about 4 times throughout, I've never used it so I don't really know, I assume Slacky wouldn't write it to need that though because he would die from the inefficiency.
You should listen to the adiveces given...
>> if Walker._GetPosCustom() := Gap then
is simply not doing what you want, and should raise a BIG FAT ERROR, as that is invalid syntax.
You are trying to ASSIGN (`:=`) to the result of a function, while you want to COMPARE against that result (`=`)
Here is a small list of notes:
- Use `Walker.Init('custom', 'DraynorRoof', -1);` (I told you this already)
- Don't use `Walker._GetPosCustom()`, use `Walker.GetMyPos()`.
- Creating a new walker every time "loop" is dumb.
- You can't compare any structure types in Lape. That means statements like "if ThisPoint = ThatPoint then" is not supported.
- That will raise "Operator "cmp_Equal" not compatible with "record [0]Int32; [4]Int32; end""- For comparison of TPoints you are best of first assigning it, then compare each field, for example:
or... you can cast the TPoint To `UInt64` and do the comparison:Code:var a,b:TPoint; begin a := Point(10,10); b := Point(31,2); WriteLn( (a.x = b.x) and (a.y = b.y) ); end;
Code:var a,b:TPoint; begin a := Point(10,10); b := Point(31,2); WriteLn( UInt64(a) = UInt64(b) ); end;
However, you really wont get away with checking if your position is equal to a single point... such accuracy is impossible, that will NOT work..
You should grab the current position and check if it's in a box.
Last edited by slacky; 03-12-2015 at 10:55 PM.
!No priv. messages please
Thanks for helping out mate.
I guess in Lape you can't compare a TPoint with another to determine if they match, or at least I assume this is due to Lape. So we'll go another way with this script. Also, while RSWalker is a much more accurate than SPS it's still not pinpoint precises to a single tile, which means if you're wanting to determine you're standing on a specific tile you'll actually want to check if you're within a certain distance of that tile, as your position could vary +/-5 coordinates (depending on many variables).
And you're absolutely, there's no reason at all to load and free the RSWalker so many times. A loaded RSWalker should be treated like a DTM or Bitmap: loaded once, freed once. Give me just a second to edit this script and I'll simply patch the mistakes.
Edit:
Never mind, this will take a few minutes and I'm about to leave. I'll patch up the script when I return.
Last edited by Flight; 03-12-2015 at 11:00 PM.
Current projects:
[ AeroGuardians (GotR minigame), Motherlode Miner, Blast furnace ]
"I won't fall in your gravity. Open your eyes,
you're the Earth and I'm the sky..."
I hate lape why did everyone converting to lape. -_-
Pshhhhhh, Lape is noob, it cant do hella functions Pascal could.
So in order for this to work my way i have to make more functions and then call them in loop?
Code:You can't compare any structure types in Lape. That means statements like "if ThisPoint = ThatPoint then" is not supported. - That will raise "Operator "cmp_Equal" not compatible with "record [0]Int32; [4]Int32; end"" For comparison of TPoints you are best of first assigning it, then compare each field, for example: Code: var a,b:TPoint; begin a := Point(10,10); b := Point(31,2); WriteLn( (a.x = b.x) and (a.y = b.y) ); end; or... you can cast the TPoint To `UInt64` and do the comparison: Code: var a,b:TPoint; begin a := Point(10,10); b := Point(31,2); WriteLn( UInt64(a) = UInt64(b) ); end;
Last edited by BigRedJapan; 03-12-2015 at 11:53 PM.
There are currently 1 users browsing this thread. (0 members and 1 guests)