Právě je ned 20. kvě 2012 7:06:11
Hosting WEDOS.cz
SLEVA 25% (slevový kód:PAWNO25)

Nejnovější témata:
[Prezentace]GameMix Hosting a Adminka od No.Wolf
[HOSTING] Hledáme od MarekH
[SCRIPT/INC] Colored Checkpoint v1 (QCCP v1) od QWER
[HLEDAM] Status hračov od aburi
[GM] Lucky Adventures od martanius

Vyzkoušejte antivirus ESET Smart Security 5

Vyhledat témata bez odpovědí | Zobrazit aktivní témata Zobrazit nové příspěvky | Zobrazit vaše příspěvky


Všechny časy jsou v UTC + 1 hodina [ Letní čas ]





Odeslat nové téma Odpovědět na téma  [ Příspěvků: 27 ] 
Autor Zpráva
 Předmět příspěvku: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 18:43:17 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

Zdravím, v tomhle tutoriálu si ukážeme jak pracovat s Checkpointy (Dále jen CP).
Existují ješte RaceCheckpointy, ale o nich někdy jindy, ted se zamerime na ty "obycejne" x)

!!!! PAMATUJTE SI !!!!


1. Část - vysvětlení funkce

SetPlayerCheckpoint - Vytvoří CP
SetPlayerCheckpoint(playerid,Float:x,Float:y,Float:z,Float:size);

playerid - To znáte, určuje komu se funkce vyvolá.
Float:x, y, z - Určuje souřadnice, kde se CP vytvoří.
Float:size - Určuje velikost CP.

[hr][/hr]

DisablePlayerCheckpoint - Zruší hráči CP

DisablePlayerCheckpoint(playerid);
playerid - To znáte, určuje komu se funkce vyvolá.

[hr][/hr]

2. Část - Vyvolání funkcí, když hráč použije CP

Vstupování

K tomu nám slouží public OnPlayerEnterCheckpoint - Když Hráč Vstoupí do CP.

[hr][/hr]

Vystupování

K tomu nám slouží public OnPlayerLeaveCheckpoint - Když Hráč vystoupí z CP.

[hr][/hr]

3. Část - kombinace více CP

Pokud chceme kombinovat více CP, třeba při závodě nebo při misi, musíme použít proměnu.

Vytvoříme si tedy proměnu pro hráče (dáme nahoru pod definice/includy)
Kód:
new cp[MAX_PLAYERS];

MAX_PLAYERS určuje pro kolik hráčů se tato definice vytvoří, můžete použít vlastní definici (MAX_PLAYERS_EX atd.)

[hr][/hr]

Máme tedy proměnou a můžeme začít kombinovat x)

Do příkazu, nebo tam kde chceme aby se spustil první CP vložíme tento kod:
Kód:
SetPlayerCheckpoint(playerid, 1982.6150, -220.6680, -0.2432, 3.0);
cp[playerid] = 0;

SetPlayerCheckpoint - Vytvoří CP (viz. 1 část)
cp[playerid] = 0; - Nastaví proměnu na 0 aby jsme s ní mohli pracovat později.

A přejdeme do našeho publicu OnPlayerEnterCheckpoint

[hr][/hr]

Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    return 1;
}


Takto nějak ted vypadá náš public, ale my ho upravíme ! x)

Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    switch(cp[playerid]) // "přehazuje" hodnotu proměny, nevím jak nazvat.
    {
        case 0: // Když je hodnota cp[playerid] 0 vyvolá se case 0
        {
            DisablePlayerCheckpoint(playerid); // zruší CP
            cp[playerid]++; // přidáme hodnotu aby se nám furt neopakovalo case 0
            SetPlayerCheckpoint(playerid, 1982.6150, -220.6680, -0.2432, 3.0);
            // vytvoříme druhý checkpoint
        }

        case 1: // a pokracujeme
        {
            DisablePlayerCheckpoint(playerid);
            cp[playerid]++;
            SetPlayerCheckpoint(playerid, 1982.6150, -220.6680, -0.2432, 3.0);
        }
        case 2: // az se dostaneme na konec závodu a tam vložíme
        {
            cp[playerid] = 0; // aby hráč mohl znova absolvovat závod
            DisablePlayerCheckpoint(playerid); // zruší CP
            SendClientMessage(playerid, BARVA, "Vyhrál si huaaa xD");
        }
    }
    return 1;
}


