Cimbur

Untitled

Feb 14th, 2014
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.09 KB | None | 0 0
  1. //=================================INCLUDEs===================================//
  2. #include <a_samp>
  3. #include <YSI\y_ini>
  4. #include <streamer>
  5. #include <YSI\y_commands>
  6. #include <YSI\y_master>
  7. //=============================BOJE===========================================//
  8. #define green 0x00DE28FF
  9. #define green2 0xAFFF00FF
  10. #define darkgreen 0x5FB700FF
  11. #define lightgreen 0x23FF00FF
  12. #define red 0xFF0000FF
  13. #define yellow 0xF5FF00FF
  14. #define darkyellow 0xF5DE00FF
  15. #define orange 0xF5A300FF
  16. #define darkblue 0x0037FFFF
  17. #define blue 0x009BFFFF
  18. #define lightblue 0x00FFF0FF
  19. #define grey 0xB4B4B4FF
  20. #define white 0xF0F0F0FF
  21. #define purple 0x9C00AFFF
  22. #define black 0x0000BBAA
  23. #define BELA "{FFFFFF}"
  24. #define CRVENA "{F81414}"
  25. #define ZUTA "{CCCC33}"
  26. //=============================PRAGMA TABSIZE=================================//
  27. #pragma tabsize 0
  28. //=================================NEWs=======================================//
  29. new Text:registracija1;
  30. new Text:registracija2;
  31. new Text:registracija3;
  32. new Text:registracija4;
  33. new Text:registracija5;
  34. new Text:registracija6;
  35. new Text:registracija7;
  36. new Text:registracija8;
  37. //=====================
  38. new Text:teleportBox;
  39. new Text:teleportDM;
  40. new Text:teleportST;
  41. new Text:teleportVPG;
  42. //=====================
  43.  
  44. //=================================DIALOGs====================================//
  45. #define DIALOG_REGISTER 1
  46. #define DIALOG_LOGIN 2
  47. //========================DEFINEovi SCM,SCMTA=================================//
  48. #define SCM SendClientMessage
  49. #define SCMTA SendClientMessageToAll
  50. //=================================PATHs======================================//
  51. #define PATH "/Korisnici/%s.ini"
  52. //=================================ENUMs======================================//
  53. enum pInfo
  54. {
  55. pRegistrovan,
  56. pLozinka,
  57. pNovac,
  58. pAdmin,
  59. pUbistva,
  60. pSmrti
  61. };
  62.  
  63. new PlayerInfo[MAX_PLAYERS][pInfo];
  64. //=================================STOCKs=====================================//
  65. stock UserPath(playerid)
  66. {
  67. new string[128],playername[MAX_PLAYER_NAME];
  68. GetPlayerName(playerid,playername,sizeof(playername));
  69. format(string,sizeof(string),PATH,playername);
  70. return string;
  71. }
  72.  
  73. stock udb_hash(buf[])
  74. {
  75. new length=strlen(buf);
  76. new s1 = 1;
  77. new s2 = 0;
  78. new n;
  79. for (n=0; n<length; n++)
  80. {
  81. s1 = (s1 + buf[n]) % 65521;
  82. s2 = (s2 + s1) % 65521;
  83. }
  84. return (s2 << 16) + s1;
  85. }
  86.  
  87. //=================================PUBLICs====================================//
  88. public OnGameModeInit()
  89. {
  90. SetGameModeText("RG GM - DM/Stunt");
  91. SendRconCommand("mapname RG City");
  92. //--------------------------------------------------------------
  93. registracija1 = TextDrawCreate(-4,0,"_");
  94. TextDrawLetterSize(registracija1,0.800000,11.700008);
  95. TextDrawAlignment(registracija1,0);
  96. TextDrawBackgroundColor(registracija1,0x000000FF);
  97. TextDrawFont(registracija1,3);
  98. TextDrawUseBox(registracija1,1);
  99. TextDrawBoxColor(registracija1,0x000000FF);
  100. TextDrawTextSize(registracija1,719.000000,31.000000);
  101. TextDrawSetOutline(registracija1,0);
  102. TextDrawSetProportional(registracija1,1);
  103. TextDrawSetShadow(registracija1,1);
  104.  
  105. registracija2 = TextDrawCreate(3,342,"_");
  106. TextDrawLetterSize(registracija2,0.750000,11.800008);
  107. TextDrawAlignment(registracija2,0);
  108. TextDrawBackgroundColor(registracija2,0x000000FF);
  109. TextDrawFont(registracija2,3);
  110. TextDrawUseBox(registracija2,1);
  111. TextDrawBoxColor(registracija2,0x000000FF);
  112. TextDrawTextSize(registracija2,644.000000,350.000000);
  113. TextDrawSetOutline(registracija2,0);
  114. TextDrawSetProportional(registracija2,1);
  115. TextDrawSetShadow(registracija2,1);
  116.  
  117. registracija3 = TextDrawCreate(6,46,"~r~~h~D~w~~h~obrodosli");
  118. TextDrawLetterSize(registracija3,0.550000,1.700000);
  119. TextDrawAlignment(registracija3,0);
  120. TextDrawBackgroundColor(registracija3,0x000000FF);
  121. TextDrawFont(registracija3,3);
  122. TextDrawUseBox(registracija3,0);
  123. TextDrawSetOutline(registracija3,1);
  124. TextDrawSetProportional(registracija3,1);
  125. TextDrawSetShadow(registracija3,1);
  126.  
  127. registracija4 = TextDrawCreate(120,46,"~r~~h~N~w~~h~a");
  128. TextDrawLetterSize(registracija4,0.650000,1.700000);
  129. TextDrawAlignment(registracija4,0);
  130. TextDrawBackgroundColor(registracija4,0x000000FF);
  131. TextDrawFont(registracija4,3);
  132. TextDrawUseBox(registracija4,0);
  133. TextDrawSetOutline(registracija4,1);
  134. TextDrawSetProportional(registracija4,1);
  135. TextDrawSetShadow(registracija4,1);
  136.  
  137. registracija5 = TextDrawCreate(147,70,"~r~~h~R~w~~h~adius ~r~~h~G~w~~h~aming");
  138. TextDrawLetterSize(registracija5,0.500000,1.700000);
  139. TextDrawAlignment(registracija5,0);
  140. TextDrawBackgroundColor(registracija5,0x000000FF);
  141. TextDrawFont(registracija5,3);
  142. TextDrawUseBox(registracija5,0);
  143. TextDrawSetOutline(registracija5,1);
  144. TextDrawSetProportional(registracija5,1);
  145. TextDrawSetShadow(registracija5,1);
  146.  
  147. registracija6 = TextDrawCreate(227,84,"~r~~h~DM~w~~h~/~r~~h~FR");
  148. TextDrawLetterSize(registracija6,0.249999,0.899999);
  149. TextDrawAlignment(registracija6,0);
  150. TextDrawBackgroundColor(registracija6,0x000000FF);
  151. TextDrawFont(registracija6,1);
  152. TextDrawUseBox(registracija6,0);
  153. TextDrawSetOutline(registracija6,1);
  154. TextDrawSetProportional(registracija6,1);
  155. TextDrawSetShadow(registracija6,1);
  156.  
  157. registracija7 = TextDrawCreate(237,428,"~r~~h~V~w~~h~lasnik : ~r~~h~C~w~~h~imbur");
  158. TextDrawLetterSize(registracija7,0.500000,2.100000);
  159. TextDrawAlignment(registracija7,0);
  160. TextDrawBackgroundColor(registracija7,0x000000FF);
  161. TextDrawFont(registracija7,3);
  162. TextDrawUseBox(registracija7,0);
  163. TextDrawSetOutline(registracija7,1);
  164. TextDrawSetProportional(registracija7,1);
  165. TextDrawSetShadow(registracija7,1);
  166.  
  167. registracija8 = TextDrawCreate(249,402,"~r~~h~R~w~~h~egistracija");
  168. TextDrawLetterSize(registracija8,0.550000,1.800000);
  169. TextDrawAlignment(registracija8,0);
  170. TextDrawBackgroundColor(registracija8,0x000000FF);
  171. TextDrawFont(registracija8,3);
  172. TextDrawUseBox(registracija8,0);
  173. TextDrawSetOutline(registracija8,1);
  174. TextDrawSetProportional(registracija8,1);
  175. TextDrawSetShadow(registracija8,1);
  176. //--------------------------------------------------------------
  177. teleportBox = TextDrawCreate(320.000000, 143.000000, "~n~Teleport menu~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~_");
  178. TextDrawAlignment(teleportBox, 2);
  179. TextDrawBackgroundColor(teleportBox, 255);
  180. TextDrawFont(teleportBox, 2);
  181. TextDrawLetterSize(teleportBox, 0.500000, 1.000000);
  182. TextDrawColor(teleportBox, -1);
  183. TextDrawSetOutline(teleportBox, 0);
  184. TextDrawSetProportional(teleportBox, 1);
  185. TextDrawSetShadow(teleportBox, 1);
  186. TextDrawUseBox(teleportBox, 1);
  187. TextDrawBoxColor(teleportBox, 255);
  188. TextDrawTextSize(teleportBox, 45.000000, 115.000000);
  189.  
  190. teleportDM = TextDrawCreate(320.000000, 180.000000, "STUNT~n~Los Santos");
  191. TextDrawAlignment(teleportDM, 2);
  192. TextDrawBackgroundColor(teleportDM, 255);
  193. TextDrawFont(teleportDM, 2);
  194. TextDrawLetterSize(teleportDM, 0.260000, 0.799999);
  195. TextDrawColor(teleportDM, -1);
  196. TextDrawSetOutline(teleportDM, 0);
  197. TextDrawSetProportional(teleportDM, 1);
  198. TextDrawSetShadow(teleportDM, 1);
  199.  
  200. teleportST = TextDrawCreate(320.000000, 205.000000, "DeathMatch~n~Los Santos");
  201. TextDrawAlignment(teleportST, 2);
  202. TextDrawBackgroundColor(teleportST, 255);
  203. TextDrawFont(teleportST, 2);
  204. TextDrawLetterSize(teleportST, 0.260000, 0.799999);
  205. TextDrawColor(teleportST, -1);
  206. TextDrawSetOutline(teleportST, 0);
  207. TextDrawSetProportional(teleportST, 1);
  208. TextDrawSetShadow(teleportST, 1);
  209.  
  210. teleportVPG = TextDrawCreate(320.000000, 230.000000, "Voznja po gradu~n~Los Santos");
  211. TextDrawAlignment(teleportVPG, 2);
  212. TextDrawBackgroundColor(teleportVPG, 255);
  213. TextDrawFont(teleportVPG, 2);
  214. TextDrawLetterSize(teleportVPG, 0.260000, 0.799999);
  215. TextDrawColor(teleportVPG, -1);
  216. TextDrawSetOutline(teleportVPG, 0);
  217. TextDrawSetProportional(teleportVPG, 1);
  218. TextDrawSetShadow(teleportVPG, 1);
  219. //-----------------------------------------------
  220. TextDrawSetSelectable(teleportBox, false);
  221. TextDrawSetSelectable(teleportVPG, true);
  222. TextDrawSetSelectable(teleportST, true);
  223. TextDrawSetSelectable(teleportDM, true);
  224. return 1;
  225. }
  226.  
  227. public OnGameModeExit()
  228. {
  229. TextDrawDestroy(teleportBox);
  230. TextDrawDestroy(teleportVPG);
  231. TextDrawDestroy(teleportST);
  232. TextDrawDestroy(teleportDM);
  233. return 1;
  234. }
  235.  
  236. public OnPlayerRequestClass(playerid, classid)
  237. {
  238. return 1;
  239. }
  240.  
  241. public OnPlayerConnect(playerid)
  242. {
  243. TextDrawShowForPlayer(playerid,registracija1);
  244. TextDrawShowForPlayer(playerid,registracija2);
  245. TextDrawShowForPlayer(playerid,registracija3);
  246. TextDrawShowForPlayer(playerid,registracija4);
  247. TextDrawShowForPlayer(playerid,registracija5);
  248. TextDrawShowForPlayer(playerid,registracija6);
  249. TextDrawShowForPlayer(playerid,registracija7);
  250. TextDrawShowForPlayer(playerid,registracija8);
  251. SetTimerEx("PokaziRegister", 2000, false, "i", playerid);
  252. SetTimerEx("PokaziKameru", 1, false, "i", playerid);
  253. SetTimerEx("ObrisiChet", 1, false, "i", playerid);
  254. TogglePlayerSpectating(playerid, true);
  255. return 1;
  256. }
  257.  
  258. public OnPlayerDisconnect(playerid, reason)
  259. {
  260. new INI:File = INI_Open(UserPath(playerid));
  261. INI_SetTag(File,"data");
  262. INI_WriteInt(File,"Novac",GetPlayerMoney(playerid));
  263. INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
  264. INI_WriteInt(File,"Ubistva",PlayerInfo[playerid][pUbistva]);
  265. INI_WriteInt(File,"Smrti",PlayerInfo[playerid][pSmrti]);
  266. INI_Close(File);
  267. return 1;
  268. }
  269.  
  270. public OnPlayerSpawn(playerid)
  271. {
  272. TextDrawHideForPlayer(playerid,registracija1);
  273. TextDrawHideForPlayer(playerid,registracija2);
  274. TextDrawHideForPlayer(playerid,registracija3);
  275. TextDrawHideForPlayer(playerid,registracija4);
  276. TextDrawHideForPlayer(playerid,registracija5);
  277. TextDrawHideForPlayer(playerid,registracija6);
  278. TextDrawHideForPlayer(playerid,registracija7);
  279. TextDrawHideForPlayer(playerid,registracija8);
  280. return 1;
  281. }
  282.  
  283. public OnPlayerDeath(playerid, killerid, reason)
  284. {
  285. PlayerInfo[killerid][pUbistva]++;
  286. PlayerInfo[playerid][pSmrti]++;
  287. return 1;
  288. }
  289.  
  290. public OnVehicleSpawn(vehicleid)
  291. {
  292. return 1;
  293. }
  294.  
  295. public OnVehicleDeath(vehicleid, killerid)
  296. {
  297. return 1;
  298. }
  299.  
  300. public OnPlayerText(playerid, text[])
  301. {
  302. return 1;
  303. }
  304.  
  305. public OnPlayerCommandText(playerid, cmdtext[])
  306. {
  307. return 1;
  308. }
  309.  
  310. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  311. {
  312. return 1;
  313. }
  314.  
  315. public OnPlayerExitVehicle(playerid, vehicleid)
  316. {
  317. return 1;
  318. }
  319.  
  320. public OnPlayerStateChange(playerid, newstate, oldstate)
  321. {
  322. return 1;
  323. }
  324.  
  325. public OnPlayerEnterCheckpoint(playerid)
  326. {
  327. return 1;
  328. }
  329.  
  330. public OnPlayerLeaveCheckpoint(playerid)
  331. {
  332. return 1;
  333. }
  334.  
  335. public OnPlayerEnterRaceCheckpoint(playerid)
  336. {
  337. return 1;
  338. }
  339.  
  340. public OnPlayerLeaveRaceCheckpoint(playerid)
  341. {
  342. return 1;
  343. }
  344.  
  345. public OnRconCommand(cmd[])
  346. {
  347. return 1;
  348. }
  349.  
  350. public OnPlayerRequestSpawn(playerid)
  351. {
  352. return 1;
  353. }
  354.  
  355. public OnObjectMoved(objectid)
  356. {
  357. return 1;
  358. }
  359.  
  360. public OnPlayerObjectMoved(playerid, objectid)
  361. {
  362. return 1;
  363. }
  364.  
  365. public OnPlayerPickUpPickup(playerid, pickupid)
  366. {
  367. return 1;
  368. }
  369.  
  370. public OnVehicleMod(playerid, vehicleid, componentid)
  371. {
  372. return 1;
  373. }
  374.  
  375. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  376. {
  377. return 1;
  378. }
  379.  
  380. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  381. {
  382. return 1;
  383. }
  384.  
  385. public OnPlayerSelectedMenuRow(playerid, row)
  386. {
  387. return 1;
  388. }
  389.  
  390. public OnPlayerExitedMenu(playerid)
  391. {
  392. return 1;
  393. }
  394.  
  395. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  396. {
  397. return 1;
  398. }
  399.  
  400. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  401. {
  402. return 1;
  403. }
  404.  
  405. public OnRconLoginAttempt(ip[], password[], success)
  406. {
  407. return 1;
  408. }
  409.  
  410. public OnPlayerUpdate(playerid)
  411. {
  412. return 1;
  413. }
  414.  
  415. public OnPlayerStreamIn(playerid, forplayerid)
  416. {
  417. return 1;
  418. }
  419.  
  420. public OnPlayerStreamOut(playerid, forplayerid)
  421. {
  422. return 1;
  423. }
  424.  
  425. public OnVehicleStreamIn(vehicleid, forplayerid)
  426. {
  427. return 1;
  428. }
  429.  
  430. public OnVehicleStreamOut(vehicleid, forplayerid)
  431. {
  432. return 1;
  433. }
  434.  
  435. public OnPlayerClickTextDraw(playerid, Text:clickedid)
  436. {
  437. if(_:clickedid != INVALID_TEXT_DRAW)
  438. {
  439. if(clickedid == teleportDM)
  440. {
  441. SetPlayerPos(playerid, 1630.2030,-2328.9673,13.5469);
  442. SetPlayerFacingAngle(playerid, 0.9392);
  443. }
  444. else if(clickedid == teleportST)
  445. {
  446. SetPlayerPos(playerid, -1424.6083, -290.9622, 14.1484);
  447. SetPlayerFacingAngle(playerid, 134.9570);
  448. }
  449. else if(clickedid == teleportVPG)
  450. {
  451. SetPlayerPos(playerid, 1688.7990, 1447.7753, 10.7675);
  452. SetPlayerFacingAngle(playerid, 267.3902);
  453. }
  454.  
  455. TextDrawHideForPlayer(playerid, teleportBox);
  456. TextDrawHideForPlayer(playerid, teleportDM);
  457. TextDrawHideForPlayer(playerid, teleportST);
  458. TextDrawHideForPlayer(playerid, teleportVPG);
  459. CancelSelectTextDraw(playerid);
  460. }
  461. return 1;
  462. }
  463.  
  464. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  465. {
  466. switch(dialogid)
  467. {
  468. case DIALOG_REGISTER:
  469. {
  470. if(!response) return Kick(playerid);
  471. if(response)
  472. {
  473. if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registracija","Ukucali ste pogresnu lozinku.\nUkucajte ispravnu lozinku da bi se registrovali.","Registruj se","Izadji");
  474. new INI:File = INI_Open(UserPath(playerid));
  475. INI_SetTag(File,"data");
  476. INI_WriteInt(File,"Lozinka",udb_hash(inputtext));
  477. INI_WriteInt(File,"Novac",0);
  478. INI_WriteInt(File,"Admin",0);
  479. INI_WriteInt(File,"Ubistva",0);
  480. INI_WriteInt(File,"Smrti",0);
  481. INI_Close(File);
  482. TogglePlayerSpectating(playerid, false);
  483. SetSpawnInfo(playerid, 0, 29, 1958.33, 1343.12, 15.36, 269.15, 1, 0, 0, 0, 0, 0);
  484. SpawnPlayer(playerid);
  485. SendClientMessage(playerid, -1, "Dobrodosli na Radius Gaming DM/FR Server, nadamo se da cete uzivati.");
  486. }
  487. }
  488. case DIALOG_LOGIN:
  489. {
  490. if(!response) return Kick(playerid);
  491. if(response)
  492. {
  493. if(udb_hash(inputtext) == PlayerInfo[playerid][pLozinka])
  494. {
  495. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  496. TogglePlayerSpectating(playerid, false);
  497. SetSpawnInfo(playerid, 0, 29, 1958.33, 1343.12, 15.36, 269.15, 1, 0, 0, 0, 0, 0);
  498. SpawnPlayer(playerid);
  499. GivePlayerMoney(playerid, PlayerInfo[playerid][pNovac]);
  500. }
  501. else
  502. {
  503. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Prijavljivanje","Ukucali ste pogresnu lozinku.\nUkucajte ispravnu lozinku da bi se ulogovali.","Prijavi se","Izadji");
  504. }
  505. return 1;
  506. }
  507. }
  508. }
  509. return 1;
  510. }
  511.  
  512. forward LoadUser_data(playerid,name[],value[]);
  513. public LoadUser_data(playerid,name[],value[])
  514. {
  515. INI_Int("Lozinka",PlayerInfo[playerid][pLozinka]);
  516. INI_Int("Novac",PlayerInfo[playerid][pNovac]);
  517. INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
  518. INI_Int("Ubistva",PlayerInfo[playerid][pUbistva]);
  519. INI_Int("Smrti",PlayerInfo[playerid][pSmrti]);
  520. return 1;
  521. }
  522.  
  523. forward PokaziRegister(playerid);
  524. public PokaziRegister(playerid)
  525. {
  526. if(fexist(UserPath(playerid)))
  527. {
  528. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  529. new string[250];
  530. new name[MAX_PLAYER_NAME];
  531. GetPlayerName(playerid, name, sizeof(name));
  532. format(string,sizeof(string),"{FA0707}_______________________________\n\n{FAF2F7}Dobrodosao nazad {FA0707}%s, \n\n{FAF2F7}upisi lozinku ako zelis pristupiti\n{FA0707}R{FAF2F7}adius {FA0707}G{FAF2F7}aming {FA0707}S{FAF2F7}erver-u.\n\n{FA0707}_______________________________",name);
  533. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "PRIJAVLJIVANJE", string, "Uredu", "");
  534. }
  535. else
  536. {
  537. new string[250];
  538. new name[MAX_PLAYER_NAME];
  539. GetPlayerName(playerid, name, sizeof(name));
  540. format(string,sizeof(string),"{FA0707}_______________________________\n\n{FAF2F7}Dobrodosao {FA0707}%s, \n\n{FAF2F7}upisi lozinku ako zelis pristupiti\n{FA0707}R{FAF2F7}adius {FA0707}G{FAF2F7}aming {FA0707}S{FAF2F7}erver-u.\n\n{FA0707}_______________________________",name);
  541. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "REGISTRACIJA", string, "Uredu", "");
  542. }
  543. return 1;
  544. }
  545.  
  546. forward ObrisiChet(playerid);
  547. public ObrisiChet(playerid)
  548. {
  549. for(new i = 0; i < 200; i++)
  550. {
  551. SendClientMessage(playerid, -1, " ");
  552. }
  553. return 1;
  554. }
  555.  
  556. forward PokaziKameru(playerid);
  557. public PokaziKameru(playerid)
  558. {
  559. InterpolateCameraPos(playerid, 1713.581176, -2517.539306, 31.030027, 1774.834594, -2484.041503, 31.030027, 4000);
  560. InterpolateCameraLookAt(playerid, 1708.947998, -2519.105957, 29.991094, 1770.360229, -2481.818847, 30.831178, 2000);
  561. return 1;
  562. }
  563. main(){}
  564. //===============================KOMANDE======================================//
  565. YCMD:teleport(playerid, params[], help)
  566. {
  567. #pragma unused help
  568. #pragma unused params
  569. TextDrawShowForPlayer(playerid, teleportBox);
  570. TextDrawShowForPlayer(playerid, teleportDM);
  571. TextDrawShowForPlayer(playerid, teleportST);
  572. TextDrawShowForPlayer(playerid, teleportVPG);
  573. SelectTextDraw(playerid, 0xA3B4C5FF);
  574. return 1;
  575. }
Advertisement
Add Comment
Please, Sign In to add comment