public OnPlayerSelectedMenuRow(playerid, row)
{
new Menu:CurrentMenu = GetPlayerMenu(playerid);
new string[128];
if(CurrentMenu == languageMenu)
{
switch(row)
{
case 0: LanguageID[playerid] = 0;
case 1: LanguageID[playerid] = 1;
}
TogglePlayerControllable(playerid, 0);
}
if(LanguageID[playerid] == 0)
{
tkUSER[playerid][TKU_PlayerLanguage] = 0;
format(string, sizeof(string),"Vocк selecionou a linguagem: %s [PT]", tkPlayerName(playerid), LanguageID);
SendClientMessage(playerid, -1, string);
}
else if(LanguageID[playerid] == 1)
{
tkUSER[playerid][TKU_PlayerLanguage] = 1;
format(string, sizeof(string),"Vocк selecionou a linguagem: %s [EN]", tkPlayerName(playerid), LanguageID);
SendClientMessage(playerid, -1, string);
}
new langkey = DB::RetrieveKey(gGlobal[TKT_MultiLanguage], "username", tkPlayerName(playerid));
DB::SetIntEntry(gGlobal[TKT_MultiLanguage], langkey, "player language", tkUSER[playerid][TKU_PlayerLanguage]);
SavePlayerLanguage(playerid);
return 1;
}
public OnPlayerExitedMenu(playerid)
{
new Menu:CurrentMenu = GetPlayerMenu(playerid);
if(CurrentMenu == languageMenu)
{
ShowMenuForPlayer(languageMenu, playerid);
}
TogglePlayerControllable(playerid, 1);
SavePlayerLanguage(playerid);
}
public OnPlayerSelectedMenuRow(playerid, row)
{
new Menu:CurrentMenu = GetPlayerMenu(playerid);
new string[128], lStr[15];
if(CurrentMenu == languageMenu)
{
LanguageID[playerid] = tkUSER[playerid][TKU_PlayerLanguage] = row;
TogglePlayerControllable(playerid, 0);
if(row == 0) strcat(lStr, "Portuguкs [PT]");
else strcat(lStr, "Inglкs [ENG]");
format(string, sizeof(string),"Vocк selecionou a linguagem: %s", lStr);
SendClientMessage(playerid, -1, string);
new langkey = DB::RetrieveKey(gGlobal[TKT_MultiLanguage], "username", tkPlayerName(playerid));
DB::SetIntEntry(gGlobal[TKT_MultiLanguage], langkey, "player language", tkUSER[playerid][TKU_PlayerLanguage]);
SavePlayerLanguage(playerid);
}
return 1;
}
Talvez dessa forma possa funcionar, tente.
PHP код:
Arrumei algumas coisas no seu cуdigo. O que eu fiz foi verificar o valor da variбvel e formatar uma string com o tipo de linguagem, no caso se a variбvel for 0 formata a string para Portuguкs [PT], caso for falso irб setar a variбvel Inglкs [ENG]. |
gadminv2.pwn(2262) : error 033: array must be indexed (variable "LanguageID") |
format(string, sizeof(string),"Vocк selecionou a linguagem: %s", tkPlayerName(playerid), LanguageID == 0 ? strcat(lStr, "Portuguкs [PT]") : strcat(lStr, "Inglкs [ENG]"));
Vlw pela organizaзгo kkkkkk
mas... sempre tem um mas... ![]() PHP код:
|
//Code original:
DB::SetStringEntry(gGlobal[TKT_MultiLanguage], langkey, "player language", tkUSER[playerid][TKU_PlayerLanguage]);
//Code modificado
DB::SetStringEntry(gGlobal[TKT_MultiLanguage], langkey, "player language", lStr);
new Menu:CurrentMenu = GetPlayerMenu(playerid);
new string[128], lStr[15];
if(CurrentMenu == languageMenu)
{
LanguageID[playerid] = tkUSER[playerid][TKU_PlayerLanguage] = row;
TogglePlayerControllable(playerid, 0);
if(row == 0) strcat(lStr, "Portuguкs [PT]");
if(row == 1) strcat(lStr, "Inglкs [EN]");
if(row == 2) strcat(lStr, "Espanhol [ES]");
format(string, sizeof(string),"Vocк selecionou a linguagem: %s", lStr);
SendClientMessage(playerid, -1, string);
new langkey = DB::RetrieveKey(gGlobal[TKT_MultiLanguage], "username", tkPlayerName(playerid));
DB::SetStringEntry(gGlobal[TKT_MultiLanguage], langkey, "player language", tkUSER[playerid][TKU_PlayerLanguage]);
SavePlayerLanguage(playerid);
}
@TESTANDO
@EDIT Obrigado cara, me salvou = + rep @TOPIC Modifiquei a String da linguagem, a outra bugou kkkkkk: PHP код:
|
@TESTANDO
@EDIT Obrigado cara, me salvou = + rep @TOPIC Modifiquei a String da linguagem, a outra bugou kkkkkk: PHP код:
OBS: caso eu queia add mais linguagens, me corrija se estiver errado: Estou correto? PHP код:
|
switch(row) {
case 0: strcat(lStr, "Portuguкs [PT]");
case 1: strcat(lStr, "Inglкs [ENG]");
case 2: strcat(lStr, "Italiano [ITA]");
case 3: strcat(lStr, "Francкs [FRA]");
}
if(row == 0) strcat(lStr, "Portuguкs [PT]");
else if(row == 1) strcat(lStr, "Inglкs [ENG]");
else if(row == 2) strcat(lStr, "Italiano [ITA]");
else if(row == 3) strcat(lStr, "Francкs [FRA]");
new Menu:CurrentMenu = GetPlayerMenu(playerid);
new string[128], lStr[15];
if(CurrentMenu == languageMenu)
{
LanguageID[playerid] = tkUSER[playerid][TKU_PlayerLanguage] = row;
TogglePlayerControllable(playerid, 0);
if(row == 0) strcat(lStr, "Portuguкs [PT]");
else if(row == 1) strcat(lStr, "Inglкs [EN]");
else if(row == 2) strcat(lStr, "Espanhol [ES]");
format(string, sizeof(string),"Vocк selecionou a linguagem: %s", lStr);
SendClientMessage(playerid, -1, string);
new langkey = DB::RetrieveKey(gGlobal[TKT_MultiLanguage], "username", tkPlayerName(playerid));
DB::SetStringEntry(gGlobal[TKT_MultiLanguage], langkey, "player language", tkUSER[playerid][TKU_PlayerLanguage]);
SavePlayerLanguage(playerid);
}
DB::GetStringEntry(gGlobal[TKT_MultiLanguage], langkey, "player language", lStr);