Legyen végre rend a szkriptekben Tudjátok sokan szoktak tõlem segítséget kérni általában MSN-en. Sokaknak viszont hiába magyarázom, nem értik meg, és nem jutnak semmire. Ekkor szoktam mondani, hogy \"jó, küldd át megnézem\". Az átküldés után viszont elszörnyülködök a szkripteken, hogy mennyire olvashatatlanok és nem lehet velük dolgozni.
Minden \"modder\" úgy kezdi a munkáját, hogy szépen átírja, hogy \"script by XY\" és telepakolja az egészet teleportokkal meg sok hülye paranccsal, amiket máshonnan szerzett. Ez nem szkriptelés kérem, hanem szimpla Másolás-Beillesztés, ami miatt az életben nem lesz belõlük jó szkripter!
Elõször is az indentációra kell figyelni, majd a kezelhetõségre.
Ha jobban odafigyelünk, akkor nem csak szebb,hanem rövidebb is lesz a szkriptünk!
Nos itt egy nagyon tanulságos példa és annak a normális verziója:
Rossz Példa[pawn]
if( strcmp( cmdtext, \"/tele-mn\", true ) == 0 ) {
if( IsPlayerInAnyVehicle( playerid ) ) {
new Float:X;
new Float:Y;
new Float:Z;
new VehicleID;
GetPlayerPos( playerid, X, Y, Z );
VehicleID = GetPlayerVehicleID( playerid );
SetVehiclePos( VehicleID, 809.6710, 843.3442, 9.8497 );
} else {
newFloat:X;
newFloat:Y;
newFloat:Z;
GetPlayerPos( playerid, X, Y, Z );
SetPlayerPos( playerid, 809.6710, 843.3442, 9.8497 );
}
return 1;
}
[/pawn]
Jó Példa[pawn]
if( strcmp( cmdtext, \"/tele-mn\", true ) == 0 )
{
if( IsPlayerInAnyVehicle( playerid ) )
SetVehiclePos( GetPlayerVehicleID( playerid ), 809.6710, 843.3442, 9.8497 );
else
SetPlayerPos( playerid, 809.6710, 843.3442, 9.8497 );
return 1;
}
[/pawn]
Még jobban javíthatjuk a kezelhetõséget, ha kommenteket (// vagy /* */) teszünk a szkriptbe és ellátjuk magunkat sok hasznos információval.
Remélem, hogy ezek után jobban odafigyeltek majd erre. Ha meg nem akkor így jártatok.
Kowalski[mod][pawn][*/pawn] tagek hozzáadva.[/mod]
Jah ez igaz, hogy sokkal egyszerûbb meg rövidebb lesz tõle a script.
és szebb! :)
Mindenkinek egységes tab-használatot kéne használnia mert különben annyira érthetetlen az egész... Már a kezdetektõl arra törekedtem hogy legalább számomra érthetõ legyen és megpróbáltam normálisabban elhatárolni a kódot, de ezt mindenkinek így kéne.
Én is úgy próbálom h egyszerûen olvasható legyen!Józan paraszti ésszel, h ha ránéz vki akk értse meg h mi hova tartozik:D
egyetértek :P
Ja és sztem ajánlott, én legalábbis szoktam, rakni ilyen
//-------------------------------------------
-t ha új cucc jön, h lássam, h az már nem oda tartozik!
hat en //-vel oda szoktam irni ha mi kovetkezik onnan ha olyansmi ami meg tesztelesre kerul stb.
Amióta elolvastam ezt a topicot, folamatosan odafigelek az indentációra, és nekem is küldtek már szkriptet, és tele volt loose indentation-nal. :)
De akkor még olvashatóbb lesz h ha a teleportra csinálsz 1 fügvényt és abba mindent beleirsz amiket használni szoktál és akkor 1 teleport 1 sor lesz