Guest User

Untitled

a guest
Oct 30th, 2016
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.00 KB | None | 0 0
  1. ////////////////////////////////////////////////////////////////////////////////
  2. public UcitajSalone(salonid, name[], value[])
  3. {
  4. INI_Int("Salon_Postavljen",SaloniInfo[salonid][saPostavljen]);
  5. INI_String("Salon_Ime", SaloniInfo[salonid][saIme], 25);
  6. INI_Float("Salon_X", SaloniInfo[salonid][saX]);
  7. INI_Float("Salon_y", SaloniInfo[salonid][saY]);
  8. INI_Float("Salon_Z", SaloniInfo[salonid][saZ]);
  9. INI_Float("Salon_SVX", SaloniInfo[salonid][saSpawnVehX]);
  10. INI_Float("Salon_SVY", SaloniInfo[salonid][saSpawnVehY]);
  11. INI_Float("Salon_SVZ", SaloniInfo[salonid][saSpawnVehZ]);
  12. INI_Float("Salon_SVA", SaloniInfo[salonid][saSpawnVehA]);
  13. INI_Int("Model_1", SaloniInfo[salonid][saModel][0]);
  14. INI_Int("Model_2", SaloniInfo[salonid][saModel][1]);
  15. INI_Int("Model_3", SaloniInfo[salonid][saModel][2]);
  16. INI_Int("Model_4", SaloniInfo[salonid][saModel][3]);
  17. INI_Int("Model_5", SaloniInfo[salonid][saModel][4]);
  18. INI_Int("Model_6", SaloniInfo[salonid][saModel][5]);
  19. INI_Int("Model_7", SaloniInfo[salonid][saModel][6]);
  20. INI_Int("Model_8", SaloniInfo[salonid][saModel][7]);
  21. INI_Int("Model_9", SaloniInfo[salonid][saModel][8]);
  22. INI_Int("Model_10", SaloniInfo[salonid][saModel][9]);
  23. INI_Int("Model_11", SaloniInfo[salonid][saModel][10]);
  24. INI_Int("Model_12", SaloniInfo[salonid][saModel][11]);
  25. INI_Int("Model_13", SaloniInfo[salonid][saModel][12]);
  26. INI_Int("Model_14", SaloniInfo[salonid][saModel][13]);
  27. INI_Int("Model_15", SaloniInfo[salonid][saModel][14]);
  28. INI_Int("Cena_1", SaloniInfo[salonid][saCena][0]);
  29. INI_Int("Cena_2", SaloniInfo[salonid][saCena][1]);
  30. INI_Int("Cena_3", SaloniInfo[salonid][saCena][2]);
  31. INI_Int("Cena_4", SaloniInfo[salonid][saCena][3]);
  32. INI_Int("Cena_5", SaloniInfo[salonid][saCena][4]);
  33. INI_Int("Cena_6", SaloniInfo[salonid][saCena][5]);
  34. INI_Int("Cena_7", SaloniInfo[salonid][saCena][6]);
  35. INI_Int("Cena_8", SaloniInfo[salonid][saCena][7]);
  36. INI_Int("Cena_9", SaloniInfo[salonid][saCena][8]);
  37. INI_Int("Cena_10", SaloniInfo[salonid][saCena][9]);
  38. INI_Int("Cena_11", SaloniInfo[salonid][saCena][10]);
  39. INI_Int("ModelaMax_15", SaloniInfo[salonid][saOGModela][14]);
  40. return 1;
  41. }
  42. ////////////////////////////////////////////////////////////////////////////////
  43. stock SacuvajSalon(salonid)
  44. {
  45. new saFile[50];
  46. format(saFile, sizeof(saFile), SALONI_FILE, salonid);
  47. new INI:File = INI_Open(saFile);
  48. INI_WriteInt(File,"Salon_Postavljen",SaloniInfo[salonid][saPostavljen]);
  49. INI_WriteString(File,"Salon_Ime", SaloniInfo[salonid][saIme]);
  50. INI_WriteFloat(File,"Salon_X", SaloniInfo[salonid][saX]);
  51. INI_WriteInt(File,"Model_14", SaloniInfo[salonid][saModel][13]);
  52. INI_WriteInt(File,"Model_15", SaloniInfo[salonid][saModel][14]);
  53. INI_WriteInt(File,"Cena_1", SaloniInfo[salonid][saCena][0]);
  54. INI_WriteInt(File,"Cena_2", SaloniInfo[salonid][saCena][1]);
  55. INI_WriteInt(File,"Cena_3", SaloniInfo[salonid][saCena][2]);
  56. INI_WriteInt(File,"Cena_4", SaloniInfo[salonid][saCena][3]);
  57. INI_WriteInt(File,"Cena_5", SaloniInfo[salonid][saCena][4]);
  58. INI_WriteInt(File,"Cena_6", SaloniInfo[salonid][saCena][5]);
  59. INI_WriteInt(File,"Cena_7", SaloniInfo[salonid][saCena][6]);
  60. INI_WriteInt(File,"Cena_8", SaloniInfo[salonid][saCena][7]);
  61. INI_WriteInt(File,"Cena_9", SaloniInfo[salonid][saCena][8]);
  62. INI_WriteInt(File,"Cena_10", SaloniInfo[salonid][saCena][9]);
  63. INI_WriteInt(File,"Cena_11", SaloniInfo[salonid][saCena][10]);
  64. INI_WriteInt(File,"Cena_12", SaloniInfo[salonid][saCena][11]);
  65. INI_WriteInt(File,"Cena_13", SaloniInfo[salonid][saCena][12]);
  66. INI_WriteInt(File,"Cena_14", SaloniInfo[salonid][saCena][13]);
  67. INI_WriteInt(File,"Cena_15", SaloniInfo[salonid][saCena][14]);
  68. INI_WriteInt(File,"ModelaMax_1", SaloniInfo[salonid][saOGModela][0]);
  69. INI_WriteInt(File,"ModelaMax_2", SaloniInfo[salonid][saOGModela][1]);
  70. INI_WriteInt(File,"ModelaMax_3", SaloniInfo[salonid][saOGModela][2]);
  71. INI_WriteInt(File,"ModelaMax_4", SaloniInfo[salonid][saOGModela][3]);
  72. INI_WriteInt(File,"ModelaMax_5", SaloniInfo[salonid][saOGModela][4]);
  73. INI_WriteInt(File,"ModelaMax_6", SaloniInfo[salonid][saOGModela][5]);
  74. INI_WriteInt(File,"ModelaMax_7", SaloniInfo[salonid][saOGModela][6]);
  75. INI_WriteInt(File,"ModelaMax_8", SaloniInfo[salonid][saOGModela][7]);
  76. INI_WriteInt(File,"ModelaMax_9", SaloniInfo[salonid][saOGModela][8]);
  77. INI_WriteInt(File,"ModelaMax_10", SaloniInfo[salonid][saOGModela][9]);
  78. INI_WriteInt(File,"ModelaMax_11", SaloniInfo[salonid][saOGModela][10]);
  79. INI_WriteInt(File,"ModelaMax_12", SaloniInfo[salonid][saOGModela][11]);
  80. INI_WriteInt(File,"ModelaMax_13", SaloniInfo[salonid][saOGModela][12]);
  81. INI_WriteInt(File,"ModelaMax_14", SaloniInfo[salonid][saOGModela][13]);
  82. INI_WriteInt(File,"ModelaMax_15", SaloniInfo[salonid][saOGModela][14]);
  83. INI_Close(File);
  84. return 1;
  85. }
  86. ////////////////////////////////////////////////////////////////////////////////
  87. stock PodesiVozilo(playerid, veh_ID)
  88. {
  89. new idsalona = GledaKatalog[playerid], voziloporedu = ListaVozila[playerid], boja = random(3)+1;
  90. new engine, lights, alarm, bonnet, objective;
  91. g_NovacMinus(playerid, SaloniInfo[idsalona][saCena][voziloporedu]);
  92. VoziloInfo[veh_ID][vModel] = SaloniInfo[idsalona][saModel][voziloporedu];
  93. strmid(VoziloInfo[veh_ID][vVlasnik], GetName(playerid), 0, strlen(GetName(playerid)), 25);
  94. VoziloInfo[veh_ID][vPozX] = SaloniInfo[idsalona][saSpawnVehX];
  95. VoziloInfo[veh_ID][vPozY] = SaloniInfo[idsalona][saSpawnVehY];
  96. VoziloInfo[veh_ID][vPozZ] = SaloniInfo[idsalona][saSpawnVehZ];
  97. VoziloInfo[veh_ID][vPozA] = SaloniInfo[idsalona][saSpawnVehA];
  98. VoziloInfo[veh_ID][vPaintJob] = -1;
  99. VoziloInfo[veh_ID][vKomponenta1] = 0;
  100. VoziloInfo[veh_ID][vKomponenta2] = 0;
  101. VoziloInfo[veh_ID][vKomponenta3] = 0;
  102. VoziloInfo[veh_ID][vKomponenta4] = 0;
  103. VoziloInfo[veh_ID][vKomponenta5] = 0;
  104. VoziloInfo[veh_ID][vKomponenta6] = 0;
  105. VoziloInfo[veh_ID][vKomponenta7] = 0;
  106. VoziloInfo[veh_ID][vKomponenta8] = 0;
  107. VoziloInfo[veh_ID][vKomponenta9] = 0;
  108. VoziloInfo[veh_ID][vKomponenta10] = 0;
  109. VoziloInfo[veh_ID][vKomponenta11] = 0;
  110. VoziloInfo[veh_ID][vKomponenta12] = 0;
  111. VoziloInfo[veh_ID][vKomponenta13] = 0;
  112. VoziloInfo[veh_ID][vBoja1] = boja;
  113. VoziloInfo[veh_ID][vBoja2] = boja;
  114. VoziloInfo[veh_ID][vCena] = SaloniInfo[idsalona][saCena][voziloporedu];
  115. VoziloInfo[veh_ID][vProveraVlasnika] = 1;
  116. format(VoziloInfo[veh_ID][vTablice], 15, "Nema");
  117. VoziloInfo[veh_ID][vVW] = 0;
  118. VoziloInfo[veh_ID][vINT] = 0;
  119. VoziloInfo[veh_ID][vHeroin] = 0;
  120. VoziloInfo[veh_ID][vMaterijali] = 0;
  121. VoziloInfo[veh_ID][vOruzje1] = -1;
  122. VoziloInfo[veh_ID][vOruzje2] = -1;
  123. VoziloInfo[veh_ID][vMunicija1] = 0;
  124. VoziloInfo[veh_ID][vMunicija2] = 0;
  125. VoziloInfo[veh_ID][vAlarm] = 0;
  126. VoziloInfo[veh_ID][vZakljucan] = 1;
  127. VoziloInfo[veh_ID][vKokain] = 0;
  128. VoziloInfo[veh_ID][vGepek] = 0;
  129. VoziloInfo[veh_ID][vRegistracija] = 0;
  130. VoziloInfo[veh_ID][vRadio] = 0;
  131. VoziloInfo[veh_ID][vTunirano] = 0;
  132. VoziloInfo[veh_ID][vTehnickiPregled] = 0;
  133. SacuvajVozilo(veh_ID);
  134. VoziloInfo[veh_ID][vID] = g_CreateVehicle_g(VoziloInfo[veh_ID][vModel], VoziloInfo[veh_ID][vPozX], VoziloInfo[veh_ID][vPozY], VoziloInfo[veh_ID][vPozZ], VoziloInfo[veh_ID][vPozA], VoziloInfo[veh_ID][vBoja1], VoziloInfo[veh_ID][vBoja2], 2400);
  135. SaloniInfo[idsalona][saOGModela][voziloporedu] --; SacuvajSalon(idsalona); PrikaziSalonTD(playerid, 2); Gorivo[VoziloInfo[veh_ID][vID]] = 60;
  136. SetVehicleNumberPlate(VoziloInfo[veh_ID][vID], VoziloInfo[veh_ID][vTablice]);
  137. SetVehicleParamsEx(VoziloInfo[veh_ID][vID], engine, lights, alarm, VoziloInfo[veh_ID][vZakljucan], bonnet, VoziloInfo[veh_ID][vGepek], objective);
  138. SCM(playerid, -1, "* "ZELENA"Cestitamo vam na kupovini novog vozila.");
  139. SCM(playerid, -1, "* "ZELENA"Preporucujemo vam da sto pre registrujete vase vozilo i zastite ga alarmom!");
  140. SCM(playerid, -1, "* "ZELENA"Sve komande vezane za vozilo mozete pronaci na /v.");
  141. return 1;
  142. }
  143. ////////////////////////////////////////////////////////////////////////////////
  144. stock KreirajSalon(id)
  145. {
  146. new string[120], salonstatus[10];
  147. if(SaloniInfo[id][saPostavljen] == 1) salonstatus = "Otvoren";
  148. else salonstatus = "Zatvoren";
  149. format(string, sizeof(string), ""ZUTA"%s - "BELA"[%d]\n"ZUTA"Salon: "BELA"%s\n"ZUTA"Koristite tipku 'N' za kupovinu", SaloniInfo[id][saIme], id, salonstatus);
  150. Saloni_3D[id] = CreateDynamic3DTextLabel(string, 0x1D9F00AA, SaloniInfo[id][saX], SaloniInfo[id][saY], SaloniInfo[id][saZ]+0.1, 20.0,_,_,_, 0, 0,_,_);
  151. Saloni_Pickup[id] = CreateDynamicPickup(1239, 1, SaloniInfo[id][saX], SaloniInfo[id][saY], SaloniInfo[id][saZ], 0, 0);
  152. CreateDynamicMapIcon(SaloniInfo[id][saX], SaloniInfo[id][saY], SaloniInfo[id][saZ], 55, -1, 0, 0, -1, 400.0);
  153. return 1;
  154. }
  155. ////////////////////////////////////////////////////////////////////////////////
  156. stock UpdateSalonTD(id)
  157. {
  158. new string[120], salonstatus[10];
  159. if(SaloniInfo[id][saPostavljen] == 1) salonstatus = "Otvoren";
  160. else salonstatus = "Zatvoren";
  161. format(string, sizeof(string), ""ZUTA"%s - ["BELA"%d"ZUTA"]\n"ZUTA"Salon: "BELA"%s\n"ZUTA"Koristite tipku 'N' za kupovinu", SaloniInfo[id][saIme], id, salonstatus);
  162. UpdateDynamic3DTextLabelText(Saloni_3D[id], 0x1D9F00AA, string);
  163. return 1;
  164. }
  165. ////////////////////////////////////////////////////////////////////////////////
  166. stock PrikaziSalonTD(playerid, tip)
  167. {
  168. if(tip == 1)
  169. {
  170. for(new da = 0; da < 12; da++)
  171. {
  172. PlayerTextDrawShow(playerid, SaloniTD[playerid][da]);
  173. }
  174. SelectTextDraw(playerid, ODABERI_CRVENU);
  175. SalonTD_Kreiran[playerid] = 1;
  176. }
  177. else if(tip == 2)
  178. {
  179. for(new da = 0; da < 12; da++)
  180. {
  181. PlayerTextDrawHide(playerid, SaloniTD[playerid][da]);
  182. }
  183. GledaKatalog[playerid] = -1;
  184. ListaVozila[playerid] = -1;
  185. SalonTD_Kreiran[playerid] = 0;
  186. CancelSelectTextDraw(playerid);
  187. }
  188. return 1;
  189. }
  190. ////////////////////////////////////////////////////////////////////////////////
  191. stock PodesiSalonTD(playerid)
  192. {
  193. new string[30];
  194. PlayerTextDrawHide(playerid, SaloniTD[playerid][1]);
  195. PlayerTextDrawHide(playerid, SaloniTD[playerid][2]);
  196. PlayerTextDrawHide(playerid, SaloniTD[playerid][3]);
  197. PlayerTextDrawSetPreviewModel(playerid, SaloniTD[playerid][1], SaloniInfo[GledaKatalog[playerid]][saModel][ListaVozila[playerid]]);
  198. PlayerTextDrawSetPreviewModel(playerid, SaloniTD[playerid][2], SaloniInfo[GledaKatalog[playerid]][saModel][ListaVozila[playerid]]);
  199. PlayerTextDrawSetPreviewModel(playerid, SaloniTD[playerid][3], SaloniInfo[GledaKatalog[playerid]][saModel][ListaVozila[playerid]]);
  200. PlayerTextDrawShow(playerid, SaloniTD[playerid][1]);
  201. PlayerTextDrawShow(playerid, SaloniTD[playerid][2]);
  202. PlayerTextDrawShow(playerid, SaloniTD[playerid][3]);
  203. format(string,sizeof(string), "Model: %s", ImenaVozila[SaloniInfo[GledaKatalog[playerid]][saModel][ListaVozila[playerid]] - 400]);
  204. PlayerTextDrawSetString(playerid, SaloniTD[playerid][4], string);
  205. format(string,sizeof(string), "Cena: ~g~%d$",SaloniInfo[GledaKatalog[playerid]][saCena][ListaVozila[playerid]]);
  206. PlayerTextDrawSetString(playerid, SaloniTD[playerid][5], string);
  207. return 1;
  208. }
  209.  
  210. forward UcitajSalone(salonid, name[], value[]);
  211. new SalonTD_Kreiran[MAX_PLAYERS];
  212. new GledaKatalog[MAX_PLAYERS];
  213. new ListaVozila[MAX_PLAYERS];
  214. new brojsalone = 0;
  215. ////////////////////////////////////////////////////////////////////////////////
  216. enum saInfo
  217. {
  218. saPostavljen,
  219. saIme[25],
  220. Float:saX,
  221. Float:saY,
  222. Float:saZ,
  223. Float:saSpawnVehX,
  224. Float:saSpawnVehY,
  225. Float:saSpawnVehZ,
  226. Float:saSpawnVehA,
  227. saModel[15],
  228. saCena[15],
  229. saOGModela[15]
  230. };
  231. new SaloniInfo[MAX_SALONA][saInfo];
  232. new Saloni_Pickup[MAX_SALONA];
  233. new Text3D:Saloni_3D[MAX_SALONA];
  234.  
  235. public ongamemodeinit - ovo ide
  236. for(new said = 1; said < MAX_SALONA; said++)
  237. {
  238. new saFile[50];
  239. format(saFile, sizeof(saFile), SALONI_FILE, said);
  240. if(fexist(saFile))
  241. {
  242. INI_ParseFile(saFile, "UcitajSalone", .bExtra = true, .extra = said);
  243. KreirajSalon(said);
  244. brojsalone ++;
  245. }
  246. }
  247. return 1;
  248. }
  249.  
  250.  
  251. public ongamemodeexit - ovo ide
  252. for(new said = 1; said < sizeof(SaloniInfo); said++)
  253. {
  254. DestroyDynamic3DTextLabel(Saloni_3D[said]);
  255. DestroyDynamicPickup(Saloni_Pickup[said]);
  256. }
  257. return 1;
  258. }
  259.  
  260. public onplayerconnect - ovo ide
  261. ListaVozila[playerid] = -1;
  262. GledaKatalog[playerid] = -1;
  263.  
  264.  
  265. public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
  266. {
  267. if(_:playertextid != INVALID_TEXT_DRAW)
  268. {
  269. if(playertextid == SaloniTD[playerid][6]) //kupi
  270. {
  271. new idsalona = GledaKatalog[playerid], voziloporedu = ListaVozila[playerid], string[240];
  272. if(PlayerInfo[playerid][pLevel] < 3) return Error(playerid, "Morate biti level 3+ za kupovinu vozila!");
  273. if(SaloniInfo[idsalona][saOGModela][voziloporedu] == 0) return Error(playerid, "Trenutno nemamo vise tih modela na prodaju, obavestite admine o ovome!");
  274. if(PlayerInfo[playerid][pNovac] < SaloniInfo[idsalona][saCena][voziloporedu]) return Error(playerid, "Nemate dovoljno novca!");
  275. format(string,sizeof(string), ""BELA"- Jeste li sigurni da zelite da kupite vozilo "CRVENA"%s.\n"BELA"- Cena vozila je "CRVENA"%d$.\n\n"BELA"- Kliknite na 'KUPI' ako zelite da kupite vozilo.\n"BELA"- Kliknite na 'IZLAZ' ako necete da kupite vozilo.",ImenaVozila[SaloniInfo[GledaKatalog[playerid]][saModel][ListaVozila[playerid]] - 400], SaloniInfo[idsalona][saCena][voziloporedu]);
  276. SPD(playerid, D_KUPOVINAVOZILA, DIALOG_STYLE_MSGBOX, ""BELA"Kupovina", string, "Kupi", "Izlaz");
  277. }
  278. if(playertextid == SaloniTD[playerid][7]) //desno
  279. {
  280. if(GledaKatalog[playerid] != -1)
  281. {
  282. if(ListaVozila[playerid] + 1 > 14) return Error(playerid, "Ne mozete vise listati napred jer nema vise vozila u katalogu!");
  283. if(SaloniInfo[GledaKatalog[playerid]][saModel][ListaVozila[playerid]+1] == 0) return Error(playerid, "Nema vise vozila u katalogu!");
  284. ListaVozila[playerid] ++;
  285. if(ListaVozila[playerid] > 14)
  286. {
  287. ListaVozila[playerid] = 14;
  288. }
  289. PodesiSalonTD(playerid);
  290. }
  291. }
  292. if(playertextid == SaloniTD[playerid][9]) //zatvori
  293. {
  294. if(GledaKatalog[playerid] == -1) return Error(playerid, "Ne gledate katalog... (GRESKA - prijavite ovo adminima i idite relog)!");
  295. PrikaziSalonTD(playerid, 2); Error(playerid, "Zatvorili ste katalog!");
  296. }
  297. }
  298. return 1;
  299. }
  300.  
  301. public OnPlayerDeath(playerid, killerid, reason)
  302. {
  303. if(GledaKatalog[playerid] != -1)
  304. {
  305. PrikaziSalonTD(playerid, 2);
  306. }
  307. return 1;
  308. }
  309.  
  310. onplayerkey - ovo ide
  311.  
  312. if(PRESSED(KEY_NO))
  313. {
  314. for(new said = 1; said < MAX_SALONA; said++)
  315. {
  316. if(IsPlayerInRangeOfPoint(playerid, 3.0, SaloniInfo[said][saX], SaloniInfo[said][saY], SaloniInfo[said][saZ]))
  317. {
  318. if(SaloniInfo[said][saPostavljen] == 0) return SCM(playerid, -1, "* "CRVENA"Ovaj salon jos nije u funkciji!");
  319. if(PlayerInfo[playerid][pLevel] < 3) return SCM(playerid, -1, ""CRVENA"Morate biti level 3+ za gledanje kataloga");
  320. if(IsPlayerInAnyVehicle(playerid)) return SCM(playerid, -1, "* "CRVENA"Morate biti van vozila");
  321. if(GledaKatalog[playerid] != -1) return SCM(playerid, -1, "* "CRVENA"Vec gledate katalog");
  322. PrikaziSalonTD(playerid, 1); GledaKatalog[playerid] = said; ListaVozila[playerid] = 0; PodesiSalonTD(playerid);
  323. SCM(playerid, -1, "* "SIVA"Da zatvorite katalog kliknite na X!");
  324. break;
  325. }
  326. }
  327. }
  328. return 1;
  329. }
Advertisement
Add Comment
Please, Sign In to add comment