TeeZee 0 Odesláno: 17. Červen, 2017 Share Odesláno: 17. Červen, 2017 Popis problému: Ahojte, všetko mi funguje, ak sa napojím na server, vyskoči mi registrácia, potom mi vyskoči tento dialog. Všetko, proste ide, ako má, no ale keď umrem, tak sa mi to všetko zruši. Nedá sa mi zbraň, nedá sa mi skin ani nič. Neviete, (teda určite viete) kde je chyba ? Je to bez errorov a warningov. Chyby/varování kompilátoru a při běhu: Žiadne chyby ani warningy Kód: [spoiler][code=auto:0] new see[MAX_PLAYERS]; enum GANGZ { GROVE = 1, BALLAS = 2 } new gang[MAX_PLAYERS][GANGZ]; public OnPlayerSpawn(playerid) { if (see[playerid] != 1) return ShowPlayerDialog(playerid,DIALOG_GANGS,DIALOG_STYLE_LIST,"Vyber si Gang, za ktorý budeš hrať","Grove\nBallas","",""); return 1; } if(dialogid == DIALOG_GANGS) { if(response == 1) { if(listitem == 0) { gang[playerid][GROVE] = 1; see[playerid] = 1; // Premená na začiatku SetPlayerTeam(playerid,1); SetPlayerColor(playerid, 0x003300FF); SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 999); SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 999); SetPlayerSkin(playerid,106); SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,100); GivePlayerWeapon(playerid,22,100); // 9mm GivePlayerWeapon(playerid,32,250); // TEC-9 GivePlayerWeapon(playerid,26,50); // Sawny GivePlayerWeapon(playerid,46,1); // Padák GivePlayerWeapon(playerid,4,1); // Nôž } else if(listitem == 1) { gang[playerid][BALLAS] = 1; see[playerid] = 1; // Premená na začiatku SetPlayerTeam(playerid,2); SetPlayerColor(playerid, 0x660099FF); SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 999); SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 999); SetPlayerSkin(playerid,102); SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,100); GivePlayerWeapon(playerid,22,100); // 9mm GivePlayerWeapon(playerid,28,250); // UZI GivePlayerWeapon(playerid,26,50); // Sawny GivePlayerWeapon(playerid,46,1); // Padák GivePlayerWeapon(playerid,4,1); // Nôž } } }[/code] [/spoiler] Dodatečné poznámky: -- Link to comment Share on other sites More sharing options...
0 Lukasz 336 Odesláno: 17. Červen, 2017 Share Odesláno: 17. Červen, 2017 Vždyť ti to funguje tak, jak to máš napsané. Proč bys měl mít jen tak při spawnutí zbraně? Link to comment Share on other sites More sharing options...
0 TeeZee 0 Odesláno: 17. Červen, 2017 Author Share Odesláno: 17. Červen, 2017 No lebo, keď hráš za grove napr. a umreš, nech sa ti znovu aktivuje grove. Ale takto nemáš nič Link to comment Share on other sites More sharing options...
0 Globální moderátor HighPrint 177 Odesláno: 17. Červen, 2017 Globální moderátor Share Odesláno: 17. Červen, 2017 Tak si musíš uvědomit co tam děláš: public OnPlayerSpawn(playerid){if (see[playerid] != 1) return ShowPlayerDialog(playerid,DIALOG_GANGS,DIALOG_STYLE_LIST,"Vyber si Gang, za ktorý budeš hrať","Grove\nBallas","","");return 1;} a pak v dialogu: see[playerid] = 1; // Premená na začiatku Víš co to dělá? Link to comment Share on other sites More sharing options...
0 TeeZee 0 Odesláno: 17. Červen, 2017 Author Share Odesláno: 17. Červen, 2017 Ak je see 1 dialog sa už neukáže. No a ja chcem, že keď si vyberem napr. Ballas a umrem, aby mi nevyskočila tabulka, ale aby som dostal rovno tie veci. Link to comment Share on other sites More sharing options...
0 Lukasz 336 Odesláno: 17. Červen, 2017 Share Odesláno: 17. Červen, 2017 Jenže ty hráči dáváš zbraně při vybraní položky z dialogu. Při dalším spawnu se mu už dialog nezobrazí, a proto si nemůže vybrat položku a dostat zbraně. Link to comment Share on other sites More sharing options...
0 Globální moderátor HighPrint 177 Odesláno: 17. Červen, 2017 Globální moderátor Share Odesláno: 17. Červen, 2017 No tak musíš udělat detekci při spawnu v jakém gangu je, a to je přesně důvod proč jsem ti poradil, aby si gang rozlišoval v jedné proměnné... teď budeš muset zjišťovat jestli gang[playerid][bALLAS] je jednička nebo GROVE Link to comment Share on other sites More sharing options...
0 TeeZee 0 Odesláno: 17. Červen, 2017 Author Share Odesláno: 17. Červen, 2017 Možno to robím moc komplikovane, ale nie som až taký dobrý v pawne. Jednoznačne takto mi to ide -> public OnPlayerSpawn(playerid) { if (see[playerid] != 1) return ShowPlayerDialog(playerid,DIALOG_GANGS,DIALOG_STYLE_LIST,"Vyber si Gang, za ktorý budeš hrať","Grove\nBallas","",""); if (gang[playerid][GROVE] == 1) return ShowPlayerDialog(playerid,DIALOG_GANGS1,DIALOG_STYLE_LIST,"Klikni na svôj gang","Grove","",""); if (gang[playerid][BALLAS] == 1) return ShowPlayerDialog(playerid,DIALOG_GANGS2,DIALOG_STYLE_LIST,"Klikni na Svôj Gang","Ballas","",""); return 1; } if(dialogid == DIALOG_GANGS1) { if(response == 1) { if(listitem == 0) { gang[playerid][GROVE] = 1; see[playerid] = 1; // Premená na začiatku SetPlayerTeam(playerid,1); SetPlayerColor(playerid, 0x003300FF); SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 999); SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 999); SetPlayerSkin(playerid,106); SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,100); GivePlayerWeapon(playerid,22,100); // 9mm GivePlayerWeapon(playerid,32,250); // TEC-9 GivePlayerWeapon(playerid,26,50); // Sawny GivePlayerWeapon(playerid,46,1); // Padák GivePlayerWeapon(playerid,4,1); // Nôž } } } if(dialogid == DIALOG_GANGS2) { if(response == 1) { if(listitem == 0) { gang[playerid][BALLAS] = 1; see[playerid] = 1; // Premená na začiatku SetPlayerTeam(playerid,2); SetPlayerColor(playerid, 0x660099FF); SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 999); SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 999); SetPlayerSkin(playerid,102); SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,100); GivePlayerWeapon(playerid,22,100); // 9mm GivePlayerWeapon(playerid,28,250); // UZI GivePlayerWeapon(playerid,26,50); // Sawny GivePlayerWeapon(playerid,46,1); // Padák GivePlayerWeapon(playerid,4,1); // Nôž } } } Link to comment Share on other sites More sharing options...
0 Paulee 16 Odesláno: 17. Červen, 2017 Share Odesláno: 17. Červen, 2017 Možno to robím moc komplikovane, ale nie som až taký dobrý v pawne. Jednoznačne takto mi to ide -> public OnPlayerSpawn(playerid) { if (see[playerid] != 1) return ShowPlayerDialog(playerid,DIALOG_GANGS,DIALOG_STYLE_LIST,"Vyber si Gang, za ktorý budeš hrať","Grove\nBallas","",""); if (gang[playerid][GROVE] == 1) return ShowPlayerDialog(playerid,DIALOG_GANGS1,DIALOG_STYLE_LIST,"Klikni na svôj gang","Grove","",""); if (gang[playerid][BALLAS] == 1) return ShowPlayerDialog(playerid,DIALOG_GANGS2,DIALOG_STYLE_LIST,"Klikni na Svôj Gang","Ballas","",""); return 1; } if(dialogid == DIALOG_GANGS1) { if(response == 1) { if(listitem == 0) { gang[playerid][GROVE] = 1; see[playerid] = 1; // Premená na začiatku SetPlayerTeam(playerid,1); SetPlayerColor(playerid, 0x003300FF); SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 999); SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 999); SetPlayerSkin(playerid,106); SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,100); GivePlayerWeapon(playerid,22,100); // 9mm GivePlayerWeapon(playerid,32,250); // TEC-9 GivePlayerWeapon(playerid,26,50); // Sawny GivePlayerWeapon(playerid,46,1); // Padák GivePlayerWeapon(playerid,4,1); // Nôž } } } if(dialogid == DIALOG_GANGS2) { if(response == 1) { if(listitem == 0) { gang[playerid][BALLAS] = 1; see[playerid] = 1; // Premená na začiatku SetPlayerTeam(playerid,2); SetPlayerColor(playerid, 0x660099FF); SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 999); SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 999); SetPlayerSkin(playerid,102); SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,100); GivePlayerWeapon(playerid,22,100); // 9mm GivePlayerWeapon(playerid,28,250); // UZI GivePlayerWeapon(playerid,26,50); // Sawny GivePlayerWeapon(playerid,46,1); // Padák GivePlayerWeapon(playerid,4,1); // Nôž } } } Jako fungovat ti to bude, ale nepříjde ti divný, aby si hráč vždy když se spawne musel něco vybírat v tabulce? To je celkem blbost. Stačí tam hodit podmínku, která ti to bude kontrolovat a rozdělovat ty zbraně podle gangu. Link to comment Share on other sites More sharing options...
0 TeeZee 0 Odesláno: 18. Červen, 2017 Author Share Odesláno: 18. Červen, 2017 Tak ako príde, akú podmienku tam mám dať ? Link to comment Share on other sites More sharing options...
Dotaz
TeeZee 0
Popis problému:
Ahojte, všetko mi funguje, ak sa napojím na server, vyskoči mi registrácia, potom mi vyskoči tento dialog.
Všetko, proste ide, ako má, no ale keď umrem, tak sa mi to všetko zruši. Nedá sa mi zbraň, nedá sa mi skin ani nič.
Neviete, (teda určite viete) kde je chyba ?
Je to bez errorov a warningov.
Chyby/varování kompilátoru a při běhu:
Žiadne chyby ani warningy
Kód:
Dodatečné poznámky:
--
Link to comment
Share on other sites
9 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