tinnetju Posted January 6, 2012 Share Posted January 6, 2012 (edited) Heey guys, some people asked me how to script and i learned 2 people how to, but it was a pain in the ass... So i decided to make a little video how to make your first script. The video is horrible but the testing part at 00:30 is very useful. Just read this or the youtube description. https://www.youtube.com/watch?v=n-ctTNQ8lxk --Okay first of all, this is for all who wants to learn how to script. --I was too lazy to teach everyone individually how to script, so here are some basics. --First i want to make sure you understand the differences between client and server, --I know there are some mistakes in what i script and say sometimes, but i just learn you what i know. --First we are making a little script which gives the player 100 dollar as soon as he types a command --This could be done server and client side. --server sided lua function theServerSidedGimmeCommand (source) --use names like theMovableObject or theWalkingPed to make and keep your script as easy readable as possible givePlayerMoney ( source, 100 ) --give's the source player (the player who executes the function, can be done with various events, commands and binds) 100 dollar when he executes the function end addCommandHandler ( "serversidegivecash", theServerSidedGimmeCommand ) --adding the command which executes the function, everything in the function will run as soon as he types serversidegivecash --client sided lua function theClientSidedGimmeCommand () --use different names for EVERY function, so you and the script won't get confused, also for every, example: myPed = createped use different names like myPed1 and myPed2 givePlayerMoney ( 100 ) --in client side scripts the player who executes the function is always the source player, so no need for the source argument here end addCommandHandler ( "clientsidegivecash", theClientSidedGimmeCommand ) fileDelete("script_name.lua") --use this to maximum protect your scripts, only add this at the very last line of your script. As soon as a player joins he downloads the scripts --but will be deleted right away. The only downside of this trick is that the player needs to download this client lua everytime he join the server. --This is what the meta.xml file looks like "Tinne_Spoel" name="Example script" version="1.0" type="script"/> --just the name, version, author and type of the script --Things to remember: --Never use spaces or things like $*(%&@ in your script names, files or folders. Some of them will give errors. --Server events or functions cant be used in client lua's and vice versa. You do have some events and functions which are both client and server sided. --ALWAYS backup every 10 savings or test from your script, it happens you lose your script, delete, rewrite whatever. Just do --Now put the server sided function in the server lua, the client sided function in the client lua and the meta stuff in the meta.xml --Links: Notepad++: http://www.notepad-plus-plus.org/download/v5.9.8.html The entire tutorial: http://pastebin.com/m1Bj5v3a MTA SA: http://www.mtasa.com/ Good luck with your own scripts! Edited January 6, 2012 by Guest Link to comment
CapY Posted January 6, 2012 Share Posted January 6, 2012 Use [lua] codehere [ /lua] tags, also this should go into 'Tutorials' board. Link to comment
Castillo Posted January 6, 2012 Share Posted January 6, 2012 Moved topic to the right section. Link to comment
JR10 Posted January 7, 2012 Share Posted January 7, 2012 And 'source' shouldn't be in the function arguments. And fileDelete thing for client sided scripts doesn't work, I tried it, if you disconnect, it will remain. Link to comment
x86 Posted January 7, 2012 Share Posted January 7, 2012 Nice way to protect client scripts, lol! Link to comment
Recommended Posts