SRL Archive - Other Scripts

MSN Super Nudger/ Blocker & Unblocker


Infantry001

2006-08-14 18:53:09

Well, some of you just like to be annoying. Heres a script for you. O, and to get a hacked msn with unlimited nudging, google "A-Patch"

*Ok its a lot longer then it needs to be, but who cares :D
//***********************************************************************\\
//***********************************MSN*********************************\\
//*******************************Super Nudger****************************\\
//***********************************and*********************************\\
//*****************************Blocker & Unblocker***********************\\
//***********************************************************************\\

////////////////////{[]-----Made by: Infantry001-----[]}\\\\\\\\\\\\\\\\\\\
{*Just drag the crosshair and run!*}

program nudgerandblocker;

var
x, y, i : integer;
BBlock, BNudge : integer;
Times, WaitTime : integer;
Nudge : boolean;
frmDesign : TForm;
NBLabel : TLabel;
Label1 : TLabel;
Label2 : TLabel;
StartButton : TButton;
NudgeButton : TRadioButton;
BlockButton : TRadioButton;
TimesEdit : TEdit;
WaitEdit : TEdit;

Procedure LoadBMaps;
begin
BNudge := BitmapFromString(16, 14, 'z78DA6D9469B2EC200' +
'885B78471223F6570FF4B7AC790B1EFEBAEA22C821F7240679BFB' +
'14671753CF6ADD9C94324D322EB04E85AFB5516627E18DCDB4B5E' +
'E9BA9DA3C08557B1D4DD9E00B4F58DF5D54179DEBA2559AE0557E' +
'59789CC32217329CB9C8D56A7310B21623DBBC4496B18BD8B9F68' +
'A209FB4684A03E70CFBCDF2F03F3191A56A2D471614413A509A76' +
'1B2EACAB165A7B23BE7222E286553A3C4F2D470C9F79EFFFE9C11' +
'728A638B2BBFA9C5B132EC3C4A196ACB8B668A8BAD0FADD7C2A5F' +
'FEE579F8A7E7A862F585BC7B920C365BE6B467D137FF7F7B1FFDC' +
'313D9E3246F3EAAA08D7D37690A8D9AA75A9AED1627BC357FF3F9' +
'DBD95023F80DAC7CE973F1A192B3618850C59884763BCF771F0DD' +
'47CDA3F33734E8EB1703EED41E60FBF586F62EED5D15CF0FDE1FC' +
'B55FF2658D0F26DFE4B73E9B39EF982237ABA9C9AE37077629B21' +
'D91F94B3E3CF1F51BF3F0D15FF89D4C078D2C09220D5CDA3D6E65' +
'D062AF3263128C76EC52EAB0E10F4FD833CBEBE4506CC54C6F5E5' +
'A651A2249A6D5A5E4465796F50EBCCF79737ED478AAD8E824BB65' +
'A183D95AED3C640C4C69C3AB93B4E30ECE26AB47F957E15F9DDF6' +
'AE3094037CD7699D0BC41F3DED32818D2A433D69E314BD986212F' +
'5E2DC4C74D8979F8B18B797CB5A6A915543F9483103434B463F60' +
'F4FD87FF1FB3318');
BBlock := BitmapFromString(10, 12, 'z78DA8D924B6E00210' +
'C43AF1406F25B920FF73F52CD4CD75537964079B113304A53520A' +
'6363715D9AA324BDEBCC237FAB5A929868109B73B8CF8EF31CFE8' +
'F5E47212E6F866376D2FF59B66D0BF43626CD60E5A4ACD4CE8A92' +
'66777F3AA5840F8B30D272B39CA1A12BA8C1A535B27F1A1518A21' +
'7EAA585759D9485E35EAB96C4645E55EF4DDAA14B7D5A48D1989F' +
'71C6EEA868D9A2ADC67A7246E588B89AF0DB815A73DB0405EBE09' +
'A1844825C5476D96C7D246A17D7A86AEFFED4C11AE826A3D711FE' +
'B71E9738C5D0297930E1D23AB239CA338B2ADABA1CBD1585458A2' +
'E0C9F0D7622C106ED6387656D3D365A96CC532D2EB32CA3E8A5E0' +
'99F6A6BDAC5DD6D043D12150815D235F3DAAEA6F074187218FBDF' +
'FEAD3DBE54EBAE8FADED9C1DE2E0B7BE9EC7A4A90B2545B664FF9' +
'9D97EEBC1B7333DCAF6F04DEA27782922CECE9E0FBDC57FFF4069' +
'41F1B02A63A');
end;

Procedure DeclareVar;
begin
Times := StrToInt(TimesEdit.Text);
WaitTime := StrToInt(WaitEdit.Text);
if(NudgeButton.Checked = true)then
Nudge := true;
if(BlockButton.Checked = true)then
Nudge := false;
end;

Procedure ButtonClick(sender: TObject);
begin
frmDesign.Caption:= frmDesign.Caption + '.';
frmDesign.ModalResult:= mrOk;
end;

Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 114;
frmDesign.Width := 304;
frmDesign.Height := 134;
frmDesign.Caption := 'MSN Super Nudger and Blocker';
frmDesign.Color := clBtnFace;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'MS Sans Serif';
frmDesign.Font.Style := [];
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;
NBLabel := TLabel.Create(frmDesign);
NBLabel.Parent := frmDesign;
NBLabel.Left := 20;
NBLabel.Top := 10;
NBLabel.Width := 80;
NBLabel.Height := 13;
NBLabel.Caption := 'Nudge or Block?';
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 115;
Label1.Top := 10;
Label1.Width := 83;
Label1.Height := 13;
Label1.Caption := 'How many times?';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 100;
Label2.Top := 41;
Label2.Width := 100;
Label2.Height := 13;
Label2.Caption := 'How often (milisecs)?';
StartButton := TButton.Create(frmDesign);
StartButton.Parent := frmDesign;
StartButton.OnClick := @ButtonClick;
StartButton.Left := 24;
StartButton.Top := 64;
StartButton.Width := 251;
StartButton.Height := 25;
StartButton.Caption := 'Start annoying the heck out of ur friends!';
StartButton.TabOrder := 8;
NudgeButton := TRadioButton.Create(frmDesign);
NudgeButton.Parent := frmDesign;
NudgeButton.Left := 15;
NudgeButton.Top := 25;
NudgeButton.Width := 113;
NudgeButton.Height := 17;
NudgeButton.Caption := 'Nudge';
NudgeButton.TabOrder := 9;
BlockButton := TRadioButton.Create(frmDesign);
BlockButton.Parent := frmDesign;
BlockButton.Left := 15;
BlockButton.Top := 43;
BlockButton.Width := 113;
BlockButton.Height := 17;
BlockButton.Caption := 'Block';
BlockButton.TabOrder := 10;
TimesEdit := TEdit.Create(frmDesign);
TimesEdit.Parent := frmDesign;
TimesEdit.Left := 215;
TimesEdit.Top := 6;
TimesEdit.Width := 65;
TimesEdit.Height := 21;
TimesEdit.TabOrder := 11;
WaitEdit := TEdit.Create(frmDesign);
WaitEdit.Parent := frmDesign;
WaitEdit.Left := 215;
WaitEdit.Top := 35;
WaitEdit.Width := 65;
WaitEdit.Height := 21;
WaitEdit.TabOrder := 12;
end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('InitForm', v);
end;

procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('ShowFormModal', v);
end;

Procedure ProgRep;
begin
if(Nudge=true)then
begin
Writeln('[]------------------------------------------------[]');
Writeln('You nudged your friend ' +IntToStr(Times) +' times in ' +IntToStr(Times * WaitTime / 1000) +' seconds.');
Writeln('[]------------------------------------------------[]');
end;
if(Nudge=false)then
begin
Writeln('[]------------------------------------------------[]');
Writeln('You blocked and unblocked your friend ' +IntToStr(Times) +' times in ' +IntToStr(Times * WaitTime / 1000) +' seconds.');
Writeln('[]------------------------------------------------[]');
end;
end;

Procedure MouseClick;
begin
MoveMouse(x,y);
repeat
Wait(WaitTime);
ClickMouse(x,y,true);
i := i + 1;
until(i=Times)
end;

begin
SafeInitForm;
SafeShowFormModal;
LoadBMaps;
DeclareVar;
ActivateClient;
if(Nudge=true)then
begin
if(FindBitmapSpiralTolerance(BNudge,x,y,0,0,1000,1000,20))then
MouseClick;
end else
if(Nudge=false)then
begin
if(FindBitmapSpiralTolerance(BBlock,x,y,0,0,1000,1000,20))then
MouseClick;
end;
ProgRep;
end.

Janilabo

2006-08-17 07:00:51

Doesn't work for me :(

But anyways, good job man! Looking good.

Infantry001

2006-08-17 16:30:03

wahts the error it gives?

Keen

2006-08-17 18:32:40

Your bitmaps are a bit too big man, you should make them a bit smaller.. they usually don't need to be that large.

Why did you put this in your form button sender?

frmDesign.Caption:= frmDesign.Caption + '.';

That only adds a full stop to the form title.. its got nothing to do with the form running correctly. :rolleyes:
Everyone seems to do that just because it's in the scar manual example.

Infantry001

2006-08-17 20:30:36

lol yep tyhats why thats there. and yea, i think ill condense the bitmap size…

armanie14

2006-08-17 21:32:37

Well, it doesnt have any errors, but the progress report comes up as

[]------------------------------------------------[]
You blocked and unblocked your friend 12 times in 0 seconds.
[]------------------------------------------------[]
Successfully executed

But it doesn't actually do what it says. You press run the report comes up then its over. weird. duno whats happening.. maybe osmething left out of the main loop i dont know.

Infantry001

2006-08-17 23:05:17

well, it looks like it should work. and i tried it a couple times… huh weird. ill try to work it out. and my formula for the seconds… yea it doesnt work