Právě je stř 23. kvě 2012 10:36:17
Hosting WEDOS.cz
SLEVA 25% (slevový kód:PAWNO25)

Nejnovější témata:
[Stránka] Hostingu SA-MP od Om3n
[HELP] Skrytie TextDrawu od Om3n
[HELP] realne zatykani od KillBill61
[ENG/SVK/CZ] mancraft.eu minecraft od ffredyk
[Hledam] Mod na koupeni .pwn od [Non]฿art*

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ů: 14 ] 
Autor Zpráva
 Předmět příspěvku: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 11:32:08 
The Truth
The Truth
Uživatelský avatar
Registrován: stř 10. lis 2010 18:05:17
Příspěvky: 422
Bydliště: A klíče nechcete?

[TuT] Povolání přes dialog


Obtížnost: (podle pravidel doplní tuteři)

Obsah:
  • Úvod
  • Co je to dialog?
  • Co budeme využívat?
  • Kódy a vysvětlení
Upozornění: Výplaty nejsou součástí tutorialu, toto je pouze vysvětlení principu

Úvod:

Pro začátek - vím, že to tu je, ale žádný není v sekci "Návody", proto se ho tam pokusím dostat.

Proč tedy zrovna přes dialog? Dle mého názoru se tam hodí. My budeme vytvářet dialog s dvěma možnostmi: Chceš se přidat k taxikářům? (Ano) (Ne). Po tomto kroku hráč dostane zbraně a skin.

Co je to dialog?

Dialog je okno, kde je otázka, 1 - 2 tlačítka, popřípadě seznam. Ten co budeme využívat my vypadá asi takto:
Spoiler:
Obrázek

Myslím, že na vysvětlní Co je to dialog to zatím stačí. Pawněním a samozdřejmě i hraním se seznámíte s více druhy dialogu.

Co budeme využívat?

1) Samozdřejmě proměnné
2) Barvy
3) Různé zkratky, jako třeba SCM
4) IsPlayerInSphere
5) Dialogy
6) }else{
7) if(...

Kódy a vysvětlení


Takže, budeme potřebovat includ a_samp (v novém scriptu už je):
Kód:
#include <a_samp>


Přidáme pragmu kvůli tabování:
Kód:
#pragma tabsize 0


Teď bychom si měli udělat definice:
Kód:
#define COLOR_YELLOW 0xFFFF00AA
#define taxikar 4
#define SCM SendClienMessage


#define COLOR_YELLOW 0xFFFF00AA
#define taxikar 4
#define SCM SendClienMessage

Definujeme si COLOR_RED jako barvu
Definujeme "taxikar" jako dialog s ID 4
Pro ulehčení - nadefinujeme SCM jako SendClientMessage

Teď si musíme vytvořit nějaké proměnné
Kód:
new Job;
new taxikarpick[1];


new Job;
new taxikarpick[1];

Proměnná povolání
Proměnná pickupu

Teď se přesuneme k publicu OnGameModeInit...
Zde si vytvoříme pickup na námi určených souřadnicích X, Y a Z. (Souřadnice tam dávám jako ukázkové)

Kód:
taxikarpick[0] = CreatePickup(1581,1,2183.6685,1805.3363,11.0000);

taxikarpick[0] = CreatePickup(1581,1,2183.6685,1805.3363,11.0000);
Vytvoří pickup s id 1581 na zapsaných souřadnicích. Dovolí jej vyvolávat jako "taxikar"

Nyní se přesuneme k publicu OnPlayerPickuPickup a vytvoříme si dialog:
Kód:
if(pickupid == taxikar)
   {
   ShowPlayerDialog(playerid,taxikarpick[0],DIALOG_STYLE_MSGBOX,"Zaměstnání - Taxikář", "Chceš se zaměstnat jako taxikář?","Ano","Ne");
   }


if(pickupid == taxikar)
{
ShowPlayerDialog(playerid,taxikar,DIALOG_STYLE_MSGBOX,"Zaměstnání - Taxikář", "Chceš se zaměstnat jako taxikář?","Ano","Ne");
}

Pokud je ID pickupu
Ukáže hráči dialog s ID playerid (Nahoře jsme jej definovali). Typ dialogu bude MSGBOX, nadpis Zaměstnání - Taxikář, otázka Chceš se zaměstnant jako taxikář? Odpovědi - Ano, Ne

A nyní nás čeká poslední a asi nejtěžší část - public OnDialogResponse.
Přejdeme k němu:
Kód:
   if(dialogid == taxikar)
   {
   if(response == 1)
   {
   if(Job==1) {
   SCM(playerid,COLOR_YELLOW,"[POVOLÁNÍ] Zde už jsi zaměstnán");
   } else {
   SCM(playerid, COLOR_YELLOW, "[POVOLÁNÍ] Zaměstnal jsi se jako taxikář");
   GivePlayerWeapon(playerid,22,100);
   SetPlayerSkin(playerid, 171);
   }
   }


if(dialogid == taxikar)
{
if(response == 1)
{
if(Job==1) {
SCM(playerid,COLOR_YELLOW,"[POVOLÁNÍ] Zde už jsi zaměstnán");
} else {
SCM(playerid, COLOR_YELLOW, "[POVOLÁNÍ] Zaměstnal jsi se jako taxikář");
GivePlayerWeapon(playerid,22,100);
SetPlayerSkin(playerid, 171);

}
}

Pokud je dialog "taxikar"
{
Pokud hráč klikne na tlačítko 1
{
Pokud je již jeho povolání "1"
Pošle zprávu
pokud není zaměstnán jako "1"
Pošle zprávu o tom, že se úspěšně zaměstnal
Dá hráči skin a zbraně (můžetes si upravit).
}
}


GivePlayerWeapon(playerid,IDZBRANE,NABOJE);
SetPlayerSkin(playerid, IDSKINU);


Autor: dadanek1999
Poděkování: Uživatel TonySVK za pomoc při mé epické chybě
Doba tvorby v Pawnu: cca 7 minut
Doba tvorby TuTu: přes hodinu :D

Tip: Prosím, nekopírujte to. Projděte si vysvětlivky, pochopte funkce, princip, jakým se tvoří povolání ať tomu rozumíte. Než napíšete komenář typu: "Mě to háže error..." skuste se zamyslet, co by to mohlo způsobit ;)

//EDIT: Ještě je možno použít IsPlayerInSphere http://www.pawno.cz/jak-zabranit-prohaz ... 23652.html

_________________
Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 12:48:51 
Nováček
Nováček
Uživatelský avatar
Registrován: úte 27. pro 2011 6:57:28
Příspěvky: 47
Bydliště: Bratislava

sry ale 1/10 len koli uprave ale toto je tu x krat + rovno si to mal robit cez IPIS a ne PU a cele mi to pride trochu copy odtych co tu uz su :thumbdown:

_________________
Obrázek

Najvzácnejšie čo som kedy mal som stratil a nič som nemohol spraviť aby to tak nebolo.


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 13:07:31 
Kendall Johnson "Kendl"
Kendall Johnson "Kendl"
Uživatelský avatar
Registrován: ned 28. zář 2008 13:02:11
Příspěvky: 2743
Bydliště: Dreadlands

Zbytočný tut....povolanie tu je milionkrát, dialog tu tiež je vysvetlený a ako povedla boban, IPIS je lepšie ako PU ;)

2/10 - Za úpravy a vysvetlenie


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 13:33:32 
The Truth
The Truth
Uživatelský avatar
Registrován: stř 10. lis 2010 18:05:17
Příspěvky: 422
Bydliště: A klíče nechcete?

boban88 píše:
sry ale 1/10 len koli uprave ale toto je tu x krat + rovno si to mal robit cez IPIS a ne PU a cele mi to pride trochu copy odtych co tu uz su :thumbdown:


Copy to není, je to vytažené z mého módu ;)

_________________
Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 13:34:45 
Nováček
Nováček
Uživatelský avatar
Registrován: úte 27. pro 2011 6:57:28
Příspěvky: 47
Bydliště: Bratislava

to neznamena ze to neni copy 97% sk/cz serverov su copy scripty ;)

_________________
Obrázek

Najvzácnejšie čo som kedy mal som stratil a nič som nemohol spraviť aby to tak nebolo.


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 13:45:37 
The Truth
The Truth
Uživatelský avatar
Registrován: stř 10. lis 2010 18:05:17
Příspěvky: 422
Bydliště: A klíče nechcete?

boban88 píše:
to neznamena ze to neni copy 97% sk/cz serverov su copy scripty ;)


Doba kdy jsem kopíroval skončila tak před půl rokem :)
Pochopil jsem, že to nikam nevede a začal si tvořit vlastní věci :)

