SRL Archive - Help and Support

How would YOU do this...


kingarabian

2009-03-24 02:05:43

Okay Im going from msn help to srl help.
How would you open that door, using reflection… OR maybe color…

Help I got from:
Method
N1ke
iron_man_ftw
Thanks guys.
List of functions I used:

 function OpenDoor: boolean;
var
tP, tD: Tpoint;

begin
MakeCompass('n');
tP := TileToMsEx(Tile(2822.5, 3555.2), 2);
wait(100+random(100));
tP := Point((tP.x+tD.x)/1, (tp.y+tD.y)/1);

MMouse(tP.x, tP.y, 4, 12);
wait(100+random(100));
GetMousePos(tP.x, tP.y);
Mouse(tP.x, tP.y-30, 3, 3, true)
FFlag(0);
result := true;
exit;
end;

procedure openDoors;
begin
clickDoor(3688, 'e', 'open');


end;

function openDoorss: boolean;
var
xx : TPoint;
begin
if FindObject(xX,3745) then
begin
Result:= True;
XX:= TileToMS(XX, 0);
Mouse(xX.x,xX.y,2,2,true);
Wait(30 + Random(10));
end;
end;

And I tried making my own. But I failed. It either clicks inside the door or outside the door.

So if anyone can help…

Btw the door object ID is 3745.

Edit:Cycrosism helped me out.

But anyone know how to make it so the script clicks only the door to the east the one I marked red on?

mormonman

2009-03-24 02:25:02

You could set the compass a certain angle(west?) then use a height of 25 or so. Then just use a TileToMs with the tile that is on the inside of the house.

Sir R. M8gic1an

2009-03-24 03:55:48


SetAngle(False);
MakeCompass('w');
//find the door
//make sure it's the door where Door.y < MySpot.y

i have no experience with reflection so i can't actually give you the right commands.

edit: scar tags fail at spacing

~RM

kingarabian

2009-03-24 04:29:53

From: Rasta Magician

SetAngle(False);
MakeCompass('w');
//find the door
//make sure it's the door where Door.y < MySpot.y

i have no experience with reflection so i can't actually give you the right commands.

edit: scar tags fail at spacing

~RM


Hmm I tried that Rasta. It keeps trying to click the door to the north.

lordsaturn

2009-03-24 08:23:02


DoorTile := Point(1111, 1111);
MS := TileToMSEx(Tile(DoorTile.x - 0.5, DoorTile.y - 0.1), 40);
Should work. If not, just play around with the decimal values until you get it just right.

kingarabian

2009-03-24 08:31:01

From: lordsaturn

DoorTile := Point(1111, 1111);
MS := TileToMSEx(Tile(DoorTile.x - 0.5, DoorTile.y - 0.1), 40);
Should work. If not, just play around with the decimal values until you get it just right.


Thanks will try it out.

OKAY THANKS EVERYONE. Got it to work.