Advertisement
Guest User

Untitled

a guest
Oct 21st, 2017
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.93 KB | None | 0 0
  1. /*
  2. CHANGELOG
  3. -
  4. */
  5.  
  6. #include "a_samp"
  7. #include "sscanf"
  8. #include "izcmd"
  9. #include "streamer"
  10. #include "YSI\y_ini"
  11.  
  12. #include "Script/Textdraws/globaltextdraws.inc"
  13. #include "Script/Textdraws/playertextdraws.inc"
  14. #include "Script/Maps/kreirajobjekte.inc"
  15. #include "Script/Maps/removebuildings.inc"
  16.  
  17. #define mynteres_DEVSTART "July 12 - 2017"
  18. #define mynteres_LASTEDIT "July 12 - 2017"
  19. #define mynteres_FILENAME "Mynteres.pwn"
  20. #define mynteres_DEVNAME "Mickey Edwards"
  21. #define mynteres_SCRIPTV "MYNTERES SCRIPT"
  22.  
  23. #define KORISNICI "Korisnici/%s.ini"
  24.  
  25. #define SERVERCOLOR "{48879C}"
  26. #define SIVA "{BABABA}"
  27.  
  28. #define forwardpublic%0(%1)\
  29. forward%0(%1); public%0(%1)
  30.  
  31. main ()
  32. {
  33.  
  34. printf("Developing started > '%s'\n\
  35. Last edit > '%s'\n\
  36. File name > '%s'\n\
  37. Script version > '%s'\n\
  38. Developer name > '%s'\n", mynteres_DEVSTART,
  39. mynteres_LASTEDIT,
  40. mynteres_FILENAME,
  41. mynteres_SCRIPTV,
  42. mynteres_DEVNAME);
  43. }
  44.  
  45. enum pInfo
  46. {
  47. pPassword[20],
  48. pGodine,
  49. pPorijeklo[8],
  50. pSpol[5]
  51. }
  52. new PlayerInfo[MAX_PLAYERS][pInfo];
  53.  
  54. enum
  55. {
  56. D_LOZINKA,
  57. D_GODINE,
  58. D_PORIJEKLO,
  59. D_SPOL,
  60. D_ODREDISTE,
  61. D_ODABIRKLASE,
  62. D_LOGIN
  63. }
  64.  
  65. new RegisterTimer[MAX_PLAYERS],
  66. Lozinka[MAX_PLAYERS],
  67. bool:UpisanaLozinka[MAX_PLAYERS],
  68. Godine[MAX_PLAYERS],
  69. bool:UpisaneGodine[MAX_PLAYERS],
  70. Spol[MAX_PLAYERS],
  71. bool:OdabranSpol[MAX_PLAYERS],
  72. Porijeklo[MAX_PLAYERS],
  73. bool:OdabranoPorijeklo[MAX_PLAYERS],
  74. KlasaiDestinacija[MAX_PLAYERS],
  75. bool:OdabranaKiD[MAX_PLAYERS],
  76. Avion[MAX_PLAYERS],
  77. RegisterTimer2[MAX_PLAYERS];
  78.  
  79. /*
  80. PUBLICS
  81. */
  82. public OnGameModeInit()
  83. {
  84. SetGameModeText(mynteres_SCRIPTV);
  85. GlobalTextDraws();
  86. KreirajObjekte();
  87. return (true);
  88. }
  89.  
  90. public OnPlayerConnect(playerid)
  91. {
  92. UpisanaLozinka[playerid] = false;
  93. UpisaneGodine[playerid] = false;
  94. OdabranSpol[playerid] = false;
  95. OdabranoPorijeklo[playerid] = false;
  96. OdabranaKiD[playerid] = false;
  97. PlayerTextDraws(playerid);
  98. RemoveBuildings(playerid);
  99. if(fexist(KorisnickiPath(playerid)))
  100. {
  101. ShowPlayerDialog(playerid, D_LOGIN, DIALOG_STYLE_PASSWORD, ""SERVERCOLOR"LOGIN - LOZINKA", ""SIVA"Upisite lozinku koju ste odabrali na registraciji.\n\n"SERVERCOLOR"© MICKEY EDWARDS", "Login", "");
  102. }
  103. else if(!fexist(KorisnickiPath(playerid)))
  104. {
  105. RegisterTimer[playerid] = SetTimerEx("Registracija", 10, false, "d", playerid);
  106. }
  107. return (true);
  108. }
  109.  
  110. public OnPlayerRequestSpawn(playerid)
  111. {
  112. return (false);
  113. }
  114.  
  115. public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
  116. {
  117. if(_:playertextid != INVALID_TEXT_DRAW)
  118. {
  119. if(playertextid == registerPTD[playerid][0])
  120. {
  121. ShowPlayerDialog(playerid, D_LOZINKA, DIALOG_STYLE_PASSWORD, ""SERVERCOLOR"REGISTRACIJA - LOZINKA", ""SIVA"Upisite lozinku koju bi ste koristili na serveru, tj. da se logirate itd..\n\n"SERVERCOLOR"© MICKEY EDWARDS", "Upisi u bazu", "");
  122. }
  123. else if(playertextid == registerPTD[playerid][1])
  124. {
  125. ShowPlayerDialog(playerid, D_GODINE, DIALOG_STYLE_INPUT, ""SERVERCOLOR"REGISTRACIJA - GODINE", ""SIVA"Upisite Vase godine, mozete iz stvarnog zivota a mozete i lazne godine, bilo koji broj da upisete biti ce vidljiv na serveru svima.\n\n"SERVERCOLOR"© MICKEY EDWARDS", "Upisi u bazu", "Izlaz");
  126. }
  127. else if(playertextid == registerPTD[playerid][2])
  128. {
  129. ShowPlayerDialog(playerid, D_SPOL, DIALOG_STYLE_MSGBOX, ""SERVERCOLOR"REGISTRACIJA - LOZINKA", ""SIVA"Kliknite na lijevi box ukoliko ste musko, a na desni ukoliko ste zensko.\n\n"SERVERCOLOR"© MICKEY EDWARDS", "Musko", "Zensko");
  130. }
  131. else if(playertextid == registerPTD[playerid][3])
  132. {
  133. ShowPlayerDialog(playerid, D_PORIJEKLO, DIALOG_STYLE_LIST, ""SERVERCOLOR"REGISTRACIJA - PORIJEKLO", ""SIVA"Bosna i Hercegovina\nHrvatska\nSrbija", "Upis u bazu", "Izlaz");
  134. }
  135. else if(playertextid == registerPTD[playerid][5])
  136. {
  137. ShowPlayerDialog(playerid, D_ODABIRKLASE, DIALOG_STYLE_LIST, ""SERVERCOLOR"REGISTRACIJA - ODABIR KLASE", ""SIVA"Prva klasa, Dobijas 10000$, 30 sekundi, LS\n\
  138. Prva klasa, Dobijas 10000$, 30 sekundi, SF\n\
  139. Prva klasa, Dobijas 10000$, 30 sekundi, LV\n\
  140. Druga klasa, Dobijas 20000$, 90 sekundi, LS\n\
  141. Druga klasa, Dobijas 20000$, 90 sekundi, SF\n\
  142. Druga klasa, Dobijas 20000$, 90 sekundi, LV\n", "Odaberi izbor", "Izlaz");
  143. }
  144. else if(playertextid == registerPTD[playerid][4])
  145. {
  146. if(UpisanaLozinka[playerid] == true && UpisaneGodine[playerid] == true && OdabranSpol[playerid] == true && OdabranoPorijeklo[playerid] == true)
  147. {
  148. if(KlasaiDestinacija[playerid] == 1)
  149. {
  150. SetPlayerVirtualWorld(playerid, 1);
  151. Avion[playerid] = CreateDynamicObjectEx(1681, 1487.08789, -2493.99072, 56.33900, 0.00000, 0.00000, -90.00000, 1000.0, 1000.0);
  152. MoveDynamicObject(Avion[playerid], 1935.58789, -2493.99072, 14.68100, 15.0);
  153. AttachCameraToDynamicObject(playerid, Avion[playerid]);
  154. static string[65];
  155. format(string,sizeof(string),""SERVERCOLOR"[!] > "SIVA"Kakav divan pogled, zar ne %s?", GetName(playerid));
  156. SendClientMessage(playerid, -1, string);
  157. TextDrawHideForPlayer(playerid, registerTD[1]);
  158. TextDrawHideForPlayer(playerid, registerTD[2]);
  159. TextDrawHideForPlayer(playerid, registerTD[3]);
  160. TextDrawHideForPlayer(playerid, registerTD[4]);
  161. TextDrawHideForPlayer(playerid, registerTD[5]);
  162. TextDrawHideForPlayer(playerid, registerTD[6]);
  163. TextDrawHideForPlayer(playerid, registerTD[7]);
  164. TextDrawHideForPlayer(playerid, registerTD[8]);
  165. TextDrawHideForPlayer(playerid, registerTD[9]);
  166. TextDrawHideForPlayer(playerid, registerTD[10]);
  167. for(new i; i < 6; i++)
  168. {
  169. PlayerTextDrawHide(playerid, registerPTD[playerid][i]);
  170. }
  171. printf("%s,%d,%s,%s", Lozinka[playerid],Godine[playerid],Spol[playerid],Porijeklo[playerid]);
  172. new INI:File = INI_Open(KorisnickiPath(playerid));
  173. INI_SetTag(File,"data");
  174. INI_WriteString(File,"Password",Lozinka[playerid]);
  175. INI_WriteInt(File,"Godine",Godine[playerid]);
  176. INI_WriteString(File,"Porijeklo",Porijeklo[playerid]);
  177. INI_WriteString(File,"Spol",Spol[playerid]);
  178. INI_Close(File);
  179. RegisterTimer2[playerid] = SetTimerEx("SpawnIgraca", 30000, false, "d", playerid);
  180. }
  181. else if(KlasaiDestinacija[playerid] == 2)
  182. {
  183. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Beta faza.");
  184. }
  185. else if(KlasaiDestinacija[playerid] == 3)
  186. {
  187. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Beta faza.");
  188. }
  189. else if(KlasaiDestinacija[playerid] == 4)
  190. {
  191. }
  192. else if(KlasaiDestinacija[playerid] == 5)
  193. {
  194. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Beta faza.");
  195. }
  196. else if(KlasaiDestinacija[playerid] == 6)
  197. {
  198. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Beta faza.");
  199. }
  200. }
  201. }
  202. }
  203. return (true);
  204. }
  205.  
  206. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  207. {
  208. switch(dialogid)
  209. {
  210. case D_LOZINKA:
  211. {
  212. if(!response)
  213. {
  214. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Izasli ste iz menua za upisivanje lozinke.");
  215. SelectTextDraw(playerid, 0xBABABAFF);
  216. }
  217. if(strlen(inputtext) <= 5 || strlen(inputtext) >= 21) return SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Prekratka ili predugacka lozinka.");
  218. if(response)
  219. {
  220. strmid(Lozinka[playerid], inputtext, 0, strlen(inputtext), 17);
  221. UpisanaLozinka[playerid] = true;
  222. PlayerTextDrawSetString(playerid, registerPTD[playerid][0], Lozinka[playerid]);
  223. }
  224. }
  225. case D_GODINE:
  226. {
  227. if(!response)
  228. {
  229. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Izasli ste iz menua za upisivanje godina.");
  230. SelectTextDraw(playerid, 0xBABABAFF);
  231. }
  232. new age = strval(inputtext);
  233. if(age <= 9 || age >= 40) return SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Ne mozete upisati 9 ili vise od 40 godina.");
  234. if(response)
  235. {
  236. Godine[playerid] = age;
  237. UpisaneGodine[playerid] = true;
  238. PlayerTextDrawSetString(playerid, registerPTD[playerid][1], inputtext);
  239. }
  240. }
  241. case D_SPOL:
  242. {
  243. if(!response)
  244. {
  245. strmid(Spol[playerid], "ZENSKO", 0, 7, 7);
  246. PlayerTextDrawSetString(playerid, registerPTD[playerid][2], Spol[playerid]);
  247. OdabranSpol[playerid] = true;
  248. }
  249. else
  250. {
  251. strmid(Spol[playerid], "MUSKO", 0, 7, 7);
  252. OdabranSpol[playerid] = true;
  253. PlayerTextDrawSetString(playerid, registerPTD[playerid][2], Spol[playerid]);
  254. }
  255. }
  256. case D_PORIJEKLO:
  257. {
  258. if(!response)
  259. {
  260. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Izasli ste iz menua za odabir porijekla.");
  261. SelectTextDraw(playerid, 0xBABABAFF);
  262. }
  263. if(response)
  264. {
  265. switch(listitem)
  266. {
  267. case 0:
  268. {
  269. strmid(Porijeklo[playerid], "BIH", 0, 4, 4);
  270. PlayerTextDrawSetString(playerid, registerPTD[playerid][3], Porijeklo[playerid]);
  271. OdabranoPorijeklo[playerid] = true;
  272. }
  273. case 1:
  274. {
  275. strmid(Porijeklo[playerid], "SRBIJA", 0, 7, 7);
  276. PlayerTextDrawSetString(playerid, registerPTD[playerid][3], Porijeklo[playerid]);
  277. OdabranoPorijeklo[playerid] = true;
  278. }
  279. case 2:
  280. {
  281. strmid(Porijeklo[playerid], "HRVATSKA", 0, 8, 8);
  282. PlayerTextDrawSetString(playerid, registerPTD[playerid][3], Porijeklo[playerid]);
  283. OdabranoPorijeklo[playerid] = true;
  284. }
  285. }
  286. }
  287. }
  288. case D_ODABIRKLASE:
  289. {
  290. if(!response)
  291. {
  292. SendClientMessage(playerid, -1, ""SERVERCOLOR"[!] > "SIVA"Izasli ste iz menua za odabir klase i destinacije.");
  293. SelectTextDraw(playerid, 0xBABABAFF);
  294. }
  295. if(response)
  296. {
  297. switch(listitem)
  298. {
  299. case 0:
  300. {
  301. PlayerTextDrawSetString(playerid, registerPTD[playerid][5], "PRVA KLASA - LS");
  302. OdabranaKiD[playerid] = true;
  303. KlasaiDestinacija[playerid] = 1;
  304. }
  305. case 1:
  306. {
  307. PlayerTextDrawSetString(playerid, registerPTD[playerid][5], "PRVA KLASA - SF");
  308. OdabranaKiD[playerid] = true;
  309. KlasaiDestinacija[playerid] = 2;
  310. }
  311. case 2:
  312. {
  313. PlayerTextDrawSetString(playerid, registerPTD[playerid][5], "PRVA KLASA - LV");
  314. OdabranaKiD[playerid] = true;
  315. KlasaiDestinacija[playerid] = 3;
  316. }
  317. case 4:
  318. {
  319. PlayerTextDrawSetString(playerid, registerPTD[playerid][5], "EKONOMSKA KLASA - LS");
  320. OdabranaKiD[playerid] = true;
  321. KlasaiDestinacija[playerid] = 4;
  322. }
  323. case 5:
  324. {
  325. PlayerTextDrawSetString(playerid, registerPTD[playerid][5], "EKONOMSKA KLASA - SF");
  326. OdabranaKiD[playerid] = true;
  327. KlasaiDestinacija[playerid] = 5;
  328. }
  329. case 6:
  330. {
  331. PlayerTextDrawSetString(playerid, registerPTD[playerid][5], "EKONOMSKA KLASA - LV");
  332. OdabranaKiD[playerid] = true;
  333. KlasaiDestinacija[playerid] = 6;
  334. }
  335. }
  336. }
  337. }
  338. case D_LOGIN:
  339. {
  340. if(!response) return Kick(playerid);
  341. if(response)
  342. {
  343. if(!strcmp(inputtext, PlayerInfo[playerid][pPassword], false) && !isnull(inputtext))
  344. {
  345. return 1;
  346. }
  347. }
  348. }
  349. }
  350. return (true);
  351. }
  352.  
  353. public OnPlayerDisconnect(playerid, reason)
  354. {
  355. new INI:File = INI_Open(KorisnickiPath(playerid));
  356. INI_SetTag(File,"data");
  357. INI_WriteString(File,"Password",PlayerInfo[playerid][pPassword]);
  358. INI_WriteInt(File,"Godine",PlayerInfo[playerid][pGodine]);
  359. INI_WriteString(File,"Porijeklo",PlayerInfo[playerid][pPorijeklo]);
  360. INI_WriteString(File,"Spol",PlayerInfo[playerid][pSpol]);
  361. INI_Close(File);
  362. return (true);
  363. }
  364. /*
  365. FORWARDS/PUBLICS
  366. */
  367. forwardpublic LoadUser_data(playerid,name[],value[])
  368. {
  369. INI_String("Password",PlayerInfo[playerid][pPassword], 20);
  370. INI_Int("Godine",PlayerInfo[playerid][pGodine]);
  371. INI_String("Porijeklo",PlayerInfo[playerid][pPorijeklo], 8);
  372. INI_String("Spol",PlayerInfo[playerid][pSpol], 5);
  373. return (true);
  374. }
  375.  
  376. forwardpublic Registracija(playerid)
  377. {
  378. InterpolateCameraPos(playerid, 412.151336, 2534.073974, 19.791618, 415.355926, 2532.689941, 20.310920, 25000);
  379. InterpolateCameraLookAt(playerid, 416.327362, 2536.696044, 18.963417, 416.063751, 2537.184814, 18.238645, 25000);
  380. SetPlayerPos(playerid, 414.9527,2535.4968,19.1485);
  381. SetPlayerFacingAngle(playerid, 360.0);
  382. SetPlayerVirtualWorld(playerid, playerid+1);
  383. SetPlayerAttachedObject(playerid, 0, 1210, 6,0.3,0.1,0,0,-90,0);
  384. KillTimer(RegisterTimer[playerid]);
  385. for(new i; i < 11; i++)
  386. {
  387. TextDrawShowForPlayer(playerid, registerTD[i]);
  388. }
  389. for(new i; i < 6; i++)
  390. {
  391. PlayerTextDrawShow(playerid, registerPTD[playerid][i]);
  392. }
  393. SelectTextDraw(playerid, 0xBABABAFF);
  394. return (true);
  395. }
  396.  
  397. forwardpublic SpawnIgraca(playerid)
  398. {
  399. SetSpawnInfo(playerid, 0, 29, 1900.7935,-1682.1819,13.49890, 0, 0, 0, 0, 0, 0, 0);
  400. SetPlayerFacingAngle(playerid, 0);
  401. SpawnPlayer(playerid);
  402. KillTimer(RegisterTimer2[playerid]);
  403. TogglePlayerControllable(playerid, true);
  404. DestroyDynamicObject(Avion[playerid]);
  405. TextDrawHideForPlayer(playerid, registerTD[0]);
  406. CancelSelectTextDraw(playerid);
  407. return (true);
  408. }
  409. /*
  410. FUNCTIONS
  411. */
  412.  
  413. GetName(playerid)
  414. {
  415. static name[MAX_PLAYER_NAME];
  416. GetPlayerName(playerid, name, sizeof(name));
  417. return (name);
  418. }
  419.  
  420. KorisnickiPath(playerid)
  421. {
  422. static string[25];
  423. format(string,sizeof(string),KORISNICI,GetName(playerid));
  424. return (string);
  425. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement