Guyy 14 Odesláno: 24. Květen, 2016 Share Odesláno: 24. Květen, 2016 Ahoj Napadlo ma, urobiť ukoly, ktorými si hráč zarobý a získa nejakú Odmenu. Jak som to urobil tak na servere to nešlo jak som to chcel, Prosím opravte mi Cod Ďakujem [ ! ] Na YSI som prešiel kvôli rýchlosti, a paramu "help" YCMD:ukoly(playerid, params[], help) { if(help) { SendClientMessage(playerid, -1, ""r"[ "SC"Help "r"] "w"Ukoly ktoré vás prevedú Serverom."); } else { if(Levels[playerid][pLevel] == 0) { SendClientMessage(playerid, 0xFF0000AA, ""r"[ "SC"Ukoly "r"] "w"Použi príkaz /kill."); if(PlayerInfo[playerid][pDeaths] >= 1) return Levels[playerid][pLevel] += 1; } return 1; } Link to comment Share on other sites More sharing options...
0 Scydo 397 Odesláno: 24. Květen, 2016 Share Odesláno: 24. Květen, 2016 ~> Když s tím helpem neumíš pracovat, tak proč sis ho vybral? Dávat mu else je zbytečné. Je jasné, že v případě, že se to help nesplní, začne se plnit zbytek kódu... to stejné u jiný příkazů, kde furt přidáváte else-if, else-if, else-if, else. ~> A aby to nebylo málo, tak musíš u toho helpu vracet nějakou fci, jinak to bude pokračovat a bude to brát jako parametr. YCMD:ukoly(playerid, params[], help){ if(help) return SendClientMessage(playerid, -1, ""r"[ "SC"Help "r"] "w"Ukoly ktoré vás prevedú Serverom."); if (!Levels[playerid][pLevel]) { ~> Zbytek kódu za tebe dělat nebudu... nejsme služky. Jinak, pokud jsou tvoje znalosti na tak nízké úrovni, že neumíš pořádně pracovat s podmínkami, tak to raději nepoužívej YSI. Je tam dost includů, které bez pokročilé znalosti teorie prostě nepochopíš. Link to comment Share on other sites More sharing options...
0 Guyy 14 Odesláno: 24. Květen, 2016 Author Share Odesláno: 24. Květen, 2016 Dík, ale stále píše len tú prvú správu a to čo je v: if(PlayerInfo[playerid][pDeaths] >= 1) { Levels[playerid][pLevel] += 1; PlayerInfo[playerid][pDeaths] = 0; } Tak nejde Nepridá Level ani nenastaví Umrtia na 0 Link to comment Share on other sites More sharing options...
0 Scydo 397 Odesláno: 24. Květen, 2016 Share Odesláno: 24. Květen, 2016 ~> Tak logicky.... nemůže přes tu podmínku. Link to comment Share on other sites More sharing options...
0 Lukasz 336 Odesláno: 24. Květen, 2016 Share Odesláno: 24. Květen, 2016 Tak to teda moment. Právě to else tam ničemu nevadí a má ho tam použité správně. Kdyby právě vracel nějakou hodnotu po splnění první podmínky, pak je tam to else zbytečné, ale v jeho případě není. V původním kódu ti chybí uzavření jednoho bloku (právě u toho else) Link to comment Share on other sites More sharing options...
0 pepcaarn 1 Odesláno: 24. Květen, 2016 Share Odesláno: 24. Květen, 2016 Sluzky nejsme ale tento clovek aspon pozadal o pomoc slusne. Nikdo te snad nenuti sem prspivat. A poznamka i to else if se mzuze pouzivat to je na autorovy. YCMD:ukoly(playerid, params[], help) { if(help) return SendClientMessage(playerid, -1, ""r"[ "SC"Help "r"] "w"Ukoly ktoré vás prevedú Serverom."); switch(Levels[playerid][pLevel]) { case 0: SendClientMessage(playerid, 0xFF0000AA, ""r"[ "SC"Ukoly "r"] "w"Použi príkaz /kill."); case 1: // dalsi ukol case 2: // dalsi ukol } return 1; } YCMD:kill(playerid, params[], help) { if(Levels[playerid][pLevel] == 0) Levels[playerid][pLevel]++; // Pokud napise /kill a je na levelu 0 nastavime dalsi level. return SetPlayerHealth(playerid, 0); // Zabijeme hrace. } Link to comment Share on other sites More sharing options...
0 Scydo 397 Odesláno: 24. Květen, 2016 Share Odesláno: 24. Květen, 2016 Sluzky nejsme ale tento clovek aspon pozadal o pomoc slusne. Nikdo te snad nenuti sem prspivat. Tak pardón, ale už jen z těch prvních vět: Prosím opravte mi Cod Ďakujem si spíše představuji líné zoufalství, abychom to udělali za něj(což by tady nebylo po prvé), protože jemu se nechce nic vyhledávat. Zabralo by to moc času a energie, nebo to nemůže google na jeho počítači najít... že ano . A poznamka i to else if se mzuze pouzivat to je na autorovy. Dávat mu else je zbytečné. Zbytečné ≠ Právě jsi udělal největší chybu v životě programování. A jenom rejpnu trochu: Když už používáš YSI, tak můžeš z ní využít y_colors / y_colours, a nemusíš zbytečně.. opakuji ZBYTEČNĚ přidávat preprocesory. Zkrátka si ušetříš práci. Link to comment Share on other sites More sharing options...
0 Guyy 14 Odesláno: 25. Květen, 2016 Author Share Odesláno: 25. Květen, 2016 (upraveno) Zabralo by to moc času a energie, nebo to nemůže google na jeho počítači najít... že ano . Ano Sluzky nejsme ale tento clovek aspon pozadal o pomoc slusne. Nikdo te snad nenuti sem prspivat. A poznamka i to else if se mzuze pouzivat to je na autorovy. YCMD:ukoly(playerid, params[], help) { if(help) return SendClientMessage(playerid, -1, ""r"[ "SC"Help "r"] "w"Ukoly ktoré vás prevedú Serverom."); switch(Levels[playerid][pLevel]) { case 0: SendClientMessage(playerid, 0xFF0000AA, ""r"[ "SC"Ukoly "r"] "w"Použi príkaz /kill."); case 1: // dalsi ukol case 2: // dalsi ukol } return 1; } YCMD:kill(playerid, params[], help) { if(Levels[playerid][pLevel] == 0) Levels[playerid][pLevel]++; // Pokud napise /kill a je na levelu 0 nastavime dalsi level. return SetPlayerHealth(playerid, 0); // Zabijeme hrace. } Dík Edited 25. Květen, 2016 by Carlosoo Link to comment Share on other sites More sharing options...
Dotaz
Guyy 14
Ahoj
Napadlo ma, urobiť ukoly, ktorými si hráč zarobý a získa nejakú Odmenu. Jak som to urobil tak na servere to nešlo jak som to chcel, Prosím opravte mi Cod Ďakujem
[ ! ] Na YSI som prešiel kvôli rýchlosti, a paramu "help"
Link to comment
Share on other sites
7 odpovědí na tuto otázku
Recommended Posts