14.10.2015, 15:01
Hello..I was add a DMV quiz and i think it's wrong..When i compile the gamemode it's giving me this error "Pawn compiler stop working"..
When the player use /getlicense he have some options..when he press Driver License i want to give him the quiz..i maked the quiz but can't compile..what is wrong there ?
Sorry for my english..
Thank you very much !
Код:
CMD:getlicense(playerid, params[]) { if (!IsPlayerInRangeOfPoint(playerid,2.0,366.54, 159.09, 1008.38)) { return 1; } if (PlayerInfo[playerid][pWantedLevel] > 0) return SendClientMessageEx(playerid, COLOR_LIGHTRED, "You have an outstanding arrest warrant - acquisition of a license is prohibited."); ShowPlayerDialog(playerid, DIALOG_LICENSE_BUY, DIALOG_STYLE_LIST, "Select the type of license you wish to acquire.", "Driver's License ($5,000)\r\nBoating License ($5,000)\r\nPilot License ($25,000)\r\nTaxi License ($35,000)", "Purchase", "Cancel"); return 1; }
Код:
if(dialogid == DIALOG_LICENSE_BUY && response) // LICENSE BUY DIALOG ~Brian { switch (listitem) { case 0: { if(PlayerInfo[playerid][pCarLic] == 0 && PlayerInfo[playerid][pTraseuB] == 0) { if(GetPlayerCash(playerid) < 2500) { SendClientMessageEx(playerid, COLOR_GREY, "Nu iti poti permite o licenta de tip A (2500$)."); return 1; } ShowPlayerDialog(playerid, DIALOG_PERMIS1_BUY, DIALOG_STYLE_LIST, "Unde sunteti obligat sa reduceti viteza ?.", "La trecerea de pietoni\r\nIn parcare\r\nPe autostrada", "Alege", "Anuleaza"); } else SendClientMessageEx(playerid, COLOR_GREY, "Ne pare rau dar nu va putem inscrie deoarece aveti deja un permis sau ati fost admis si trebuie sa dati traseul."); } case 1: { if(PlayerInfo[playerid][pBoatLic] == 0) { if(GetPlayerCash(playerid) < 5000) { SendClientMessageEx(playerid, COLOR_GREY, "You can not afford to buy a boating license."); return 1; } GivePlayerCash(playerid,-5000); PlayerInfo[playerid][pBoatLic] = 1; SendClientMessageEx(playerid, COLOR_GREY, "You have successfully acquired a boating license."); } else SendClientMessageEx(playerid, COLOR_GREY, "You already have a boating license."); } case 2: { if(PlayerInfo[playerid][pFlyLic] == 0) { if(PlayerInfo[playerid][pLevel] >=2) { if(GetPlayerCash(playerid) < 25000) { SendClientMessageEx(playerid, COLOR_GREY, "You can not afford to buy a pilot's license."); return 1; } GivePlayerCash(playerid,-25000); PlayerInfo[playerid][pFlyLic] = 1; SendClientMessageEx(playerid, COLOR_GREY, "You have successfully acquired a pilot license; you will now be able to pilot aircraft."); } else SendClientMessageEx(playerid, COLOR_GREY, "You must be level 2 or above to acquire a pilot license."); } else SendClientMessageEx(playerid, COLOR_GREY, "You already have a pilot license."); } case 3: { if(PlayerInfo[playerid][pTaxiLicense] == 0) { if(GetPlayerCash(playerid) < 35000) { SendClientMessageEx(playerid, COLOR_GREY, "You can not afford to buy a taxi license."); return 1; } GivePlayerCash(playerid,-35000); PlayerInfo[playerid][pTaxiLicense] = 1; SendClientMessageEx(playerid, COLOR_GREY, "You have successfully acquired a taxi license; you will be able to use /fare in any vehicle, and accept calls for taxis."); } else SendClientMessageEx(playerid, COLOR_GREY, "You already have a taxi license."); } } } if(dialogid == DIALOG_PERMIS1_BUY && response) // { switch (listitem) { case 0: { if(PlayerInfo[playerid][pLicenseAdv] == 2) { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } else ShowPlayerDialog(playerid, DIALOG_PERMIS2_BUY, DIALOG_STYLE_LIST, "Se interzice circulatia pe drum daca:", "Franele sunt defecte\r\nMasina are modifcari\r\nEmisia de gaze este mica", "Alege", "Anuleaza"); } case 1: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS2_BUY, DIALOG_STYLE_LIST, "Se interzice circulatia pe drum daca:", "Franele sunt defecte\r\nMasina are modifcari\r\nEmisia de gaze este mica", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } case 2: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS2_BUY, DIALOG_STYLE_LIST, "Se interzice circulatia pe drum daca:", "Franele sunt defecte\r\nMasina are modifcari\r\nEmisia de gaze este mica", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } } } else if(dialogid == DIALOG_PERMIS2_BUY && response) // { switch (listitem) { case 0: { if(PlayerInfo[playerid][pLicenseAdv] == 2) { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } else ShowPlayerDialog(playerid, DIALOG_PERMIS3_BUY, DIALOG_STYLE_LIST, "Categoria B este pentru:", "Autocamioane si Motoscutere\r\nAutomobile 2/4 usi\r\nToate categoriile", "Alege", "Anuleaza"); } case 1: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS3_BUY, DIALOG_STYLE_LIST, "Categoria B este pentru:", "Autocamioane si Motoscutere\r\nAutomobile 2/4 usi\r\nToate categoriile", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } case 2: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS3_BUY, DIALOG_STYLE_LIST, "Categoria B este pentru:", "Autocamioane si Motoscutere\r\nAutomobile 2/4 usi\r\nToate categoriile", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } } } else if(dialogid == DIALOG_PERMIS3_BUY && response) // { switch (listitem) { case 0: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS4_BUY, DIALOG_STYLE_LIST, "Cand este interzisa depasirea unui moped ?:", "Langa trecerile de pietoni\r\nPe autostrada\r\nEste permis oricand", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } case 1: { if(PlayerInfo[playerid][pLicenseAdv] == 2) { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } else ShowPlayerDialog(playerid, DIALOG_PERMIS4_BUY, DIALOG_STYLE_LIST, "Cand este interzisa depasirea unui moped ?:", "Langa trecerile de pietoni\r\nPe autostrada\r\nEste permis oricand", "Alege", "Anuleaza"); } case 2: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS4_BUY, DIALOG_STYLE_LIST, "Cand este interzisa depasirea unui moped ?:", "Langa trecerile de pietoni\r\nPe autostrada\r\nEste permis oricand", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } } } else if(dialogid == DIALOG_PERMIS4_BUY && response) // { switch (listitem) { case 0: { if(PlayerInfo[playerid][pLicenseAdv] == 2) { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } else ShowPlayerDialog(playerid, DIALOG_PERMIS5_BUY, DIALOG_STYLE_LIST, "Ce obligatii aveti cand alt vehicul va depaseste ?:", "Ramaneti pe banda\r\nVirati usor dreapta\r\nReduceti viteza", "Alege", "Anuleaza"); } case 1: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS5_BUY, DIALOG_STYLE_LIST, "Ce obligatii aveti cand alt vehicul va depaseste ?:", "Ramaneti pe banda\r\nVirati usor dreapta\r\nReduceti viteza", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } case 2: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); ShowPlayerDialog(playerid, DIALOG_PERMIS5_BUY, DIALOG_STYLE_LIST, "Ce obligatii aveti cand alt vehicul va depaseste ?:", "Ramaneti pe banda\r\nVirati usor dreapta\r\nReduceti viteza", "Alege", "Anuleaza"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } } } else if(dialogid == DIALOG_PERMIS5_BUY && response) // { switch (listitem) { { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } case 1: { if(PlayerInfo[playerid][pLicenseAdv] <= 2) { PlayerInfo[playerid][pLicenseAdv] += 1; SendClientMessageEx(playerid, COLOR_GREY, "Ai acumulat o greseala. Mai ai dreptul la una singura!"); } else { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } } case 2: { if(PlayerInfo[playerid][pLicenseAdv] == 2) { SendClientMessageEx(playerid, COLOR_GREY, "Se pare ca ai acumulat 2 greseli. Ai fost declarat ca PICAT la examenul teoretic."); PlayerInfo[playerid][pLicenseAdv] == 0; PlayerInfo[playerid][pCarLic] == 0; PlayerInfo[playerid][pTraseuB] == 0; } else { SendClientMessageEx(playerid, COLOR_GREY, "Felicitari ! Ati fost declarat ADMIS la examenul teoretic !!!"); SendClientMessageEx(playerid, COLOR_GREY, "Acum puteti circula cu vehiculele de categoria B !"); PlayerInfo[playerid][pLicenseAdv] == 0; GivePlayerCash(playerid,-2500); PlayerInfo[playerid][pTraseuB] = 1; } } }
Sorry for my english..
Thank you very much !