Advertisement
dann1s

Cistac Ulice

Dec 23rd, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 6.25 KB | None | 0 0
  1. // Klasični objekti na Dune (Ralica i Sirena)
  2. new tempobject;
  3. tempobject = CreateDynamicObject(19601, 0.0, 0.0, 0.0, 0, 0, 0);
  4. AttachObjectToVehicle(tempobject, vehicleid, 0.000000, 3.140024, -1.039999, 0.000000, 0.000000, 177.780090); //Object Model: 19601 |
  5. tempobject = CreateDynamicObject(18646, 0.0, 0.0, 0.0, 0, 0, 0);
  6. AttachObjectToVehicle(tempobject, vehicleid, 0.754999, 2.795016, 1.549998, 0.000000, 0.000000, 0.000000); //Object Model: 18646 |
  7.  
  8.  
  9. // Čišćenje Posao
  10. #define     UPDATEVRIJEME         (500)
  11.  
  12. new
  13.         bool: CistiSnijeg[MAX_PLAYERS] = {false, ...},
  14.         CistacUpdate[MAX_PLAYERS] = {0, ...},
  15.         KamionRalica[MAX_VEHICLES] = {0, ...},
  16.         Float: ZadnjaCistacPozicija[MAX_PLAYERS][3],
  17.         CistacSnijegObjekti[playerid][2],
  18.         PlayerText: CistacInfoTD[MAX_PLAYERS];
  19.        
  20.        
  21. stock ResetujCiscenje(playerid, bool: removeTD = false)
  22. {
  23.     CistiSnijeg[playerid] = false;
  24.     CistacUpdate[playerid] = 0;
  25.     if(IsValidDynamicObject(CistacSnijegObjekti[playerid][0])) DestroyDynamicObject(CistacSnijegObjekti[playerid][0]);
  26.     if(IsValidDynamicObject(CistacSnijegObjekti[playerid][1])) DestroyDynamicObject(CistacSnijegObjekti[playerid][1]);
  27.     CistacSnijegObjekti[playerid][0] = -1; CistacSnijegObjekti[playerid][1] = -1;
  28.     if(removeTD) PlayerTextDrawDestroy(playerid, CistacInfoTD[playerid]);
  29.     return 1;
  30. }
  31.  
  32. //onvehiclespawn
  33. KamionRalica[vehicleid] = 0;
  34.  
  35. //onplayerdisconnect
  36. ResetujCiscenje(playerid);
  37.  
  38. //onplayerupdate
  39. new voziloid = GetPlayerVehicleID(playerid);
  40. if(CistiSnijeg[playerid] && GetVehicleModel(voziloid) == 573 && CistacUpdate[playerid] < tickcount())
  41. {
  42.         CistacUpdate[playerid] = tickcount()+UPDATEVRIJEME;
  43.         if(floatround(GetPlayerDistanceFromPoint(playerid, ZadnjaCistacPozicija[playerid][0], ZadnjaCistacPozicija[playerid][1], ZadnjaCistacPozicija[playerid][2]) < 30) {
  44.             KamionRalica[voziloid] += floatround(GetPlayerDistanceFromPoint(playerid, ZadnjaCistacPozicija[playerid][0], ZadnjaCistacPozicija[playerid][1], ZadnjaCistacPozicija[playerid][2]));
  45.         }
  46.         GetPlayerPos(playerid, ZadnjaCistacPozicija[playerid][0], ZadnjaCistacPozicija[playerid][1], ZadnjaCistacPozicija[playerid][2]);
  47.  
  48.         new string[60];
  49.         if(KamionRalica[voziloid] >= 2000.0) {
  50.             KamionRalica[voziloid] = 2000.0;
  51.             if(IsValidDynamicObject(CistacSnijegObjekti[playerid][0])) DestroyDynamicObject(CistacSnijegObjekti[playerid][0]);
  52.             if(IsValidDynamicObject(CistacSnijegObjekti[playerid][1])) DestroyDynamicObject(CistacSnijegObjekti[playerid][1]);
  53.             CistiSnijeg[playerid] = false;
  54.             CistacSnijegObjekti[playerid][0] = -1; CistacSnijegObjekti[playerid][1] = -1;
  55.             SendClientMessage(playerid, COLOR_GRAY, "{FFAF00}[YUB]: {00C0FF}Ralica napunjena, otidjite na istovar gdje cete biti i isplaceni.");
  56.         }
  57.        
  58.         else
  59.         {
  60.             if(GetPlayerSpeed(playerid) < 2) {
  61.                 if(IsValidDynamicObject(CistacSnijegObjekti[playerid][0])) DestroyDynamicObject(CistacSnijegObjekti[playerid][0]);
  62.                 if(IsValidDynamicObject(CistacSnijegObjekti[playerid][1])) DestroyDynamicObject(CistacSnijegObjekti[playerid][1]);
  63.                 CistacSnijegObjekti[playerid][0] = -1; CistacSnijegObjekti[playerid][1] = -1;
  64.             }
  65.             else {
  66.                 CistacSnijegObjekti[playerid][0] = CreateDynamicObject(18672, 0.0, 0.0, 0.0, 0, 0, 0);
  67.                 AttachDynamicObjectToVehicle(CistacSnijegObjekti[playerid][0], voziloid, 1.604998, 3.215026, -2.555011, 0.000000, 0.000000, 190.950149);
  68.                 CistacSnijegObjekti[playerid][1] = CreateDynamicObject(18672, 0.0, 0.0, 0.0, 0, 0, 0);
  69.                 AttachDynamicObjectToVehicle(CistacSnijegObjekti[playerid][1], voziloid, -1.644998, 3.215026, -2.555011, 0.000000, 0.000000, 190.950149);
  70.             }
  71.         }
  72.        
  73.         format(string, sizeof(string), "~b~~h~Cistac Ulica~n~~w~Iskoristenost Ralice: ~y~%.0f%%", (float(KamionRalica[voziloid]) / 2000.0) * 100.00);
  74.         PlayerTextDrawSetString(playerid, CistacInfoTD[playerid], string);
  75. }
  76.  
  77. //onplayerstatechange
  78. if(oldstate == PLAYER_STATE_DRIVER && CistiSnijeg[playerid]) ResetujCiscenje(playerid, true);
  79.  
  80. //komanda za pokretanje
  81. CMD:cisti(playerid, params[]) {
  82.  
  83.     if(Igrac[playerid][pPosao] != 22) return 1;
  84.     if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 573) return SendClientMessage(playerid, COLOR_GRAY, "Nisi u kamionu za ciscenje snijega.");
  85.  
  86.     CistacInfoTD[playerid] = CreatePlayerTextDraw(playerid, 40.000000, 305.000000, "~b~~h~Ciscenje Ulice~n~~w~Iskoristenost ralice: ~y~0%%");
  87.     PlayerTextDrawBackgroundColor(playerid, CistacInfoTD[playerid], 255);
  88.     PlayerTextDrawFont(playerid, CistacInfoTD[playerid], 1);
  89.     PlayerTextDrawLetterSize(playerid, CistacInfoTD[playerid], 0.240000, 1.100000);
  90.     PlayerTextDrawColor(playerid, CistacInfoTD[playerid], -1);
  91.     PlayerTextDrawSetOutline(playerid, CistacInfoTD[playerid], 1);
  92.     PlayerTextDrawSetProportional(playerid, CistacInfoTD[playerid], 1);
  93.     PlayerTextDrawSetSelectable(playerid, CistacInfoTD[playerid], 0);
  94.     PlayerTextDrawShow(playerid, CistacInfoTD[playerid]);
  95.  
  96.     GetPlayerPos(playerid, ZadnjaCistacPozicija[playerid][0], ZadnjaCistacPozicija[playerid][1], ZadnjaCistacPozicija[playerid][2]);
  97.     CistiSnijeg[playerid] = true;
  98.     SendClientMessage(playerid, COLOR_GRAY, "{FFAF00}[YUB]: {00C0FF}Pokrenuli ste ciscenje ulica, kretanjem kroz ulice cistite snijeg i punite ralicu.");
  99.     SendClientMessage(playerid, COLOR_GRAY, "{FFAF00}[YUB]: {00C0FF}Kada se ralica napuni, odvezite kamion na istovar gdje cete biti i isplaceni.");
  100.     return 1;
  101. }
  102.  
  103. CMD:novaralica(playerid, params[]) {
  104.  
  105.     if(Igrac[playerid][pPosao] != 22) return 1;
  106.     if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 573) return SendClientMessage(playerid, COLOR_GRAY, "Nisi u kamionu za ciscenje snijega.");
  107.     if(((float(KamionRalica[GetPlayerVehicleID(playerid)]) / 2000.0) * 100.00) < 1) return SendClientMessage(playerid, COLOR_GRAY, "Ralica na ovom kamionu nije iskoristena, prvo ocisti snijeg.");
  108.     ResetujCiscenje(playerid, true);
  109.     new zarada = KamionRalica[GetPlayerVehicleID(playerid)];
  110.     KamionRalica[GetPlayerVehicleID(playerid)] = 0;
  111.     //ovdje mu dajes pare, new zarada je koliko je zaradio, znaci proracun je koliko metara toliko dolara
  112.     SendClientMessage(playerid, COLOR_GRAY, "{FFAF00}[YUB]: {00C0FF}Hvala sto cistite nase ulice! Koristite komandu {FFAF00}/cisti {00C0FF}da ponovo pocnete raditi.");
  113.     return 1;
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement