#include new Veicolo[MAX_PLAYERS]; new gara[MAX_PLAYERS]; new Comprata[MAX_VEHICLES]; new posti = 1; main() { print("\n----------------------------------"); print(" San Fierro Street Race by TommyLR "); print("----------------------------------\n"); } public OnGameModeInit() { print("GameModeInit()"); SetGameModeText("Blank Script"); AddStaticVehicle(555,-1989.7498,243.5580,34.8580,87.2092,58,1); // Windsor 1 AddStaticVehicle(401,-1991.4071,249.0986,34.9512,78.0993,87,87); // Bravura 2 AddStaticVehicle(402,-1975.0883,243.5105,35.0049,173.9056,90,90); // Buffalo 3 AddStaticVehicle(405,-1991.4279,254.9322,35.0463,83.9965,40,1); // Sentinel 4 AddStaticVehicle(410,-1990.1094,259.3609,34.8320,78.5972,10,1); // Manana 5 AddStaticVehicle(411,-1945.2988,274.0035,40.7757,268.4767,112,1); // Infernus 6 AddStaticVehicle(419,-1989.9133,264.2216,34.9748,83.7142,13,76); // esperanto 7 AddStaticVehicle(421,-1989.5709,269.1728,35.0578,87.6150,36,1); // washington 8 AddStaticVehicle(426,-1987.6793,274.8651,34.9187,56.1747,62,62); // premium 9 AddStaticVehicle(415,-1945.4063,268.0475,40.8254,269.2043,36,1); // cheetah 10 AddStaticVehicle(429,-1955.9673,257.7826,40.7268,176.5828,14,14); // banshee 11 AddStaticVehicle(445,-1977.8107,304.3246,35.0467,184.9591,43,43); // admiral 12 AddStaticVehicle(451,-1946.1738,259.8581,40.7537,238.5270,16,16); // TUrismo 13 AddStaticVehicle(477,-1957.8619,296.3947,35.2209,349.6366,121,1); // zr 350 14 AddStaticVehicle(480,-1944.7468,268.6469,35.2465,270.3976,6,6); // comet 15 AddStaticVehicle(494,-1953.5420,258.0640,35.3664,179.5071,54,36); // hotring 16 AddStaticVehicle(506,-1959.1681,257.9241,35.1753,186.7476,52,52); // supergt 17 AddStaticVehicle(474,-1969.2283,243.8422,34.9380,177.7150,91,1); // hermes 18 AddStaticVehicle(533,-1944.3674,262.3931,35.1777,273.5196,77,1); // feltzer 19 AddStaticVehicle(541,-1948.2213,256.4031,35.0938,178.3115,2,1); // bullet 20 AddStaticVehicle(587,-1961.1329,268.5175,35.1958,89.1846,53,1); // euros 21 AddStaticVehicle(602,-1970.9441,304.7362,34.9785,172.7708,32,1); // alpha 22 AddPlayerClass(1,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(48,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(58,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(59,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(60,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(67,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(72,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(84,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(98,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(102,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(109,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // AddPlayerClass(112,-1976.4758,269.5956,35.1719,161.5001,0,0,0,0,0,0); // return 1; } public OnPlayerConnect(playerid){ GivePlayerMoney(playerid, 50000); } public OnPlayerRequestClass(playerid, classid) { SetPlayerInterior(playerid,0); SetPlayerFacingAngle(playerid,23.1364); SetPlayerPos(playerid,1787.8250,-1898.4103,13.3950); SetPlayerCameraPos(playerid,1785.5365,-1895.8412,13.3919); SetPlayerCameraLookAt(playerid,1787.8250,-1898.4103,13.3950); return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { new veicoloid = GetPlayerVehicleID(playerid); if(newstate == PLAYER_STATE_DRIVER){ if(veicoloid == Veicolo[playerid]) { } else { TogglePlayerControllable(playerid,0); switch(veicoloid){ case 1: { GameTextForPlayer(playerid, "Windsor~n~Max Speed: 180 KM/h ~n~ Cost: 50000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 2: { GameTextForPlayer(playerid, "Bravura~n~Max Speed: 160 KM/h ~n~ Cost: 30000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 3: { GameTextForPlayer(playerid, "Buffalo~n~Max Speed: 200 KM/h ~n~ Cost: 80000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 4: { GameTextForPlayer(playerid, "Sentinel~n~Max Speed: 165 KM/h ~n~ Cost: 32000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 5: { GameTextForPlayer(playerid, "Manana~n~Max Speed: 160 KM/h ~n~ Cost: 27000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 6: { GameTextForPlayer(playerid, "Infernus~n~Max Speed: 240 KM/h ~n~ Cost: 120000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 7: { GameTextForPlayer(playerid, "Esperanto~n~Max Speed: 160 KM/h ~n~ Cost: 30000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 8: { GameTextForPlayer(playerid, "Washington~n~Max Speed: 180 KM/h ~n~ Cost: 45000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 9: { GameTextForPlayer(playerid, "Premier~n~Max Speed: 200 KM/h ~n~ Cost: 80000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 10: { GameTextForPlayer(playerid, "Cheetah~n~Max Speed: 230 KM/h ~n~ Cost: 100000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 11: { GameTextForPlayer(playerid, "Banshee~n~Max Speed: 200 KM/h ~n~ Cost: 85000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 12: { GameTextForPlayer(playerid, "Admiral~n~Max Speed: 165 KM/h ~n~ Cost: 30000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 13: { GameTextForPlayer(playerid, "Turismo~n~Max Speed: 240 KM/h ~n~ Cost: 140000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 14: { GameTextForPlayer(playerid, "zr350~n~Max Speed: 200 KM/h ~n~ Cost: 90000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 15: { GameTextForPlayer(playerid, "comet~n~Max Speed: 200 KM/h ~n~ Cost: 85000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 16: { GameTextForPlayer(playerid, "hotring racer~n~Max Speed: 220 KM/h ~n~ Cost: 100000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 17: { GameTextForPlayer(playerid, "supergt~n~Max Speed: 230 KM/h ~n~ Cost: 80000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 18: { GameTextForPlayer(playerid, "hermes~n~Max Speed: 160 KM/h ~n~ Cost: 30000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 19: { GameTextForPlayer(playerid, "feltzer~n~Max Speed: 200 KM/h ~n~ Cost: 80000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 20: { GameTextForPlayer(playerid, "bullet~n~Max Speed: 230 KM/h ~n~ Cost: 110000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 21: { GameTextForPlayer(playerid, "euros~n~Max Speed: 200 KM/h ~n~ Cost: 80000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } case 22: { GameTextForPlayer(playerid, "alpha~n~Max Speed: 200 KM/h ~n~ Cost: 80000$ ~n~ Type /buy to buy it ~n~ or /exit to exit from the vehicle",10000,3); } } } } return 1; } public OnPlayerEnterCheckpoint(playerid) { printf("OnPlayerEnterCheckpoint(%d)", playerid); return 1; } public OnPlayerCommandText(playerid, cmdtext[],is, i) { new cmd[256]; new idx; cmd = strtok(cmdtext, idx); if(strcmp(cmd, "/buy", true) == 0) { new vehicleid = GetPlayerVehicleID(playerid); if(vehicleid == Veicolo[playerid]){ GameTextForPlayer(playerid, "That's your car!", 2000, 3); } if(Comprata[vehicleid] == 1){ GameTextForPlayer(playerid, "Already bought car!", 2000, 3); }else{ switch(vehicleid){ case 1: { if(GetPlayerMoney(playerid) >= 50000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -50000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 2: { if(GetPlayerMoney(playerid) >= 30000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -30000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 3: { if(GetPlayerMoney(playerid) >= 80000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -80000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 4: { if(GetPlayerMoney(playerid) >= 32000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -32000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 5: { if(GetPlayerMoney(playerid) >= 27000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -27000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 6: { if(GetPlayerMoney(playerid) >= 120000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -120000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 7: { if(GetPlayerMoney(playerid) >= 30000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -30000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 8: { if(GetPlayerMoney(playerid) >= 45000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -45000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 9: { if(GetPlayerMoney(playerid) >= 80000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -80000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 10: { if(GetPlayerMoney(playerid) >= 100000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -100000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 11: { if(GetPlayerMoney(playerid) >= 85000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -85000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 12: { if(GetPlayerMoney(playerid) >= 30000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -30000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 13: { if(GetPlayerMoney(playerid) >= 140000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -140000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 14: { if(GetPlayerMoney(playerid) >= 90000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -90000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 15: { if(GetPlayerMoney(playerid) >= 85000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -85000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 16: { if(GetPlayerMoney(playerid) >= 100000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -100000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 17: { if(GetPlayerMoney(playerid) >= 80000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -80000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 18: { if(GetPlayerMoney(playerid) >= 30000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -30000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 19: { if(GetPlayerMoney(playerid) >= 80000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -80000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 20: { if(GetPlayerMoney(playerid) >= 110000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -110000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 21: { if(GetPlayerMoney(playerid) >= 80000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -80000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } case 22: { if(GetPlayerMoney(playerid) >= 80000){ GameTextForPlayer(playerid, "purchased!", 3000, 3); GivePlayerMoney(playerid, -80000); TogglePlayerControllable(playerid, 1); Comprata[vehicleid] = 1; Veicolo[playerid] = vehicleid; }else{ GameTextForPlayer(playerid, "not enough money!", 3000, 3); } } } } return 1; } if(strcmp(cmd, "/exit", true) == 0) { RemovePlayerFromVehicle(playerid); TogglePlayerControllable(playerid, 1); return 1; } if(strcmp(cmd, "/racestart", true) == 0) { for(i=0;i ' ') && ((index - offset) < (sizeof(result) - 1))) {result[index - offset] = string[index]; index++;}result[index - offset] = EOS;return result;} public OnPlayerExitVehicle(playerid){ TogglePlayerControllable(playerid,1); }