[hr][/hr]

4. Část - Podmínka


Pokud je hráč v Checkpointu - IsPlayerInCheckpoint

Kód:
if(IsPlayerInCheckpoint(playerid))
{
}


[hr][/hr]

5. Část - Závěr


Wikipedie:
http://wiki.sa-mp.com/wiki/SetPlayerCheckpoint
http://wiki.sa-mp.com/wiki/DisablePlayerCheckpoint
http://wiki.sa-mp.com/wiki/IsPlayerInCheckpoint

http://wiki.sa-mp.com/wiki/OnPlayerEnterCheckpoint
http://wiki.sa-mp.com/wiki/OnPlayerLeaveCheckpoint

Děkuji za přečtení tutoriálu, popřípadné chyby hlašte.


Naposledy upravil David dne pon 11. říj 2010 20:20:19, celkově upraveno 4

Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 18:44:21 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

pekný tut :) určite použijem do kúpaliska


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 18:47:21 
Eddie Pulaski
Eddie Pulaski
Registrován: pon 05. říj 2009 19:36:07
Příspěvky: 1527
Bydliště: Ostrava

celkem super....

_________________
Nicky, kterýma přijíždím servery: Bl4ck.J0k3r nebo Tatarska_Omacka :)


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 18:51:58 

uz to tu je ale inak 8/10


  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 18:52:46 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

není... možno ak ano ale pekne vysvetlené je toto ;)


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 18:56:18 

lol david vidim ze si sa pekne musel nudit vsetky tie linky atd ale inac super vysvetlene 10/10 :thumbup: :thumbup: :v: :v: :v: :v:


  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:00:37 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

Dekuji vsem x)

Styl3r píše:
uz to tu je ale inak 8/10

Toto je podle tebe TuT? http://pawno.cz/viewtopic.php?f=8&t=3637&hilit=Checkpoint :D
A ostatni jsou prevazne jen na ridicak.


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:02:15 

David píše:
Dekuji vsem x)

Styl3r píše:
uz to tu je ale inak 8/10

Toto je podle tebe TuT? http://pawno.cz/viewtopic.php?f=8&t=3637&hilit=Checkpoint :D

nj to je nejaka patlanina a ne TUT toto je TUT z velkym T


  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:03:17 

Výborní TuT.
Suprově si to vysvětlil. Začátečníkům určitě pomůže.

10/10 :-)


  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:26:02 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4531
Bydliště: Blava ne ?

wtf ? :D
Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    switch(cp[playerid]) // "přehazuje" hodnotu proměny, nevím jak nazvat.
    {
        case 0: // Když je hodnota cp[playerid] 0 vyvolá se case 0
        {
            DisablePlayerCheckpoint(playerid); // zruší CP
            cp[playerid]++; // přidáme hodnotu aby se nám furt neopakovalo case 0
            SetPlayerCheckpoint(playerid, 1982.6150, -220.6680, -0.2432, 3.0);
            // vytvoříme druhý checkpoint
        }

        case 1: // a pokracujeme
        {
            DisablePlayerCheckpoint(playerid);
            cp[playerid]++;
            SetPlayerCheckpoint(playerid, 1982.6150, -220.6680, -0.2432, 3.0);
        }
        case 2: // az se dostaneme na konec závodu a tam vložíme
        {
            cp[playerid] = 0; // aby hráč mohl znova absolvovat závod
            DisablePlayerCheckpoint(playerid); // zruší CP
            SendClientMessage(playerid, BARVA, "Vyhrál si huaaa xD");
        }
    }
    return 1;
}

