Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //POSTINO
- enum DROPINFO
- {
- Float:DropX,
- Float:DropY,
- Float:DropZ,
- Float:DropCPSize
- }
- new Pack[MAX_PLAYERS] = 0;//pacco postale
- stock const RandomDropOff[][DROPINFO] =
- {
- { 791.5529,-1764.4651,12.7514,3.0},
- { 323.1783,-1776.7416,4.3800,3.0},
- { 608.2771,-1239.2479,17.9047,3.0},
- { 833.4138,-868.0018,68.4160,3.0},
- { 1002.5436,-638.7051,120.3834,3.0},
- { 1522.0985,-814.3433,70.4250,3.0},
- { 2223.8921,-1160.1057,25.2576,3.0},
- { 2870.7385,-1476.0847,10.3039,3.0},
- { 2745.2888,-1945.4655,13.0678,3.0},
- { 2333.6953,-1908.6969,12.6894,3.0},
- { 1771.0566,-1723.9379,13.0664,3.0},
- { 1482.9548,-1444.9447,12.9027,3.0},
- { 1098.2323,-1152.6587,23.1759,3.0},
- { 622.8019,-1470.7657,13.9105,3.0},
- { 1825.4279,-1847.7961,12.9313,3.0},
- { 1493.9517,-1737.0485,12.9031,3.0},
- { 2006.2458,-1734.8617,12.9774, 3.0}
- };
- //PIZZAIOLO
- enum pDROPINFO
- {
- Float:DropX,
- Float:DropY,
- Float:DropZ,
- Float:DropCPSize
- }
- new Pizza[MAX_PLAYERS] = 0;
- stock const pRandomDropOff[][pDROPINFO] =
- {
- { 1864.2485,-1607.7654,12.9905, 3.0},
- { 196.5656,-1737.4833,3.9287, 3.0},
- { 643.8917,-1652.8795,14.5185, 3.0},
- { 2242.4114,-1650.3824,14.8837, 3.0},
- { 2507.8594,-1669.2758,12.9764, 3.0},
- { 2515.7595,-2012.2281,12.8784, 3.0},
- { 1521.4635,-806.7906,71.7551, 3.0},
- { 499.3055,-1078.9050,81.8532, 3.0},
- { 2141.1462,-1004.2681,61.2217, 3.0},
- { 2807.6663,-1186.5220,24.9657, 3.0},
- { 2084.9675,-1806.6831,12.9832, 3.0}
- };
- new Check_Postino[MAX_PLAYERS] = 0;
- new Check_Pizzaiolo[MAX_PLAYERS] = 0;
- //ongamemode init
- //pickup del comune
- CreatePickup(1239, 1, 361.8849, 173.6105, 1007.7811, 0);
- Create3DTextLabel("Premi Y per i lavori", GIALLO, 361.8849, 173.6105, 1007.7811, 3.0, 0, 0);
- //onplayerstatechange
- //POSTINO
- if(newstate == PLAYER_STATE_DRIVER && IsPlayerInVehicle(playerid, postino1) || IsPlayerInVehicle(playerid, postino2) || IsPlayerInVehicle(playerid, postino3) || IsPlayerInVehicle(playerid, postino4) || IsPlayerInVehicle(playerid, postino5) || IsPlayerInVehicle(playerid, postino6) || IsPlayerInVehicle(playerid, postino7) || IsPlayerInVehicle(playerid, postino8)){
- if(Inizia_Lavoro[playerid] != 2) return RemovePlayerFromVehicle(playerid),SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi prima iniziare il lavoro!");
- if(PlayerInfo[playerid][pLavori] != 2) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi prima scegliere il lavoro da postino al comune!"), RemovePlayerFromVehicle(playerid);
- if(Check_Postino[playerid] == 0){
- SetRandomDropCP(playerid);
- SCM(playerid,-1,"{FF0000}<<Postino>> {FAF0E6}Consegna la posta seguendo i checkpoint!");}//random checkpoint
- Check_Postino[playerid] = 1;}
- if(Check_Postino[playerid] == 1){}
- //PIZZAIOLO---------------------------------------------------------------------
- if(newstate == PLAYER_STATE_DRIVER && IsPlayerInVehicle(playerid, pizzaiolo1) || IsPlayerInVehicle(playerid, pizzaiolo2) || IsPlayerInVehicle(playerid, pizzaiolo3) || IsPlayerInVehicle(playerid, pizzaiolo4) || IsPlayerInVehicle(playerid, pizzaiolo5) || IsPlayerInVehicle(playerid, pizzaiolo6)){
- if(Inizia_Lavoro[playerid] == 0) return RemovePlayerFromVehicle(playerid),SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi prima iniziare il lavoro!");
- if(PlayerInfo[playerid][pLavori] != 3) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi prima scegliere il lavoro da pizzaiolo al comune!"), RemovePlayerFromVehicle(playerid);
- if(Check_Pizzaiolo[playerid] == 0){
- pSetRandomDropCP(playerid);
- SCM(playerid,-1,"{FF0000}<<Pizzaiolo>> {FAF0E6}Consegna le pizze seguendo i checkpoint!");}
- Check_Pizzaiolo[playerid] = 1;}
- if(Check_Pizzaiolo[playerid] == 1){}
- //onplayerentercheck
- //POSTINO
- if(IsDropCP(playerid))
- {
- if(IsPlayerInVehicle(playerid, postino1) || IsPlayerInVehicle(playerid, postino2) || IsPlayerInVehicle(playerid, postino3) || IsPlayerInVehicle(playerid, postino4) || IsPlayerInVehicle(playerid, postino4) || IsPlayerInVehicle(playerid, postino5) || IsPlayerInVehicle(playerid, postino6) || IsPlayerInVehicle(playerid, postino7) || IsPlayerInVehicle(playerid, postino8)){
- if(Pack[playerid] == 0) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Devi prima prendere un pacco dalla moto!");
- SCM(playerid, -1, "{FF0000}<<Postino>>{FAF0E6}Hai consegnato il pacco! Passa al prossimo CheckPoint!");
- SetRandomDropCP(playerid);
- }else{ SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6} Devi essere nel veicolo da lavoro!");}}
- //PIZZAIOLO
- if(pIsDropCP(playerid))
- {
- if(IsPlayerInVehicle(playerid, pizzaiolo1) || IsPlayerInVehicle(playerid, pizzaiolo2) || IsPlayerInVehicle(playerid, pizzaiolo3) || IsPlayerInVehicle(playerid, pizzaiolo4) || IsPlayerInVehicle(playerid, pizzaiolo5) || IsPlayerInVehicle(playerid, pizzaiolo6)){
- if(Pizza[playerid] == 0) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Devi prima prendere una pizza dalla moto!");
- SCM(playerid, -1, "{FF0000}<<Postino>>{FAF0E6}Hai consegnato una pizza! Passa al prossimo CheckPoint!");
- pSetRandomDropCP(playerid);
- }else{ SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6} Devi essere nel veicolo da lavoro!");}}
- //onplayerkeystatechange
- //PICKUP NEL COMUNE
- if(newkeys & KEY_YES && IsPlayerInRangeOfPoint(playerid, 3.0, 361.8849, 173.6105, 1007.7811)){
- if(!IsPlayerInAnyVehicle(playerid))
- ShowPlayerDialog(playerid, DIALOG_LAVORI, DIALOG_STYLE_LIST, ""COL_TITLES"Lavori",""COL_AZZU"Camionista\n"COL_AZZU"Postino\n"COL_AZZU"Pizzaiolo\n"COL_AZZU"Tassista\n"COL_ROSSO"Lascia lavoro", "Scegli", "Esci");}
- if(newkeys & KEY_YES && IsPlayerInRangeOfPoint(playerid, 3.0, 1919.4891,-1854.9434,13.5619)){
- if(PlayerInfo[playerid][pLivello] != 3) return SCM(playerid, ROSSO, "Devi essere di livello 3");
- if(PlayerInfo[playerid][pLavori] != 4){
- PlayerInfo[playerid][pLavori] = 4;
- SCM(playerid, GIALLO, "Sei stato assunto come meccanico");
- PlayerInfo[playerid][pSkins] = GetPlayerSkin(playerid);
- SetPlayerSkin(playerid,50);
- }else if(PlayerInfo[playerid][pLavori] == 4){
- PlayerInfo[playerid][pLavori] = 0;
- SetPlayerSkin(playerid,PlayerInfo[playerid][pSkins]);
- SCM(playerid, GIALLO, "ti sei licenziato");}}
- //POSTINO
- if(newkeys & KEY_YES && IsPlayerInRangeOfPoint(playerid, 2.0, 1510.5581, -1743.1763, 12.9728)){
- if(PlayerInfo[playerid][pLavori] != 2) return SCM(playerid,-1,"{FF0000}<<!>> {FAF0E6}Devi prima scegliere il lavoro da postino al comune!");
- if(IsPlayerInAnyVehicle(playerid)) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi prima scendere dal veicolo!");
- if(PlayerInfo[playerid][pLavori] == 2){
- if(Inizia_Lavoro[playerid] == 0){
- Inizia_Lavoro[playerid] = 2;
- SCM(playerid,-1,"{FF0000}<<Postino>> {FAF0E6}Sali a bordo di una moto per iniziare a lavorare!");
- SCM(playerid,-1,"{FF0000}<<Postino>> {FAF0E6}Puoi annullare il lavoro ripremendo Y sul pickup!");}
- else if(Inizia_Lavoro[playerid] == 2){
- SCM(playerid,-1,"{FF0000}<<!>> {FAF0E6}Hai annullato il lavoro!");
- Inizia_Lavoro[playerid] = 0;
- Check_Camion[playerid] = 0;
- Check_Pizzaiolo[playerid] = 0;
- Check_Postino[playerid] = 0;
- Pack[playerid] = 0;
- Pizza[playerid] = 0;
- DisablePlayerCheckpoint(playerid);}}}
- if(newkeys == KEY_YES){
- if(IsPlayerNearVehicle(playerid, postino1, 2.0) || IsPlayerNearVehicle(playerid, postino2, 2.0) || IsPlayerNearVehicle(playerid, postino3, 2.0) || IsPlayerNearVehicle(playerid, postino4, 2.0) || IsPlayerNearVehicle(playerid, postino5, 2.0) || IsPlayerNearVehicle(playerid, postino6, 2.0) || IsPlayerNearVehicle(playerid, postino7, 2.0) || IsPlayerNearVehicle(playerid, postino8, 2.0) ){
- /*new Float:wx, Float:wy, Float:wz;
- GetVehiclePos(postino1 || postino2 || postino3 || postino4 || postino5 || postino6 || postino7 || postino8, wx, wy, wz);
- if(IsPlayerInRangeOfPoint(playerid, 4.0, wx, wy, wz)){*/
- if(IsPlayerInAnyVehicle(playerid)) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi scendere prima dal veicolo!");
- if(Inizia_Lavoro[playerid] != 2) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi iniziare prima il lavoro da postino!");
- if(Pack[playerid] == 1) return Pack[playerid] = 0, SCM(playerid, -1, "{FF0000}<<Postino>> {FAF0E6}Hai posato il pacco nel bagagliaio della moto");
- if(Pack[playerid] == 0) return Pack[playerid] = 1, SCM(playerid,-1, "{FF0000}<<Postino>> {FAF0E6}Hai preso un pacco, consegnalo al checkpoint!");}}
- //PIZZAIOLO
- if(newkeys & KEY_YES && IsPlayerInRangeOfPoint(playerid, 2.0, 2092.42773, -1801.71826, 12.72849)){
- if(IsPlayerInAnyVehicle(playerid)) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi prima scendere dal veicolo!");
- if(PlayerInfo[playerid][pLavori] != 3) return SCM(playerid,-1,"{FF0000}<<!>> {FAF0E6}Devi prima scegliere il lavoro da pizzaiolo al comune!");
- if(PlayerInfo[playerid][pLavori] == 3){
- if(Inizia_Lavoro[playerid] == 0){
- Inizia_Lavoro[playerid] = 3;
- SCM(playerid,-1,"{FF0000}<<Pizzaiolo>> {FAF0E6}Sali a bordo di una moto per iniziare a lavorare!");
- SCM(playerid,-1,"{FF0000}<<Pizzaiolo>> {FAF0E6}Puoi annullare il lavoro ripremendo Y sul pickup!");}
- else if(Inizia_Lavoro[playerid] == 3){
- SCM(playerid,-1,"{FF0000}<<!>> {FAF0E6}Hai annullato il lavoro!");
- Inizia_Lavoro[playerid] = 0;
- Check_Camion[playerid] = 0;
- Check_Pizzaiolo[playerid] = 0;
- Check_Postino[playerid] = 0;
- Pack[playerid] = 0;
- Pizza[playerid] = 0;
- DisablePlayerCheckpoint(playerid);}}}
- if(newkeys == KEY_YES){
- if(IsPlayerNearVehicle(playerid, pizzaiolo1, 2.0) || IsPlayerNearVehicle(playerid, pizzaiolo2, 2.0) || IsPlayerNearVehicle(playerid, pizzaiolo3, 2.0) || IsPlayerNearVehicle(playerid, pizzaiolo4, 2.0) || IsPlayerNearVehicle(playerid, pizzaiolo5, 2.0) || IsPlayerNearVehicle(playerid, pizzaiolo6, 2.0)){
- if(IsPlayerInAnyVehicle(playerid)) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi scendere prima dal veicolo!");
- if(Inizia_Lavoro[playerid] != 3) return SCM(playerid, -1, "{FF0000}<<!>> {FAF0E6}Devi iniziare prima il lavoro da postino!");
- if(Pizza[playerid] == 1) return Pizza[playerid] = 0, SCM(playerid, -1, "{FF0000}<<Postino>> {FAF0E6}Hai posato la pizza nel bagagliaio della moto");
- if(Pizza[playerid] == 0) return Pizza[playerid] = 1, SCM(playerid,-1, "{FF0000}<<Postino>> {FAF0E6}Hai preso una pizza dal bagagliaio della moto, consegnala al checkpoint!");}}
- //DIALOG_LAVORI
- if(dialogid == DIALOG_LAVORI){
- if(response){
- switch(listitem){
- case 0:{
- if(PlayerInfo[playerid][pLavori] == 2 || PlayerInfo[playerid][pLavori] == 3 || PlayerInfo[playerid][pLavori] == 4) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Possiedi già un lavoro, devi prima licenziarti!");
- if(PlayerInfo[playerid][pLavori] == 1) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Sei già stato assunto per svolgere questo lavoro!");
- PlayerInfo[playerid][pLavori] = 1, SCM(playerid,-1,"{FF0000}<<Comune>> {FAF0E6}Sei stato assunto da una Ditta come Camionista!"),SaveAccountInfo(playerid);}//camionista
- case 1:{
- if(PlayerInfo[playerid][pLavori] == 1 || PlayerInfo[playerid][pLavori] == 3 || PlayerInfo[playerid][pLavori] == 4) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Possiedi già un lavoro, devi prima licenziarti!");
- if(PlayerInfo[playerid][pLavori] == 2) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Sei già stato assunto per svolgere questo lavoro!");
- PlayerInfo[playerid][pLavori] = 2, SCM(playerid,-1,"{FF0000}<<Comune>> {FAF0E6}Sei stato assunto dalle Poste come Postino!"),SaveAccountInfo(playerid);}//postino
- case 2:{
- if(PlayerInfo[playerid][pLavori] == 1 || PlayerInfo[playerid][pLavori] == 2 || PlayerInfo[playerid][pLavori] == 4) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Possiedi già un lavoro, devi prima licenziarti!");
- if(PlayerInfo[playerid][pLavori] == 3) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Sei già stato assunto per svolgere questo lavoro!");
- PlayerInfo[playerid][pLavori] = 3, SCM(playerid,-1,"{FF0000}<<Comune>> {FAF0E6}Sei stato assunto da un FastFood come Pizzaiolo!"),SaveAccountInfo(playerid);}//pizzaiolo
- case 3:{
- if(PlayerInfo[playerid][pLavori] == 1 || PlayerInfo[playerid][pLavori] == 2 || PlayerInfo[playerid][pLavori] == 3) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Possiedi già un lavoro, devi prima licenziarti!");
- if(PlayerInfo[playerid][pLavori] == 4) return SCM(playerid, -1, "{FF0000}<<!>>{FAF0E6}Sei già stato assunto per svolgere questo lavoro!");
- PlayerInfo[playerid][pLavori] = 4, SCM(playerid,-1,"{FF0000}<<Comune>> {FAF0E6}Sei stato assunto da una Ditta come Tassista!"),SaveAccountInfo(playerid);}//taxi
- case 4:{
- if(PlayerInfo[playerid][pLavori] != 0)
- {
- PlayerInfo[playerid][pLavori] = 0, SCM(playerid,0xFFEE00FF,"Hai scelto di licenziarti"),Inizia_Lavoro[playerid] = 0, SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]),DisablePlayerCheckpoint(playerid);
- SaveAccountInfo(playerid);
- }
- else if(PlayerInfo[playerid][pLavori] == 0)
- {
- SCM(playerid,0xFFEE00FF,"Non hai un lavoro per farlo");
- }}}}}
- //RANDOM CHECKS POSTINO
- stock SetRandomDropCP(playerid)
- {
- new Check_Random = random(sizeof(RandomDropOff));
- DisablePlayerCheckpoint(playerid);
- new rand1 = randomEx(100, 110);
- PlayerInfo[playerid][pSoldi] = PlayerInfo[playerid][pSoldi] + rand1;
- Pack[playerid] = 0;
- SetPlayerCheckpoint(playerid, RandomDropOff[Check_Random][DropX], RandomDropOff[Check_Random][DropY], RandomDropOff[Check_Random][DropZ], RandomDropOff[Check_Random][DropCPSize]);
- return 1;
- }
- stock IsDropCP(playerid)
- {
- for(new i = 0; i < sizeof(RandomDropOff); i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, RandomDropOff[i][DropCPSize], RandomDropOff[i][DropX], RandomDropOff[i][DropY], RandomDropOff[i][DropZ]))
- {
- return 1;
- }
- }
- return 0;
- }
- //RANDOM CHECKS PIZZAIOLO
- stock pSetRandomDropCP(playerid)
- {
- new pCheck_Random = random(sizeof(pRandomDropOff));
- DisablePlayerCheckpoint(playerid);
- new rand2 = randomEx(170, 190);
- PlayerInfo[playerid][pSoldi] = PlayerInfo[playerid][pSoldi] + rand2;
- Pizza[playerid] = 0;
- SetPlayerCheckpoint(playerid, pRandomDropOff[pCheck_Random][DropX], pRandomDropOff[pCheck_Random][DropY], pRandomDropOff[pCheck_Random][DropZ], pRandomDropOff[pCheck_Random][DropCPSize]);
- return 1;
- }
- stock pIsDropCP(playerid)
- {
- for(new i = 0; i < sizeof(pRandomDropOff); i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, pRandomDropOff[i][DropCPSize], pRandomDropOff[i][DropX], pRandomDropOff[i][DropY], pRandomDropOff[i][DropZ]))
- {
- return 1;
- }
- }
- return 0;
- }
- stock IsPlayerNearVehicle(playerid, vehicleid, Float:range)
- {
- new Float:X, Float:Y, Float:Z;
- GetVehiclePos(vehicleid, X, Y, Z);
- if(IsPlayerInRangeOfPoint(playerid, range, X, Y, Z)) return true;
- else return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement