Use some SRL Standards, easier to read. Smart is useless for an AutoTalker. You need to be able to control the functions while it works if I'm not mistaken.
Here are some Critiques:
Original:
{
++++++++++++++++++++++++++++++++++++++++++++++++++ +
+ 6 Stair Auto Talker +
+ By:sk8terbitu +
+ +
+ This script uses S.M.A.R.T! +
+ Please post proggies and Errors +
++++++++++++++++++++++++++++++++++++++++++++++++++ +
}
// setup
// setup what you want to say
// give me some pointers on how to improve
//Credits NaumanAkhlAQ and baked baked0420!
program StairTalker;
{.include SRL/SRL/misc/Smart.scar}
{.include SRL/SRL.scar}
const
talk1='type what you want to say here';
procedure declareplayers;
begin
HowManyPlayers := 1; //don't change unless you know what you're doing
CurrentPlayer := 0;
NumberOfPlayers(HowManyPlayers);
Players[0].Name := ''; //Runescape acc. name
Players[0].Pass := ''; //Runescape acc. pass
Players[0].Nick := ''; //Nickname - 3 or 4 letters from the middle of your R.S. name
Players[0].Active := True; // Set to false if you don't want to use this player
end;
procedure AntiRandom;
begin
FindNormalRandoms;
end;
procedure Talk;
begin
wait(1000)
SendKeys(talk1);
end;
Procedure Talkz1;
begin
repeat
Talk;
until(false)
end;
begin
SmartSetupEx(141, False, True); //substitute 141 with the world you want
While Not SmartReady Do Wait(100);
SetTargetDC(SmartGetDC);
SetupSRL;
ActivateClient;
DeclarePlayers;
Talkz1;
end.
Edited:
{
++++++++++++++++++++++++++++++++++++++++++++++++++ +
+ 6 Stair Auto Talker +
+ By:sk8terbitu +
+ +
+ This script uses S.M.A.R.T! +
+ Please post proggies and Errors +
++++++++++++++++++++++++++++++++++++++++++++++++++ +
}
// setup
// setup what you want to say
// give me some pointers on how to improve
//Credits NaumanAkhlAQ and baked baked0420!
program StairTalker;
{.include SRL/SRL/misc/Smart.scar}
{.include SRL/SRL.scar}
const
talk1='type what you want to say here';
{Smart Constants} // I don't think SMART is useful for an auto talker :)
SmartWorld = 43;
Signed = true;
procedure declareplayers;
begin
HowManyPlayers := 1; //don't change unless you know what you're doing
CurrentPlayer := 0;
NumberOfPlayers(HowManyPlayers);
Players[0].Name := ''; //Runescape acc. name
Players[0].Pass := ''; //Runescape acc. pass
Players[0].Nick := ''; //Nickname - 3 or 4 letters from the middle of your R.S. name
Players[0].Active := True; // Set to false if you don't want to use this player
end;
procedure AntiRandom; {I don't think you need this in an auto talker}
begin
FindNormalRandoms;
if FindFight then
begin
Runto('N');
Wait(20000+random(5000));
RunTo('S');
end;
end;
procedure Talk;
begin
wait(1000+random(500)); // Make sure you ALWAYS include random in waits. Also you missed the ;
SendKeys(talk1);
end;
Procedure Talkz1; {Why do you have two procedures? It could be done as one.}
begin
repeat
Talk;
until not LoggedIn; // NEVER use an infinite loop.
end;
begin
SmartSetupEx(SmartWorld, False, Signed); // Use Constants so you don't have people searching through code to find this.
While Not SmartReady Do Wait(100);
SetTargetDC(SmartGetDC);
SetupSRL;
ActivateClient;
DeclarePlayers;
Talkz1;
end.
I outlined the errors I fixed and I also added standards. Learn from these, don't just use them.
Good first try though! :)
Nava2