02.01.2014, 17:22
Eh, the USA Class selection dialog works perfect, but the RS(Russian Spetsnaz) isn't working so well... Actually it isn't working at all!
Video of the explanation
http://www.youtube.com/watch?v=L_wCw...ature=*********
Code:
Any idea what's wrong with the Russia Spetsnaz dialog?D:
Video again (If needed)
http://www.youtube.com/watch?v=L_wCw...ature=*********
Video of the explanation
http://www.youtube.com/watch?v=L_wCw...ature=*********
Code:
pawn Код:
#define DIALOG_CLASS1 200
#define DIALOG_CLASS2 201
pawn Код:
public OnPlayerSpawn(playerid)
{
if(gTeam[playerid] == RussianSpetsnaz)
{
SetPlayerColor(playerid, COLOR_RED);
SetPlayerHealth(playerid, 99);
SetPlayerArmour(playerid, 50);
new RSrand = random(sizeof(RSSpawns));
SetPlayerPos(playerid, RSSpawns[RSrand][0], RSSpawns[RSrand][1], RSSpawns[RSrand][2]);
SetPlayerFacingAngle(playerid, RSSpawns[RSrand][3]);
if(GetPlayerScore(playerid) <= 149)
{
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
}
else if(GetPlayerScore(playerid) <= 299)
{
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic\nSniper - 300 score\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
}
else if(GetPlayerScore(playerid) <= 549)
{
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic\nSniper\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
}
else if(GetPlayerScore(playerid) >= 550)
{
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic\nSniper\nGunner\nEngineer", "Select", "Close");
}
}
if(gTeam[playerid] == USArmy)
{
SetPlayerColor(playerid, US_COLOR);
SetPlayerHealth(playerid, 99);
SetPlayerArmour(playerid, 50);
new USrand = random(sizeof(RSSpawns));
SetPlayerPos(playerid, USSpawns[USrand][0], USSpawns[USrand][1], USSpawns[USrand][2]);
SetPlayerFacingAngle(playerid, USSpawns[USrand][2]);
if(GetPlayerScore(playerid) <= 149)
{
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
}
else if(GetPlayerScore(playerid) <= 299)
{
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic\nSniper - 300 score\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
}
else if(GetPlayerScore(playerid) <= 549)
{
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic\nSniper\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
}
else if(GetPlayerScore(playerid) >= 550)
{
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic\nSniper\nSupporter\nEngineer", "Select", "Close");
}
}
//Rest of my codes!
pawn Код:
//Rest of my codes!
case DIALOG_CLASS1: //Russian Spetsnaz Classes
{
if( !response ) ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
else
{
switch( listitem )
{
case 0:
{
GivePlayerWeapon(playerid, 24, 707);
GivePlayerWeapon(playerid, 16, 1);
GivePlayerWeapon(playerid, 27, 500);
GivePlayerWeapon(playerid, 31, 860);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Assault class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: None");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
case 1:
{
if(GetPlayerScore(playerid) <= 149)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 150 score to use the Medic class!");
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 22, 530);
GivePlayerWeapon(playerid, 25, 500);
GivePlayerWeapon(playerid, 29, 760);
GivePlayerWeapon(playerid, 18, 1);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Medic class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: /heal command");
Class_Chosen{ playerid } = true;
Medic{ playerid } = true;
}
}
case 2:
{
if(GetPlayerScore(playerid) <= 299)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 300 score to use the Sniper class!");
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 23, 530);
GivePlayerWeapon(playerid, 16, 3);
GivePlayerWeapon(playerid, 4, 1);
GivePlayerWeapon(playerid, 29, 560);
GivePlayerWeapon(playerid, 34, 350);
SetPlayerColor(playerid, COLOR_INVISIBLE);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Sniper class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: Invisible on the mini-map");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
}
case 3:
{
if(GetPlayerScore(playerid) <= 549)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 550 score to use the Gunner class!");
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 17, 5);
GivePlayerWeapon(playerid, 24, 507);
GivePlayerWeapon(playerid, 30, 700);
GivePlayerWeapon(playerid, 33, 50);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Gunner class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: /armour command");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
}
case 4:
{
if(GetPlayerScore(playerid) <= 549)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 550 score to use the Engineer class!");
ShowPlayerDialog(playerid, DIALOG_CLASS1, DIALOG_STYLE_LIST, "Russian Spetsnaz Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nGunner - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 16, 5);
GivePlayerWeapon(playerid, 24, 367);
GivePlayerWeapon(playerid, 27, 517);
GivePlayerWeapon(playerid, 30, 560);
GivePlayerWeapon(playerid, 35, 3);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Engineer class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: /fix and /repair");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
}
}
}
}
case DIALOG_CLASS2: //U.S Army Classes
{
if( !response ) ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
else
{
switch( listitem )
{
case 0:
{
GivePlayerWeapon(playerid, 24, 707);
GivePlayerWeapon(playerid, 16, 1);
GivePlayerWeapon(playerid, 27, 500);
GivePlayerWeapon(playerid, 31, 860);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Assault class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: None");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
case 1:
{
if(GetPlayerScore(playerid) <= 149)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 150 score to use the Medic class!");
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 22, 530);
GivePlayerWeapon(playerid, 25, 500);
GivePlayerWeapon(playerid, 29, 760);
GivePlayerWeapon(playerid, 17, 2);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Medic class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: /heal command");
Class_Chosen{ playerid } = true;
Medic{ playerid } = true;
}
}
case 2:
{
if(GetPlayerScore(playerid) <= 299)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 300 score to use the Sniper class!");
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 23, 530);
GivePlayerWeapon(playerid, 16, 3);
GivePlayerWeapon(playerid, 4, 1);
GivePlayerWeapon(playerid, 29, 560);
GivePlayerWeapon(playerid, 34, 350);
SetPlayerColor(playerid, COLOR_INVISIBLE);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Sniper class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: Invisible on the mini-map");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
}
case 3:
{
if(GetPlayerScore(playerid) <= 549)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 550 score to use the Supporer class!");
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 16, 2);
GivePlayerWeapon(playerid, 24, 507);
GivePlayerWeapon(playerid, 25, 50);
GivePlayerWeapon(playerid, 31, 700);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Supporter class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: /armour command");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
}
case 4:
{
if(GetPlayerScore(playerid) <= 549)
{
SendClientMessage(playerid, COLOR_RED, "[CLASS] - You need 550 score to use the Engineer class!");
ShowPlayerDialog(playerid, DIALOG_CLASS2, DIALOG_STYLE_LIST, "U.S Army Classes", "Assault\nMedic - 150 score\nSniper - 300 score\nSupporter - 550 score\nEngineer - 550 score", "Select", "Close");
}
else
{
GivePlayerWeapon(playerid, 16, 3);
GivePlayerWeapon(playerid, 24, 367);
GivePlayerWeapon(playerid, 27, 517);
GivePlayerWeapon(playerid, 31, 560);
GivePlayerWeapon(playerid, 36, 4);
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - You've chosen the Engineer class");
SendClientMessage(playerid, COLOR_GREEN, "[CLASS] - Bonus: /fix and /repair");
Class_Chosen{ playerid } = true;
Medic{ playerid } = false;
}
}
}
}
}
}
return 1;
}
Video again (If needed)
http://www.youtube.com/watch?v=L_wCw...ature=*********