toto sa používa pri RACE CP a nie pri ako ty hovoríš obyčajných :) na toto sa "obyčajné" nepoužívajú. je to nepekné ak sa pri race používa obyčajný CP...
mohol si tam dať npr. povolanie alebo niečo ale nie Race...

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:28:12 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

Jaj bug xD

Tuhle cast sem do toho tutu chtel vlozit jen pro ty co nevi jak se dela takhle tech vic CP za sebou protoze se me na to uz 5 lidi ptalo. Mas pravdu s tim SetPlayerRaceCheckpoint ale me to nedoslo :D


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:30:13 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4531
Bydliště: Blava ne ?

zabudol si napísať jednu dôležitú vec ! dopíš ju

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:45:00 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

QWER píše:
zabudol si napísať jednu dôležitú vec ! dopíš ju

Doplneno x) Jo a BTW u toho switch - tak to se nemusi pouzivat jen k Race ale treba k misim kdyz ja nevim treba mas cisticku silnic tak das 6 CP za sebou a prece do toho nebudes cpat zavodni CP :D


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:54:33 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

kam mám vložiť to
Kód:
if(IsPlayerInCheckpoint(playerid))
{
}

?


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:55:54 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4531
Bydliště: Blava ne ?

prečo nie ? to iba wtsa tam dalo obyčajný ale race ti ukazuje hned kde je další a tak vieš kade máš ísť... to by bolo kebyže svet funguje na tento system :D
by si sa dozvedel kade máš ísť až ked budeš tam (npr. beusáci (MHD xD)) si predstav že ti povedia kde je dalšia zastávka až ked si na tej pred nou xD

Dano106 do riti si to strč

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 19:57:14 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

Dano106 píše:
kam mám vložiť to
Kód:
if(IsPlayerInCheckpoint(playerid))
{
}

?


To je podmínka PokudJeHráč v CP, takže jak potřebuješ, do timeru atd.
do OnPlayerEnterCheckpoint to davat nemusis protoze ten public se spusti JEN kdyz hrac vstoupil do CP.

-- 11 říj 2010, 19:57 --

QWER píše:
prečo nie ? to iba wtsa tam dalo obyčajný ale race ti ukazuje hned kde je další a tak vieš kade máš ísť... to by bolo kebyže svet funguje na tento system :D
by si sa dozvedel kade máš ísť až ked budeš tam (npr. beusáci (MHD xD)) si predstav že ti povedia kde je dalšia zastávka až ked si na tej pred nou xD


Chápu ale ty jsi říkal ŽE SE POUŽÍVÁ JEN RACE CP, tak ti to vyvracim xD


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 20:02:30 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

mne to nechce najsť
Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    return 1;
}


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 20:03:01 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4531
Bydliště: Blava ne ?

klameš ! som napísal že sa nepoužívajú, lebo je to nepekné ! :D

_________________
Moja tvorba http://pastebin.com/u/PatchwerkQWER
Ak chceš byť lepší ako ja, a budeš sa snažiť budeš lepší ! Už len pri pomyslení na to, že si lepší než ja, ťa posunie dopredu. Ale nezabudni ! Musíš sa snažiť. A potom zistíš to, čo vie pár ľudí - že som lama a moje scripty sú nič oproti tomu, čo môžeš vytvoriť ty. Tak sa prekonaj ako kedysi ja, a natri to všetkým ! Uprav budúcnosť pre svoj prospech


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pon 11. říj 2010 21:35:50 
The Truth
The Truth
Uživatelský avatar
Registrován: sob 22. kvě 2010 23:07:59
Příspěvky: 582
Bydliště: Bordel!

Dano106 píše:
mne to nechce najsť
Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    return 1;
}

