29.01.2013, 13:34
I have one question. I created dialog which allows you to select team and class, but when I pressing "Select" button with my mouse after spawn it's working, but when I pressing enter to confirm its doesn't working.
Code:
Code:
Код:
public OnPlayerRequestClass(playerid, classid)
{
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_LIST, "Teams", "\nUnited States Of America\nGermany\nRussia\nItaly", "Select", "Exit");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 2)
{
if(response) // If they clicked 'Yes' or pressed enter
{
if(listitem == 0){
gTeam[playerid] = TEAM_USA;
SetPlayerColor(playerid,COLOR_BLUE);
ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, "Classes", "\nSoldier\nSniper\nEngineer\nPilot", "Select", "Exit");
}
if(listitem == 1){
gTeam[playerid] = TEAM_GERMANY;
SetPlayerColor(playerid,COLOR_ORANGE);
ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, "Classes", "\nSoldier\nSniper\nEngineer\nPilot", "Select", "Exit");
}
if(listitem == 2){
gTeam[playerid] = TEAM_RUSSIA;
SetPlayerColor(playerid,COLOR_RED);
ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, "Classes", "\nSoldier\nSniper\nEngineer\nPilot", "Select", "Exit");
}
if(listitem == 3){
gTeam[playerid] = TEAM_ITALY;
SetPlayerColor(playerid,COLOR_YELLOW);
ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, "Classes", "\nSoldier\nSniper\nEngineer\nPilot", "Select", "Exit");
}
}
else // Pressed ESC or clicked cancel
{
SendClientMessage(playerid, COLOR_RED, "You left the server");
Kick(playerid);
}
return 1; // We handled a dialog, so return 1. Just like OnPlayerCommandText.
}
if(dialogid == 3)
{
if(response) // If they clicked 'Yes' or pressed enter
{
if(listitem == 0){
TogglePlayerSpectating(playerid, 0);
SendClientMessage(playerid, COLOR_RED, "Soldier");
SpawnPlayer(playerid);
GivePlayerWeapon(playerid, 12,1000);
}
if(listitem == 1){
SendClientMessage(playerid, COLOR_RED, "Sniper");
SpawnPlayer(playerid);
}
if(listitem == 2){
SendClientMessage(playerid, COLOR_RED, "Engineer");
SpawnPlayer(playerid);
}
if(listitem == 3){
TogglePlayerSpectating(playerid, 0);
SendClientMessage(playerid, COLOR_RED, "Pilot");
SpawnPlayer(playerid);
}
}
else // Pressed ESC or clicked cancel
{
SendClientMessage(playerid, COLOR_RED, "You left the server");
Kick(playerid);
}
return 1; // We handled a dialog, so return 1. Just like OnPlayerCommandText.
}
}

