Create an on screen Progress Report
Hi guys, this is my first tutorial. I hope it helps you guys improve your scripts!
Intro
This tutorial will cover the basics behind implementing an onscreen Progress Report for your script. Similar to the tutorial that teaches your Paint on SMART, this tutorial will teach you how to place text, and images on your script. I find this method to be simpler, and that’s why I wish to share it with all you.
Getting text on our screen
First we must include paintsmart.simba in our script header, this can be done by adding the following code to our script…
Simba Code:
{$i SRL/SRL/misc/paintsmart.simba}
Once we add that, we can start writing our procedure, we’ll call it SmartProggy.
Simba Code:
procedure SmartProggy;
begin
end;
Next, we want to declare some variables for our text. Since it’s text, we’ll want to store that in a String object.
Now that we have our variables set up for 2 lines of text, we’ll get to filling in those variables.
Simba Code:
begin
info:= ‘This is the first line of our text';
info2:= 'This is our second line of text kk';
…….
Now that our strings are filled, we will want to display them on the screen. For this we will use the SMART_DrawText procedure. The procedure looks like this….
Simba Code:
procedure SMART_DrawText(x, y: Integer; font, Text: string; Color: TColor);
x, and y of type integer will be our coordinates within the client.
font is obviously the font that will be used. A list of available fonts can be found at the bottom of this tutorial.
text of type string will be where we insert our string variables from earlier.
color of type TColor is the color that the text will take on. A list of some colors can be found at the bottom of the tutorial.
Now our procedure will use this code to print our text on the screen.
Simba Code:
……
SMART_DrawText(0,0,LoginChars,info,clTeal);
SMART_DrawText(0,20,LoginChars,info2,clTeal);
This code will display our info text at 0,0 and info2 at 0,20 of the client. I use 20 pixel spacing for the font, so there is a good distance between the lines. LoginChars is the font type I chose, and clTeal is the color I chose.
So if you followed right, your code should like this for the procdure
Simba Code:
procedure SmartProggy;
var
info,info2: String;
begin
info:= 'This is the first line of our text';
info2:= 'This is our second line of text kk';
SMART_DrawText(0,0,LoginChars,info,clTeal);
SMART_DrawText(0,20,LoginChars,info2,clTeal);
end;
And here is the full code if you wish to test…
Simba Code:
program tester;
{$i srl/srl/misc/smart.simba}
{$i srl/srl.simba}
{$i SRL/SRL/misc/paintsmart.simba}
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Pin := '';
Players[0].Active := True;
end;
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 114;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
DeclarePlayers;
LoginPlayer;
end;
procedure SmartProggy;
var
info,info2: String;
begin
info:= 'This is the first line of our text';
info2:= 'This is our second line of text kk';
SMART_DrawText(0,0,LoginChars,info,clTeal);
SMART_DrawText(0,20,LoginChars,info2,clTeal);
end;
begin
SetupSRL;
ActivateClient;
SmartProggy;
repeat
until(false)
end.
Results
Getting images on our screen
Similar to what we did for the text, our procedure will be slightly modified though. First we want to create an integer object in our variables, well call it ourPhoto….
[/COLOR]
Now we will fill that integer with a BMP.
Simba Code:
ourPhoto := BitmapFromString(20, 18, 'meJz7/x8dvH37eu2a9ZW1bUk5Ne' +
'mFTbUtvWvWb3j37h2GQig4fuJsaV3flp0HlixfY+Seq+HVohUyWTd' +
'yvo5Pm4x5qpi6t7aJ05q16/79+4em8f379xYJbbbJXaJqTiqOpSbx' +
'S01iF5jEzDOOmC5vk2KV2GOX0a9kky6pG9TeNQlN+4cPHyJ6tjmmd' +
'au7FBpFzjGOnmscDSTnGEXNMgidpu9b4Vu9QC+wXM25SNmlbtny1X' +
'CNv379ApIN3dNU3RrMklabwDQCkWnsQvO4pQbRc7RdyzXsM9Vdi0w' +
'SVipapz99+gSit7lrcnFli71fpkHYdC3vRiOYRqCbDYJ6dHxbjaPn' +
'A72g4VJhGD4d6CS90BkV9b1Qvb0z5SzT1ZwLxFUdGBgYND2qTOIWm' +
'YD1CogqMzEw6gV2m8QvMgzsAFqtYBKmYB5r6Fn++fNnoN5Xr1/KqZ' +
'nqeDaq2eSIyFto+3dbpqywTloGdICcUYSEqqNhxHRt90p12zT94In' +
'avk2KlvGavl0nT5+BWL1v7x5l5wrT+CXGUf2B7XvUbcN1nKLCeg5Y' +
'p881jZhhFDPPMHiCaex805i5yiZResF9WsHTZi1YAtH75MkTJYcCg' +
'8jZBn6FSTOOqVr6Kpu5piy66F+zUMO53DR2sVEM2MtOuVpetabxiz' +
'WDps5fthai9927tzpOmSZxy7R825QtIvKatlW1bzdyS1BzTDMKmWI' +
'KjGhw6BlGTDOOnW8cM1fdf+LWXfshev/+/RuZUqYfMd8kbom8TUZe' +
'8/aW/iNyxlE6fj1msYtNYubAYm0uOPzn6wb1r9+0FR7LGzduVfFoN' +
'k1YrBvQpmKTrO2Qpe5WahQ7Gx7XcAR0vLp369kzZ758+QLR++XzZ0' +
'OnRIPYRaax8/SC+vUCOk2jZxnDXIuiN2auUcQ065Ama98CuNUHDhy' +
'Utys0BiVmYMjMM0ZKYCgoZq5h7EK1gCkltb3ICXvDpi2y9gUG0QtM' +
'4oDenAdOn3OBFgHVgwyMW2gUt1AzeIqRX/WiJat///6NlqcOHjzsF' +
'JCl4lyp5T9BJ2SGVvBU/fCZOsFTNHy7Nd2rbAKKJkxf9PbtG1x5+e' +
'vXLwcPHpw2fVZpRXN5TVduUU1H14SVK9eAwgecFOEAAHYnQt8=');
Next we will paint this bmp on our client use the procedure SMART_DrawBitmap…
Simba Code:
procedure SMART_DrawBitmap(Clear: Boolean; Bitmap: Integer; Placement: TPoint);
Clear of type Boolean will clear the canvas before the image is drawn if set to true
Bitmap of type Integer will be the picture we wish to display
Placement of type TPoint will be the coordinates of the client we wish to print to(upper left hand)
Simba Code:
SMART_DrawBitmap(true, proggy,Point(5,5));
This will clear the canvas, and display our photo at pixel 5,5 of our client.
Before we end the procedure we want to add
So our procedure should now look like
Simba Code:
procedure SmartProggy;
var
ourPhoto : Integer;
begin
ourPhoto := BitmapFromString(20, 18, 'meJz7/x8dvH37eu2a9ZW1bUk5Ne' +
'mFTbUtvWvWb3j37h2GQig4fuJsaV3flp0HlixfY+Seq+HVohUyWTd' +
'yvo5Pm4x5qpi6t7aJ05q16/79+4em8f379xYJbbbJXaJqTiqOpSbx' +
'S01iF5jEzDOOmC5vk2KV2GOX0a9kky6pG9TeNQlN+4cPHyJ6tjmmd' +
'au7FBpFzjGOnmscDSTnGEXNMgidpu9b4Vu9QC+wXM25SNmlbtny1X' +
'CNv379ApIN3dNU3RrMklabwDQCkWnsQvO4pQbRc7RdyzXsM9Vdi0w' +
'SVipapz99+gSit7lrcnFli71fpkHYdC3vRiOYRqCbDYJ6dHxbjaPn' +
'A72g4VJhGD4d6CS90BkV9b1Qvb0z5SzT1ZwLxFUdGBgYND2qTOIWm' +
'YD1CogqMzEw6gV2m8QvMgzsAFqtYBKmYB5r6Fn++fNnoN5Xr1/KqZ' +
'nqeDaq2eSIyFto+3dbpqywTloGdICcUYSEqqNhxHRt90p12zT94In' +
'avk2KlvGavl0nT5+BWL1v7x5l5wrT+CXGUf2B7XvUbcN1nKLCeg5Y' +
'p881jZhhFDPPMHiCaex805i5yiZResF9WsHTZi1YAtH75MkTJYcCg' +
'8jZBn6FSTOOqVr6Kpu5piy66F+zUMO53DR2sVEM2MtOuVpetabxiz' +
'WDps5fthai9927tzpOmSZxy7R825QtIvKatlW1bzdyS1BzTDMKmWI' +
'KjGhw6BlGTDOOnW8cM1fdf+LWXfshev/+/RuZUqYfMd8kbom8TUZe' +
'8/aW/iNyxlE6fj1msYtNYubAYm0uOPzn6wb1r9+0FR7LGzduVfFoN' +
'k1YrBvQpmKTrO2Qpe5WahQ7Gx7XcAR0vLp369kzZ758+QLR++XzZ0' +
'OnRIPYRaax8/SC+vUCOk2jZxnDXIuiN2auUcQ065Ama98CuNUHDhy' +
'Utys0BiVmYMjMM0ZKYCgoZq5h7EK1gCkltb3ICXvDpi2y9gUG0QtM' +
'4oDenAdOn3OBFgHVgwyMW2gUt1AzeIqRX/WiJat///6NlqcOHjzsF' +
'JCl4lyp5T9BJ2SGVvBU/fCZOsFTNHy7Nd2rbAKKJkxf9PbtG1x5+e' +
'vXLwcPHpw2fVZpRXN5TVduUU1H14SVK9eAwgecFOEAAHYnQt8=');
SMART_DrawBitmap(true, ourPhoto,Point(5,5));
FreeBitmap(ourPhoto);
end;
And the result on screen should be….
Creating text and photo for a progress report
By combining the techniques from before, we can create a progress report that is visually pleasing, with minimum code(with the exception of the bitmap ofcourse).
Simba Code:
program tester;
{$i srl/srl/misc/smart.simba}
{$i srl/srl.simba}
{$i SRL/SRL/misc/paintsmart.simba}
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Pin := '';
Players[0].Active := True;
end;
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 114;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
DeclarePlayers;
LoginPlayer;
end;
procedure SmartProggy;
var
info,info2: String;
ourPhoto : Integer;
begin
info:= 'This is the first line of our text';
info2:= 'This is our second line of text kk';
ourPhoto := BitmapFromString(508, 130, 'meJztnQtwVeW1x/FWZVrtoIXS' +
'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' +
'W9Bpfgg0g9fzYJC2nTp9G7dxfjMW3fCsZtRZGFp5oXtOpKU5U85Uw' +
'Qyk9ofOnnHOWfBkCoKUmZivaUntoYNLtXs4sHS+taHPLGJSJFW54Q' +
'fN7/9HjkpElK4ump0XTqSkxUc1Xwg/N4QK9RaM3jvbHXSCwh784sb' +
'3hs3S9hYpyaDqDeGEo3kK5pncfOOJJip0jS8JaozsT+IlTQohqvtK' +
'KoFkLadpE6Ofxk03OCa3QvuU0/tC9DGUVQxiCGiOUoMVO09k42/+w' +
'DevxLbbBlknnmg7DxD1Km0E1X2ml5JVGR34g6ZS9n4DWoR2e0clrY' +
'lqCYMTTCjCwLY2WhGHiHqUNoJqvKIqSPajmK4qiZA+q+YqiKNmDar' +
'6iKEr2oJqvKIqSPajmK4qiZA+q+YqiKNmDar6iKEr2oJqvKIqSPaj' +
'mK4qiZA+q+YqiKNmDar6iKEr2oJqvKIqSPajmK4qiZA+q+YqiKNmD' +
'ar6iKEr2oJqvKIqSPajmK4qiZA+q+YqiKNmDar6iKEr2oJqvKIqSP' +
'ajmK4qiZA+q+YqiKNmDar6iKEr2oJqvKIqSPajmK4qiZA+q+YqiKN' +
'mDar6iKEr2oJqvKIqSPajmK4qiZA+q+YqiKNmDar6iKEr2oJqvKIq' +
'SPajmK4qiZA+q+YqiKNmDar6iKEr2oJqvKIqSPajmK4qiZA+q+Yqi' +
'KNmDar6iKEr2oJqvKIqSPcTTfEVRFKVN4tR8RVEUpQ1jar6iKIrS5' +
'iHNVxRFUbKE/wc9X4bh');
SMART_DrawBitmap(true, ourPhoto,Point(6,344));
SMART_DrawText(9,415,LoginChars,info,clTeal);
SMART_DrawText(9,435,LoginChars,info2,clTeal);
FreeBitmap(ourPhoto);
end;
begin
SetupSRL;
ActivateClient;
SmartProggy;
repeat
until(false)
end.
Text Types
BigChars
CharsNPC
CharsTrade
FriendChars
LoginChars
SmallChars
SmallCharsNS
StatChars
UpChars
UpCharsEx
XPChars
Color Examples
clBlack
clMaroon
clGreen
clOlive
clNavy
clPurple
clTeal
clGray
clSilver
clRed
clLime;
clYellow
clBlue
clFuchsia
clAqua
clLtGray
clDkGray
clWhite
Closing Thoughts
I hope this tutorial helped. It was the first one I've written in a very long time, so please let me know of any errors, or what I can do to improve it. I hope more people can incorporate some nice progress reports like this into their scripts now
INTERESTED IN LEARNING HOW TO CREATE THE ACTUAL PROGRESS REPORT DATA?
abu_jwka has made a brilliant tutorial that should cover how to get all your data to display the proper information you want such as xp/hour, xp gained, etc.
Check this link out!