_________________
Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 15:11:37 
Nováček
Nováček
Registrován: stř 26. říj 2011 15:24:37
Příspěvky: 47

10[color=#FF0040]/10 dikii :D velmi mi to pomohlo .. fakt :D diik[/color]


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 15:12:26 
The Truth
The Truth
Uživatelský avatar
Registrován: úte 03. kvě 2011 18:43:36
Příspěvky: 557
Bydliště: Slovakia

mohlo to byt aj krajšie aj lepšie =))

_________________
BRUNES.cz
Creative Scriping
Obrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 18:11:52 
Carl Johnson "CJ"
Carl Johnson "CJ"
Uživatelský avatar
Registrován: čtv 29. led 2009 20:03:51
Příspěvky: 4548
Bydliště: Blava ne ?

načo pole o s jednou premenou ?

_________________
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] Povolání přes dialog
PříspěvekNapsal: stř 25. led 2012 18:36:07 
The Truth
The Truth
Uživatelský avatar
Registrován: čtv 09. pro 2010 19:12:36
Příspěvky: 464
Bydliště: C:\recykler

boban88 píše:
to neznamena ze to neni copy 97% sk/cz serverov su copy scripty ;)


a jedno procento je můj mód :D myslím to z těch 3 :D

_________________
- Mám heslo, nekopíruj, nepoužívej cizí kódy, nevydávej za své...

Nevíte si rady s pawnem?
Spoiler:
Já vám s tím nepomůžu !


Skype : Paulie2907 (pro rady a dotazy, žádný deamx, žádná RZE, žádná dekompilace)


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: pon 27. úno 2012 12:41:21 
T - Bone Mendez
T - Bone Mendez
Uživatelský avatar
Registrován: sob 28. led 2012 21:00:17
Příspěvky: 78

Hazi mi to
Kód:
C:\Users\Lukinek\Desktop\Moje pawno vyrobky\Admin Povolani.pwn(43) : error 017: undefined symbol "SCM"
C:\Users\Lukinek\Desktop\Moje pawno vyrobky\Admin Povolani.pwn(45) : error 017: undefined symbol "SCM"


Kód:
Radek 43: SCM(playerid,COLOR_YELLOW,"[POVOLÁNÍ] Zde už jsi zaměstnán");

Kód:
Radek 45:   SCM(playerid, COLOR_YELLOW, "[POVOLÁNÍ] Zaměstnal jsi se jako admins");

_________________
Nový hosting na SA-MP servery web:www.osk-host.tk


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: pon 27. úno 2012 15:56:32 
Kendall Johnson "Kendl"
Kendall Johnson "Kendl"
Uživatelský avatar
Registrován: ned 28. zář 2008 13:02:11
Příspěvky: 2743
Bydliště: Dreadlands

Morelo12 píše:
Hazi mi to
Kód:
C:\Users\Lukinek\Desktop\Moje pawno vyrobky\Admin Povolani.pwn(43) : error 017: undefined symbol "SCM"
C:\Users\Lukinek\Desktop\Moje pawno vyrobky\Admin Povolani.pwn(45) : error 017: undefined symbol "SCM"


Kód:
Radek 43: SCM(playerid,COLOR_YELLOW,"[POVOLÁNÍ] Zde už jsi zaměstnán");

Kód:
Radek 45:   SCM(playerid, COLOR_YELLOW, "[POVOLÁNÍ] Zaměstnal jsi se jako admins");


daj si hore pod INC

Kód:
#define SCM SendClientMessage


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: ned 01. dub 2012 13:15:09 
Nováček
Nováček
Uživatelský avatar
Registrován: stř 28. bře 2012 8:53:04
Příspěvky: 49

nechápu hned mám chybu u new Job; :D

_________________
ObrázekObrázekObrázekObrázek


Offline
 Profil  
 Předmět příspěvku: Re: [TuT] Povolání přes dialog
PříspěvekNapsal: ned 01. dub 2012 14:07:41 
The Truth
The Truth
Uživatelský avatar
Registrován: úte 25. kvě 2010 7:25:14
Příspěvky: 406

Ano je to tu ;) ae tak každý pochopí jiný tut takže neni od věci když je to víckrát :)
Podle mě je to pěkná práce 9/10 :)

_________________
Obrázek
http://www.foxradio.cz
SA:MP Nick : rEe_
I <3 My Gilr & Drift :P :)


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ů: 14 ] 

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: