Niki 1 Odesláno: 4. Duben, 2014 Share Odesláno: 4. Duben, 2014 Ahoj vedel by mi prosím vás niekto pomôcť s príkazom /var ? COMMAND:var(playerid, params[]) { new ID; new pname[128]; GetPlayerName(ID, pname, sizeof(pname)); new string[128],dovod[128]; if(alevel[playerid] < 1) return SCM(playerid,RED, "[ ! ] Nemáš dostatočné Admin Práva"); { if(sscanf(params,"iz",ID,dovod)) return SCM(playerid, RED, "Použi: /var [ID] [Dôvod]"); if(!IsPlayerConnected(ID)) return SCM(playerid, RED, "Hráč s týmto id neni online"); if(varovanie[playerid] == 2) { format(string,sizeof(string),"Administrátor %s vyhodil hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(ID),dovod); SCMTA(RED, string); varovanie[playerid] +=1; Kick(ID); return 1; } if(varovanie[playerid] == 1) { format(string,sizeof(string),"Administrátor %s napomenul hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(ID),dovod); SCMTA(RED, string); varovanie[playerid] +=1; return 1; } if(varovanie[playerid] == 0) { format(string,sizeof(string),"Administrátor %s napomenul hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(ID),dovod); SCMTA(RED, string); varovanie[playerid] +=1; return 1; } } return 1; } Problém je v tom že napomeniem jedneho hráča 2x a druheho hráča 1x a ono ho to rovno vyhodí Link to comment Share on other sites More sharing options...
0 _NosiK_ 0 Odesláno: 4. Duben, 2014 Share Odesláno: 4. Duben, 2014 Přičítáš to do proměnné admina, nikoli varovaného hráče ;-) Link to comment Share on other sites More sharing options...
0 KuboSK 0 Odesláno: 4. Duben, 2014 Share Odesláno: 4. Duben, 2014 V tom sscanf zmeň ten i na u. A potom podľa tej premennej toho "cieľa" nastav tie premenné Link to comment Share on other sites More sharing options...
0 Niki 1 Odesláno: 5. Duben, 2014 Author Share Odesláno: 5. Duben, 2014 COMMAND:var(playerid, params[]) { new ID; new pname[128]; GetPlayerName(ID, pname, sizeof(pname)); new string[128],dovod[128]; if(alevel[playerid] < 1) return SCM(playerid,RED, "[ ! ] Nemáš dostatočné Admin Práva"); { if(sscanf(params,"u",ID,dovod)) return SCM(playerid, RED, "Použi: /var [ID] [Dôvod]"); if(!IsPlayerConnected(ID)) return SCM(playerid, RED, "Hráč s týmto id neni online"); if(varovanie[playerid] == 2) { format(string,sizeof(string),"Administrátor %s vyhodil hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(ID),dovod); SCMTA(RED, string); varovanie[playerid] +=1; Kick(ID); return 1; } if(varovanie[playerid] == 1) { format(string,sizeof(string),"Administrátor %s napomenul hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(ID),dovod); SCMTA(RED, string); varovanie[playerid] +=1; return 1; } if(varovanie[playerid] == 0) { format(string,sizeof(string),"Administrátor %s napomenul hráča %s [Dôvod: %s]",PlayerName(playerid),PlayerName(ID),dovod); SCMTA(RED, string); varovanie[playerid] +=1; return 1; } } return 1; } A čo ešte ? Link to comment Share on other sites More sharing options...
0 KuboSK 0 Odesláno: 5. Duben, 2014 Share Odesláno: 5. Duben, 2014 Skús: COMMAND:var(playerid, params[]) { new ID, dovod[128]; new string[128]; if(alevel[playerid] < 1) return SCM(playerid,RED, "[ ! ] Nemáš dostatočné Admin Práva"); { if(sscanf(params,"us",ID,dovod)) return SCM(playerid, RED, "Použi: /var [ID] [Dôvod]"); if(!IsPlayerConnected(ID)) return SCM(playerid, RED, "Hráč s týmto id neni online"); new pname[MAX_PLAYER_NAME]; GetPlayerName(ID, pname, sizeof(pname)); if(varovanie[ID] == 2) { format(string,sizeof(string),"Administrátor %s vyhodil hráča %s [Dôvod: %s]",PlayerName(playerid),pname,dovod); SCMTA(RED, string); varovanie[ID] ++; Kick(ID); return 1; } if(varovanie[ID] == 1) { format(string,sizeof(string),"Administrátor %s napomenul hráča %s [Dôvod: %s]",PlayerName(playerid),pname,dovod); SCMTA(RED, string); varovanie[ID] ++; return 1; } if(varovanie[ID] == 0) { format(string,sizeof(string),"Administrátor %s napomenul hráča %s [Dôvod: %s]",PlayerName(playerid),pname,dovod); SCMTA(RED, string); varovanie[ID] ++; return 1; } } return 1; } Link to comment Share on other sites More sharing options...
0 Niki 1 Odesláno: 5. Duben, 2014 Author Share Odesláno: 5. Duben, 2014 KuboSK jde díky moc. Link to comment Share on other sites More sharing options...
0 KuboSK 0 Odesláno: 5. Duben, 2014 Share Odesláno: 5. Duben, 2014 Ak ti to v konzoli serveru píše sscanf warning nahraď tento riadok if(sscanf(params,"us[128]",ID,dovod)) return SendClientMessage(playerid, RED, "Použi: /var [ID] [Dôvod]"); Link to comment Share on other sites More sharing options...
0 _NosiK_ 0 Odesláno: 5. Duben, 2014 Share Odesláno: 5. Duben, 2014 Nechápu význam, proč jí sem napíšeš celý kód.. Já jsem jí řekl, kde má chybu v přičítání napomenutí, pak tu napíše stejný kód akorát změněným sscanf a ty jí tu postneš celý kod.. Tím se opravdu nic nenaučí.. Link to comment Share on other sites More sharing options...
0 Amenadiel 286 Odesláno: 5. Duben, 2014 Share Odesláno: 5. Duben, 2014 ano.... proč to dělat Jednoduše když to jde i složite /*Nekam uplne nahoru mimo public a command.*/ stock GetName(playerid) { new nick[MAX_PLAYER_NAME]; GetPlayerName(playerid,nick,sizeof(nick)); return nick; } CMD:var(playerid, params[]) { new ID; if(alevel[playerid] < 1) return SCM(playerid,RED, "[ ! ] Nemáš dostatočné Admin Práva"); else if(sscanf(params,"us",ID,params)) return SCM(playerid, RED, "Použi: /var [ID] [Dôvod]"); else if(!IsPlayerConnected(ID)) return SCM(playerid, RED, "Hráč s týmto id neni online"); varovanie[ID] ++; if(varovanie[ID] == 3) { new string[128]; format(string,sizeof(string),"Administrátor %s[ID %i] Vyhodil Hráče %s[ID %i] Důvod %s",GetName(playerid),playerid,GetName(ID),ID,params); SCMTA(RED, string); varovanie[ID] = 0; Kick(ID); }else{ new str[128]; format(str,sizeof(str),"Administrátor %s[ID %i] Napomenul Hráče %s[ID %i] Důvod %s %i/3",GetName(playerid),playerid,GetName(ID),ID,params,varovanie[ID]); SCMTA(RED, str); } return 1; } Link to comment Share on other sites More sharing options...
0 Deejva 36 Odesláno: 5. Duben, 2014 Share Odesláno: 5. Duben, 2014 COMMAND:var(playerid, params[]) { new ID, dovod[128]; new string[128]; if(alevel[playerid] < 1) return SCM(playerid,RED, "[ ! ] Nemáš dostatočné Admin Práva"); { if(sscanf(params,"us",ID,dovod)) return SCM(playerid, RED, "Použi: /var [ID] [Dôvod]"); if(!IsPlayerConnected(ID)) return SCM(playerid, RED, "Hráč s týmto id neni online"); new pname[MAX_PLAYER_NAME]; GetPlayerName(ID, pname, sizeof(pname)); varovanie[ID] ++; if(varovanie[ID] >= 3) { format(string,sizeof(string),"Administrátor %s vyhodil hráča %s [Dôvod: %s]",PlayerName(playerid),pname,dovod); SCMTA(RED, string); Kick(ID); return 1; }else{ format(string,sizeof(string),"Administrátor %s napomenul hráča %s [Dôvod: %s]",PlayerName(playerid),pname,dovod); SCMTA(RED, string); return 1; } } return 1; } jednodušeji Link to comment Share on other sites More sharing options...
Dotaz
Niki 1
Ahoj vedel by mi prosím vás niekto pomôcť s príkazom /var ?
Problém je v tom že napomeniem jedneho hráča 2x a druheho hráča 1x a ono ho to rovno vyhodí
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