Stellet 7 Odesláno: 3. Leden, 2015 Share Odesláno: 3. Leden, 2015 Ahoj udělal jsem si že když dám /akceon tak to vypíše texty (co doplním viz. níže) 1. Neukáže to tam jméno. 2. Ukazuje to ten text něják divě. Kód příkazu: dcmd_akceon(playerid, params[]) { if(Player[playerid][AdminLevel]==0) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Nejsi Administrátor !"); else if(Player[playerid][AdminLevel]==1) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Na použití tohoto příkazu potřebuješ Admin Level 1 !"); else if(!strlen(params) || !strlen(params[chrfind(' ',params)+1])) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Použití: /akceon [ AKCE: ] [ VYHRA: ] [ MÍSTO: ]"); else if(strlen(params[chrfind(' ',params)+1])>60) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Zadal jsi moc dlouhý důvod ! Maximálně 60 znaků !"); else { new string[128]; new Name[26]; format(string,128,"Administrátor %s zapnul akci [ AKCE: %s ] [ VYHRA: %s ] [ MISTO: %s ]", Name, params[chrfind(' ',params)+1], params[chrfind(' ',params)+2], params[chrfind(' ',params)+3]); SendClientMessageToAll(COLOR_ADMIN,string); } return 1; } Nevím kde mám chybu, děkuji předem. Link to comment Share on other sites More sharing options...
0 Coles 11 Odesláno: 3. Leden, 2015 Share Odesláno: 3. Leden, 2015 http://wiki.sa-mp.com/wiki/Strtok http://wiki.sa-mp.com/wiki/GetPlayerName Link to comment Share on other sites More sharing options...
0 Stellet 7 Odesláno: 3. Leden, 2015 Author Share Odesláno: 3. Leden, 2015 Furt nechápu.. Link to comment Share on other sites More sharing options...
0 Mattsy 29 Odesláno: 3. Leden, 2015 Share Odesláno: 3. Leden, 2015 dcmd vie použiť len dvojparametrové príkazy napr /ban id dovod...ak chceš viac parametrové musíš použiť sscanf alebo dokonca neviem či nie len jednoparametrové nie sú pre dcmd alebo použi zcmd tam to tuším ide Link to comment Share on other sites More sharing options...
0 ATomas 291 Odesláno: 3. Leden, 2015 Share Odesláno: 3. Leden, 2015 dcmd vie použiť len dvojparametrové príkazy napr /ban id dovod...ak chceš viac parametrové musíš použiť sscanf alebo dokonca neviem či nie len jednoparametrové nie sú pre dcmd alebo použi zcmd tam to tuším ide Tak podobnou volovinu jsem dlouho neslysel Ale je pravda ze hodne lidi neumi delat se stringem dcmd_akceon(playerid,params[]) { new pos = chrfind(' ',params)+1; new pos2 = chrfind(' ',params,pos)+1; new vyhra = strval(params); new misto = strval(params[pos]); if(Player[playerid][AdminLevel]==0) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Nejsi Administrátor !"); else if(Player[playerid][AdminLevel]==1) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Na použití tohoto příkazu potřebuješ Admin Level 1 !"); else if(!!params[0] || pos == 0 || pos2 == 0) return SendClientMessage(playerid,COLOR_WARNING,"[ ! ] {FFFFFF}Použití: /akceon [ VYHRA: ] [ MÍSTO: ] [ AKCE: ]"); else { new string[144]; new Name[26]; GetPlayerName(playerid,Name,sizeof(Name)); format(string,sizeof(string),"Administrátor %s zapnul akci [ VYHRA: %d ] [ MISTO: %d ] [ AKCE: %s ]", Name, vyhra, misto, params[pos2]); SendClientMessageToAll(COLOR_ADMIN,string); } return 1; } Link to comment Share on other sites More sharing options...
0 Mattsy 29 Odesláno: 3. Leden, 2015 Share Odesláno: 3. Leden, 2015 ATomas...no ja som to napísal preto lebo ešte na 022 keď som začínal s pawnom tak som to chcel tiež urobiť a neviem kto mi vtedy povedal že to ide len cez sscanf, tak som vždy robil cez to, ani som nejako nebádal po tom či to ide inak a pozerám že som spravil chybu...tak sa ospravedlňujem teda za blbé informácie Link to comment Share on other sites More sharing options...
0 Stellet 7 Odesláno: 4. Leden, 2015 Author Share Odesláno: 4. Leden, 2015 Atomas, na server jsem to dal (do gamemodu) ale když dám /akceon 1.000.000 /port Let Smrti (jen test) Odešlu to a napíše mi to: Použití: /akceon [ VYHRA: ] [ MÍSTO: ] [ AKCE: ] a furt do kola.. (to furt do kola, pokud dávám příkaz s těma informacema) Link to comment Share on other sites More sharing options...
0 w.endelin 15 Odesláno: 4. Leden, 2015 Share Odesláno: 4. Leden, 2015 Atomas, na server jsem to dal (do gamemodu) ale když dám /akceon 1.000.000 /port Let Smrti (jen test) Odešlu to a napíše mi to: Použití: /akceon [ VYHRA: ] [ MÍSTO: ] [ AKCE: ] a furt do kola.. (to furt do kola, pokud dávám příkaz s těma informacema) Všiml sis, kolik ten příkaz má paramterů? Máš tam Výhra, Místo a Akce, ty zadáváš /akceon 1.000.0001 /port2 Let3 Smrti4 - nekoumal jsem ten code, jen jsem si tohohle všimnul.. Link to comment Share on other sites More sharing options...
0 Amenadiel 286 Odesláno: 4. Leden, 2015 Share Odesláno: 4. Leden, 2015 Všiml sis, kolik ten příkaz má paramterů? Máš tam Výhra, Místo a Akce, ty zadáváš /akceon 1.000.0001 /port2 Let3 Smrti4 - nekoumal jsem ten code, jen jsem si tohohle všimnul.. ano. toto se dá vyřešit přes sscanf a stačí ti tam pouze 1 parametr Clooney. Link to comment Share on other sites More sharing options...
0 w.endelin 15 Odesláno: 4. Leden, 2015 Share Odesláno: 4. Leden, 2015 ano. toto se dá vyřešit přes sscanf a stačí ti tam pouze 1 parametr Clooney. Ale jemu to píše, že to zadal špatně (viz. nahoře) takže tam dal něco blbě... Nebo snad ne? Link to comment Share on other sites More sharing options...
0 Amenadiel 286 Odesláno: 4. Leden, 2015 Share Odesláno: 4. Leden, 2015 Ale jemu to píše, že to zadal špatně (viz. nahoře) takže tam dal něco blbě... Nebo snad ne? dá se to na jeden. ale ten blbec si to chtěl takle rozdělit takže musí dělat u každého slova toto Vyhra_Kokos_Babka Link to comment Share on other sites More sharing options...
0 Stellet 7 Odesláno: 6. Leden, 2015 Author Share Odesláno: 6. Leden, 2015 Jo a jak se to udělá na jeden ? Link to comment Share on other sites More sharing options...
0 Globální moderátor Hip 191 Odesláno: 6. Leden, 2015 Globální moderátor Share Odesláno: 6. Leden, 2015 že to bude poslední parametr tudíš tam dáš zbytek příkazu co zadal a nehledá to mezeru jako mezi parametrama předtím Link to comment Share on other sites More sharing options...
Dotaz
Stellet 7
Ahoj udělal jsem si že když dám /akceon tak to vypíše texty (co doplním viz. níže)
1. Neukáže to tam jméno.
2. Ukazuje to ten text něják divě.
Kód příkazu:
Nevím kde mám chybu, děkuji předem.
Link to comment
Share on other sites
12 odpovědí na tuto otázku
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now