Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program new;
- {$I SRL/OSR.simba}
- type
- TMouseAB = record
- Antiban: TAntiban;
- IsSetup: Boolean;
- PPI, MouseArea, MouseOff: Double;
- MaxSpeed, MinSpeed: Int32;
- end;
- var
- MouseAB: TMouseAB;
- procedure TMouseAB.Init();
- var
- unique: Double;
- begin
- Self.Antiban.SetupBiometrics();
- unique := Self.Antiban.BioHash;
- Self.PPI := (60 + 200*unique);
- Self.MouseArea := (03 + 5*cos(unique)) * Self.PPI;
- Self.MouseOff := Random(0.0, Self.MouseArea);
- Self.MaxSpeed := Trunc(21 * (0.75 + 0.5 * Self.Antiban.Patience));
- Self.MinSpeed := Trunc(08 * (0.50 + 0.5 * Self.Antiban.Endurance));
- Self.IsSetup := True;
- end;
- procedure TMouse.Move(P: TPoint); override;
- var
- dist: Double;
- q: TPoint;
- maxSpeed := Trunc(srl.SkewedRand(MouseAB.MaxSpeed, 8, MouseAB.MaxSpeed));
- minSpeed := Trunc(srl.SkewedRand(MouseAB.MinSpeed, MouseAB.MinSpeed, 15));
- begin
- q := Self.GetPosition;
- dist := Hypot(q.x-p.x, q.y-p.y);
- self.Speed := Trunc(minSpeed + (maxSpeed-minSpeed) * Power(dist / 1024, 1/2));
- inherited;
- end;
- procedure TMouse.Move(P: TPoint); override;
- var
- Here,P2: TPoint;
- t,v: Double;
- begin
- if (Random() < 0.15) or (MouseAB.MouseOff > MouseAB.MouseArea) then
- MouseAB.MouseOff := Random() * MouseAB.PPI;
- Here := Mouse.GetPosition();
- if (Random() < 0.8) and (Here.DistanceTo(P) > MouseAB.MouseArea - MouseAB.MouseOff) then
- begin
- v := Here.DistanceTo(P);
- t := (MouseAB.MouseArea - MouseAB.MouseOff) / Here.DistanceTo(P);
- t := srl.SkewedRand(Random(Min(0.8,t),0.90), Min(0.4,t), 1.15);
- P2.x := Trunc((1-t)*Here.x + t*P.x);
- P2.y := Trunc((1-t)*Here.y + t*P.y);
- inherited(P2.Random(-Trunc(Power(v,0.66)), Trunc(Power(v,0.66)), True));
- Wait(Trunc(srl.SkewedRand(35, 0, 700)));
- MouseAB.MouseOff := Random() * MouseAB.PPI * 2;
- end;
- v := Mouse.GetPosition().DistanceTo(P);
- inherited(P);
- MouseAB.MouseOff += Random(v, v*1.5);
- end;
- var
- p: TPoint;
- begin
- Players.New()^.LoginName := 'bitch';
- Mouse.Hold(mouse_left);
- MouseAB.Init();
- p := Mouse.GetPosition();
- for 0 to 6 do
- begin
- Mouse.Move(Point(80,280));
- Wait(300);
- Mouse.Move(p);
- Wait(1000);
- end;
- Mouse.Release(mouse_left);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement