Jump to content

návod #1 Úvod [*]


mxco

Recommended Posts

#1 Úvod

Nová série poučných slov o skriptování v PAWN

:1:



Intro
Po posledních zkušenostech zde na fóru, a nebo i jiných nováčků, kteří se mě ptali na pomoc, jsem byl velice zděšen, jak chápou pawno.
(Po první větě můžu naokraj říct, že je psaní textu delšího rázu za trest, zvláště pomocí debilních nefungujících BBcodů. Ale to bylo z jiného soudku.)
Zvýrazněné slova jsou velmi důležitá pro pochopení.


Po delším pozorování komunity jsem uznal, že snad 95% lidí nemá ponětí o tom, co dělá.

První příklad
Jak jsem již řekl v předešlé větě, uvedu příklad.
 
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

Většina z vás by řekla, že je to potřebný kód, bez kterého nepůjdou příkazy, nebo to je pro vás strašně složitá definice nějakých sraček a nebo by to prostě házelo errory :( Tohle není vysvětlení toho, proč to tam je.

Většina malých mozečků nepochopí reálné vysvětlení, ale nehodlám rozebírat psychickou vyspělost jedince. Ten kdo to svým způsobem nepochopí, nemá na to, aby se tomuto dále věnoval. Ano, myslím tím děti, co toto nedělají ze zájmu a přiučení něčemu novému, ale toho, aby si zajezdili autem ve hře.

V podstatě se jedná o funkci, která "přesune příkaz" do nové funkce po vyvoláni callbacku OnPlayerCommandText. Umožňuje nám rychlý zápis příkazů bez počátečního lomítka / a do druhého parametru funkce dcmd_prikaz pošle obsah za příkazem a vrátí hodnotu 1, protože to callback informuje o tom, že příkaz byl zpracován.

Důvod, proč vám to vykládám na tomto příkladu, je, aby jste pochopili mechaniku obecně a tím všechno.

Třetí věc a také důvod, proč jsem založil toto téma je že nemá smysl zakládat hloupé tutorialy na to, jak něco udělat. Většina z nich, bez urážky, je jako "od robota pro robota"; vysvětlení nedostačující a jak jsem již zmínil - témata typu: "bez toho by vám to nešlo, tak si to ku*va zkopírujte". A to nepočítám optimalizaci, způsob a tak podobně.

Rozhodl jsem se založit novou sérii návodů pro chápání samotné mechaniky a logiky, protože je to jen o fantazii, představivosti a logice. Podle toho všeho si můžete vytvořit naprosto vše špičkové kvality.

Osobně jsem měl podobné začátky, ale čím dřív se zlozvyk eliminuje, tím lépe. Nekonečným kopírováním kódu jsem ztratil spoustu let praxe. Díky této zkušenosti může pawn sloužit i jako odrazový můstek pro daleko složitější jazyky.

Doufám, že toto téma bude vnímáno jen přínosně a kladně.

Prozatím sbohem, I'll be back.
]mxco[
  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...