Re: Pawno Pre Začiatočníkov

Sekcia určená pre programovací jazyk pawn.

Pawno Pre Začiatočníkov

Poslaťod Promos » Pia 10. Máj 2013 10:31:52

                                                                                                                  TUTORIAL
Obtiažnosť: 1/10
Tutorial o: Začiatky pawna
Tvorca Tutorialu: Promos
Ostatné:Veľa šťastia !
====================================================================================================================
Vitajte , pri takom "Menšom" tutoriali. Je to viac než jednoduché. Ide o otvorenie očí nováčikom do pawna. Snaď vám tento tutorial bude užitočný do budúcich rokov scriptovania...

Začneme jednoduchými pomenovaniami jednotlivých funkcií :

1.) #define (Definícia je viac menej používaná na definíciu farieb do módu napr. #define COLOR_WHITE 0xFFFFFF , neslúži iba na farby !)
[b]2.)
#include(Bez includov sa v pawne skoro vôbec nezaobídeme, určité funkcie využívajú svoje includy. Napr. #include ,#include ...)
3.) new (Slúži na určenie niečoho nového, čo v pawne ešte neni spomínané. napr. new PM[MAX_PLAYERS]; )
4.) // (Slúži na pomenovanie, označenie určitých textov. V pawne ako keby ani neexistoval. Vädšinou sa používa na zapamätanie odsekov. Napr. //tuto su includy
5.) ; (Týmto sa ukončuje string , ZA KAŽDÝM. Napr. SetPlayerHealth(playerid,-1);  )
====================================================================================================================
Spravíme primitívny príkaz /kill

Nájdeme si "OnPlayerCommandText"

Kód: Vybrať všetko
public OnPlayerCommandText(playerid, cmdtext[])
{
   if (strcmp("/kill", cmdtext, true, 10) == 0)
   {
      //Nadstaví hráčovi život na 0 (Zabije ho)
                SetPlayerHealth(playerid,-1);
      return 1;
   }
   return 0;
}


Kód: Vybrať všetko
SetPlayerHealth(playerid,100); =Nadstaví plný život
SetPlayerHealth(playerid,50); = Nadstaví polovičný život
SetPlayerHealth(playerid,0); = Zabije hráča

SetPlayerHealth -> Nadstaví hráčovi život
playerid -> ID hráča
-1 -> koľko životu mu po príkaze /kill má nadstaviť


OnPlayerCommandText
-> keď hráč zadá príkaz (Funkcie nižšie)
====================================================================================================================
Tak , spravíme si lahulinký beh postavy iba 1 veta

Nájdeme si "OnGameModeInit"

Kód: Vybrať všetko
        SetGameModeText("Blank Script");
   AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);

A medzi SetGameModText a AddPlayerClass dáme [color=red]UsePlayerPedAnims();[/color]
Kód: Vybrať všetko
         SetGameModeText("Blank Script");
   UsePlayerPedAnims();
        AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);

====================================================================================================================
Tak na začiatok vás nebudem viac zaťažovať, stačí sa učiť postupne , bol by som rád keby mi túto tému ohodnotíte  x/10 , aby som vedel, či má vôbec zmysel tvoriť nový "TUTORIAL"... Ak sa vám tento "TUTORIAL" páčil, môžte navštíviť aj môj YT kanál : Promos´s TV , nájdete tam viac tutorialov. Ak budete chcieť  ;) Takže držím palce !
Naposledy upravil Anonymous dňa Pia 10. Máj 2013 20:41:22, celkovo upravené 1
Promos
Vo výslužbe
Vo výslužbe
 
Príspevky: 473
Registrovaný: Ned 29. Máj 2011 12:29:50

Re: Pawno Pre Začiatočníkov

Poslaťod Matess » Pia 10. Máj 2013 11:19:33

Možná jednoduchý tutorial, ale stejně tu máš chyby...
Promos píše: UsePlayerPedAnims(130;)


Nevim proč tam máš 130, když to s tím tak maximálně hází warning a přitom stačí jen
Kód: Vybrať všetko
UsePlayerPedAnims();

jelikož ta funkce nemá žádné parametry a tudíž žádné 130 nebo něco jiného netřeba

Pokud to má být pro začátečníky, tak si nejsem jist jestli je dobé používat -1 místo 0, která jasně určí, že se nastavilo 0 životů.

Promos píše:
Kód: Vybrať všetko
                SetPlayerHealth(playerid,-1);
   




Kód: Vybrať všetko
SetPlayerHealth(playerid,0); // Nastaví 0 HP = smrt

Kód: Vybrať všetko
SetPlayerHealth(playerid,50); // Nastaví 50 HP

Kód: Vybrať všetko
SetPlayerHealth(playerid,100); // Nastaví 100 HP
Naposledy upravil Matess dňa Pia 10. Máj 2013 11:51:53, celkovo upravené 1
Obrázok
Matess
Administrátor
Administrátor
 
Príspevky: 764
Registrovaný: Sob 27. Jún 2009 13:43:35
Bydlisko: Ostrov
Obľúbený server?: SHOOTER

Re: Pawno Pre Začiatočníkov

Poslaťod Promos » Pia 10. Máj 2013 12:15:24

Potom to všetko editnem, mal som dosť práce presto som to robil. Čo sa týka "UsePlayerPedAnims" myslím že warning nevadí , účinok je rovnaký. Potom popridávam vysvetlivky ďalšie
Promos
Vo výslužbe
Vo výslužbe
 
Príspevky: 473
Registrovaný: Ned 29. Máj 2011 12:29:50

Re: Pawno Pre Začiatočníkov

Poslaťod tinostar91 » Pia 10. Máj 2013 12:48:50

Samozrejme že warning nevadí lenže ty keď robíš tut malo by to byť úplne bez chýb pretože veľa ľudí sa z tutov učí a keď sa to naučia blbo už nikdy nezistia kde robia chybu

//mimochodom aby sme boli presni, jazyk je pawn, nie pawno, to je uz program.
Naposledy upravil tinostar91 dňa Pia 10. Máj 2013 21:32:27, celkovo upravené 1
KarTooN píše:Nejlepší je, když si stáhnu L4D a pak zjistím, že to je z nějakého ruského satanisticky-fašistického serveru
Obrázok užívateľa
tinostar91
Senior
Senior
 
Príspevky: 911
Registrovaný: Sob 08. Jan 2011 18:09:22
Bydlisko: Bytča
Obľúbený server?: PTPM

Re: Pawno Pre Začiatočníkov

Poslaťod .MGT]Solitaire » Pia 10. Máj 2013 16:10:53

9/10
Obrázok
Obrázok užívateľa
.MGT]Solitaire
Vo výslužbe
Vo výslužbe
 
Príspevky: 696
Registrovaný: Pon 29. Apr 2013 16:59:45

Re: Pawno Pre Začiatočníkov

Poslaťod Promos » Pia 10. Máj 2013 20:42:19

Detaily spravené , úpravy pridané
Promos
Vo výslužbe
Vo výslužbe
 
Príspevky: 473
Registrovaný: Ned 29. Máj 2011 12:29:50

Re: Pawno Pre Začiatočníkov

Poslaťod EEEE » Pon 13. Máj 2013 19:03:30

Promos píše:
1.) #define (Definícia je viac menej používaná na definíciu farieb do módu napr. #define COLOR_WHITE 0xFFFFFF , neslúži iba na farby !)
[b]2.)
#include(Bez includov sa v pawne skoro vôbec nezaobídeme, určité funkcie využívajú svoje includy. Napr. #include ,#include ...)
3.) new (Slúži na určenie niečoho nového, čo v pawne ešte neni spomínané. napr. new PM[MAX_PLAYERS]; )
4.) // (Slúži na pomenovanie, označenie určitých textov. V pawne ako keby ani neexistoval. Vädšinou sa používa na zapamätanie odsekov. Napr. //tuto su includy
5.) ; (Týmto sa ukončuje string , ZA KAŽDÝM. Napr. SetPlayerHealth(playerid,-1);  )


Par veci by som definoval pripadne popisal trochu inak:
1.) Definicia sa pouziva na definovanie niecoho pod vlastnym pojmom, syntax je: #define VLASTNY_NAZOV cislo/funkcia/....
2.) #include sluzi na pridavanie includov do modu/filterscriptu , includy sa daju aj vytvorit, nemusia to byt len tie zakladne co sa tykaju samp, samozrejme mas pravdu ze a_samp je zakladny aj potrebny includ
3.) new by som definoval ako vytvorenie novej premennej(string), nie ako niecoho co v pawne nieje este spominane
4.) // nieje to pomenovanie ale komentovanie... takisto sa na komentovanie viacerych riadkov naraz pouziva /* - na zaciatok a */ - ukoncenie komentu
5.) ; - ukoncuje sa tym funkcia(prikaz), string je premenna, to co vytvaras cez new

A zasadna vec, jazyk je pawn a nie pawno... pawno je program
Víťaz Netopeer Awards v kategórii - Pawner roku 2013.
Obrázok
Obrázok užívateľa
EEEE
Administrátor
Administrátor
 
Príspevky: 3609
Registrovaný: Ned 01. Aug 2010 18:39:33
Bydlisko: Košice
Obľúbený server?: PFR

Re: Pawno Pre Začiatočníkov

Poslaťod Promos » Pon 13. Máj 2013 20:05:41

Dodám .Dakujem
Promos
Vo výslužbe
Vo výslužbe
 
Príspevky: 473
Registrovaný: Ned 29. Máj 2011 12:29:50


Späť na Pawn

Kto je on-line

Užívatelia prezerajúci fórum: Žiadny registrovaný užívateľ nie je prítomný a 1 hosť

cron