wtf? normalne to zkopiruj do modu a jen to vypln funkcemi......


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: pát 15. říj 2010 18:53:10 
T - Bone Mendez
T - Bone Mendez
Uživatelský avatar
Registrován: čtv 09. zář 2010 20:45:02
Příspěvky: 57

Dobry tut ,ale pro me moc dlouhy :D

sem na to moc liny ted to nepotrebuji mozna dam za mesic :D

_________________
ObrázekObrázekObrázekObrázekObrázekObrázekObrázekObrázekObrázekObrázek

Obrázek

Anti-Lams team
Řešíme lams help topicy stylem:
• Nebudeme ti dělat kód na přání
• Nebudeme postovat celý script do tvého helpu
• Opravíme ti tvůj kód, když u tebe uvidíme snahu
Pokud souhlasíš, zkopíruj si to do podpisu


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:29:41 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

lidi fakt potrebujem help... mne to nechce nájsť
Kód:
public OnPlayerEnterCheckpoint(playerid)
povdstaťe vypíše že sa nenašiel text david helpni :(


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:31:36 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

LOL neumis zkopirovat public ? Bud z TuTu nebo z wiki
Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    return 1;
}


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:40:26 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

a kde mám dať tú podmienku?
Kód:
if(IsPlayerInCheckpoint(playerid))
{
}

a to ked dám napr takto...
Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    Ban(playerid);
    DisablePlayerCheckpoint(playerid);
    return 1;
}

tak to je čo? to je niečo iné ako tá podminenka? toto nechápem potrebujem help ešte toto bi si my vysvetlil?


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:42:07 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

if(IsPlayerInCheckpoint(playerid))

Si muzes dat kamkoliv, neni povinna. Je to treba kdyz si das timer kterej zjistuje jestli si v CP tak tam musis dat tuhle podminku, ale do OnPlayerEnterCheckpoint ji davat nemusis protoze public se spusti kdyz do nej vleze, tudiz v tom CP musi bejt :D


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:42:52 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

takze staci OnPlayerEnterCheckpoint ked do nej vojde tak mu to da?


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:44:46 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

Kód:
public OnPlayerEnterCheckpoint(playerid)
{
    Ban(playerid);
    DisablePlayerCheckpoint(playerid);
    return 1;
}


Kdyz vstoupi do CP tak ho to zabanuje a zrusi mu to CP. Podminku tam cpat nemusis.


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:45:11 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

pár errorov
Kód:
C:\Users\Danny\Desktop\kupalisko.pwn(941) : error 029: invalid expression, assumed zero
C:\Users\Danny\Desktop\kupalisko.pwn(941) : warning 215: expression has no effect
C:\Users\Danny\Desktop\kupalisko.pwn(941) : error 001: expected token: ";", but found ")"
C:\Users\Danny\Desktop\kupalisko.pwn(941) : error 029: invalid expression, assumed zero
C:\Users\Danny\Desktop\kupalisko.pwn(941) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase



4 Errors.

riadok
Kód:
    GivePlayerMoney(playerid, +100);


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:48:11 

GivePlayerMoney(playerid, +100); + sa nedava iba - !!!
to + zmaz


  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:48:38 
Carl Johnson "CJ"
Carl Johnson "CJ"
Registrován: stř 19. srp 2009 17:31:39
Příspěvky: 6369

Ty si fakt pawner jak buk :D

GivePlayerMoney(playerid, 100);
+ se nepíše, píše se jen mínus ( - ) když odečítáš

// me predbehli xD


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Checkpointy
PříspěvekNapsal: čtv 11. lis 2010 17:50:44 
Wu Zi Mu "Woozzi"
Wu Zi Mu "Woozzi"
Registrován: ned 19. zář 2010 14:35:18
Příspěvky: 1278

lol to fakt iďe? vy už ste hosťia ale budete ešte lepší :) diky


Offline
 Profil  
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 27 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


 Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na: