Advertisement
Guest User

Untitled

a guest
Sep 6th, 2010
296
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.07 KB | None | 0 0
  1. /* Navigation Filterscript © 2010 by ZKX v1.1
  2.  
  3. >>>>>>>>>>>>>>>>Credits<<<<<<<<<<<<<<<<
  4. ZKX for creating this Include!
  5. SA:MP for Function list!
  6. CuervO_NegrO for floatsqroot!
  7. >>>>>>>>>>>>>>>>Credits<<<<<<<<<<<<<<<<
  8.  
  9. native ZKX_OnGameModeInit();
  10. native ZKX_OnPlayerConnect(playerid);
  11. native ZKX_OnPlayerStateChange(playerid, newstate);
  12. native ZKX_SetGPSSystemOn(playerid);
  13. native ZKX_SetGPSSystemOff(playerid);
  14. native ZKX_SetRoute(playerid, Float:x1, Float:y1, Float:z1);
  15. */
  16. #include <a_samp>
  17. #pragma tabsize 0
  18.  
  19. new Text:ZKX_TD_Titel[MAX_PLAYERS],Text:ZKX_TD_GPSBox[MAX_PLAYERS],Text:ZKX_TD_Distanz[MAX_PLAYERS],Text:ZKX_TD_SLinks[MAX_PLAYERS],Text:ZKX_TD_SRechts[MAX_PLAYERS];
  20. new Text:ZKX_TD_Wenden[MAX_PLAYERS],Text:ZKX_TD_Geradeaus[MAX_PLAYERS],Text:ZKX_TD_Ziel[MAX_PLAYERS],Text:ZKX_TD_Links[MAX_PLAYERS],Text:ZKX_TD_Rechts[MAX_PLAYERS];
  21.  
  22. enum ZKX_Zielort_
  23. {
  24. Float:GPS_X,
  25. Float:GPS_Y,
  26. Float:GPS_Z
  27. };
  28. new Float:ZKX_Zielort[MAX_PLAYERS][ZKX_Zielort_],z_Navi_ON[MAX_PLAYERS];
  29.  
  30. forward ZKX_GPSTimer();
  31. forward ZKX_SetRoute(playerid, Float:x1, Float:y1, Float:z1);
  32.  
  33.  
  34. public OnGameModeInit()
  35. {
  36. SetTimer("ZKX_GPSTimer",250,true);
  37. return 1;
  38. }
  39.  
  40. public OnPlayerConnect(playerid)
  41. {
  42. ZKX_TD_Titel[playerid] = TextDrawCreate(40.000000,279.000000,"~y~]~w~GPS System~y~]");
  43. ZKX_TD_GPSBox[playerid] = TextDrawCreate(35.000000,287.000000,".");
  44. ZKX_TD_Distanz[playerid] = TextDrawCreate(70.000000,298.000000,"5000~n~Meter");
  45. ZKX_TD_SLinks[playerid] = TextDrawCreate(34.000000,299.000000,"~<~~<~");
  46. ZKX_TD_SRechts[playerid] = TextDrawCreate(118.000000,299.000000,"~>~~>~");
  47. ZKX_TD_Links[playerid] = TextDrawCreate(48.000000,299.000000,"~<~");
  48. ZKX_TD_Rechts[playerid] = TextDrawCreate(118.000000,299.000000,"~>~");
  49. ZKX_TD_Wenden[playerid] = TextDrawCreate(85.000000,317.000000,"~d~");
  50. ZKX_TD_Geradeaus[playerid] = TextDrawCreate(86.000000,289.000000,"~u~");
  51. ZKX_TD_Ziel[playerid] = TextDrawCreate(55.000000,303.000000,"Ziel erreicht!");
  52. TextDrawUseBox(Text:ZKX_TD_GPSBox[playerid],1);
  53. TextDrawBoxColor(Text:ZKX_TD_GPSBox[playerid],0x00000099);
  54. TextDrawTextSize(Text:ZKX_TD_GPSBox[playerid],142.000000,0.000000);
  55. TextDrawAlignment(Text:ZKX_TD_Titel[playerid],0);
  56. TextDrawAlignment(Text:ZKX_TD_GPSBox[playerid],0);
  57. TextDrawAlignment(Text:ZKX_TD_Distanz[playerid],0);
  58. TextDrawAlignment(Text:ZKX_TD_SLinks[playerid],0);
  59. TextDrawAlignment(Text:ZKX_TD_SRechts[playerid],0);
  60. TextDrawAlignment(Text:ZKX_TD_Links[playerid],0);
  61. TextDrawAlignment(Text:ZKX_TD_Rechts[playerid],0);
  62. TextDrawAlignment(Text:ZKX_TD_Wenden[playerid],0);
  63. TextDrawAlignment(Text:ZKX_TD_Geradeaus[playerid],0);
  64. TextDrawAlignment(Text:ZKX_TD_Ziel[playerid],0);
  65. TextDrawBackgroundColor(Text:ZKX_TD_Titel[playerid],0x000000ff);
  66. TextDrawBackgroundColor(Text:ZKX_TD_GPSBox[playerid],0x000000ff);
  67. TextDrawBackgroundColor(Text:ZKX_TD_Distanz[playerid],0x000000ff);
  68. TextDrawBackgroundColor(Text:ZKX_TD_SLinks[playerid],0x000000ff);
  69. TextDrawBackgroundColor(Text:ZKX_TD_SRechts[playerid],0x000000ff);
  70. TextDrawBackgroundColor(Text:ZKX_TD_Links[playerid],0x000000ff);
  71. TextDrawBackgroundColor(Text:ZKX_TD_Rechts[playerid],0x000000ff);
  72. TextDrawBackgroundColor(Text:ZKX_TD_Wenden[playerid],0x000000ff);
  73. TextDrawBackgroundColor(Text:ZKX_TD_Geradeaus[playerid],0x000000ff);
  74. TextDrawBackgroundColor(Text:ZKX_TD_Ziel[playerid],0x000000ff);
  75. TextDrawFont(Text:ZKX_TD_Titel[playerid],2);
  76. TextDrawLetterSize(Text:ZKX_TD_Titel[playerid],0.299999,1.300000);
  77. TextDrawFont(Text:ZKX_TD_GPSBox[playerid],1);
  78. TextDrawLetterSize(Text:ZKX_TD_GPSBox[playerid],-0.000000,4.400000);
  79. TextDrawFont(Text:ZKX_TD_Distanz[playerid],1);
  80. TextDrawLetterSize(Text:ZKX_TD_Distanz[playerid],0.399999,1.000000);
  81. TextDrawFont(Text:ZKX_TD_SLinks[playerid],3);
  82. TextDrawLetterSize(Text:ZKX_TD_SLinks[playerid],1.000000,1.400000);
  83. TextDrawFont(Text:ZKX_TD_SRechts[playerid],3);
  84. TextDrawLetterSize(Text:ZKX_TD_SRechts[playerid],0.599999,1.400000);
  85. TextDrawFont(Text:ZKX_TD_Links[playerid],3);
  86. TextDrawLetterSize(Text:ZKX_TD_Links[playerid],1.000000,1.400000);
  87. TextDrawFont(Text:ZKX_TD_Rechts[playerid],3);
  88. TextDrawLetterSize(Text:ZKX_TD_Rechts[playerid],1.000000,1.400000);
  89. TextDrawFont(Text:ZKX_TD_Wenden[playerid],1);
  90. TextDrawLetterSize(Text:ZKX_TD_Wenden[playerid],0.299999,1.000000);
  91. TextDrawFont(Text:ZKX_TD_Geradeaus[playerid],3);
  92. TextDrawLetterSize(Text:ZKX_TD_Geradeaus[playerid],1.000000,1.000000);
  93. TextDrawFont(Text:ZKX_TD_Ziel[playerid],2);
  94. TextDrawLetterSize(Text:ZKX_TD_Ziel[playerid],0.199999,0.799999);
  95. TextDrawColor(Text:ZKX_TD_Titel[playerid],0xffffffff);
  96. TextDrawColor(Text:ZKX_TD_GPSBox[playerid],0xffffffff);
  97. TextDrawColor(Text:ZKX_TD_Distanz[playerid],0xffffff99);
  98. TextDrawColor(Text:ZKX_TD_SLinks[playerid],0xffffffff);
  99. TextDrawColor(Text:ZKX_TD_SRechts[playerid],0xffffffff);
  100. TextDrawColor(Text:ZKX_TD_Links[playerid],0xffffffff);
  101. TextDrawColor(Text:ZKX_TD_Rechts[playerid],0xffffffff);
  102. TextDrawColor(Text:ZKX_TD_Wenden[playerid],0xffffffff);
  103. TextDrawColor(Text:ZKX_TD_Geradeaus[playerid],0xffffffff);
  104. TextDrawColor(Text:ZKX_TD_Ziel[playerid],0x00ff00ff);
  105. TextDrawSetOutline(Text:ZKX_TD_Titel[playerid],1);
  106. TextDrawSetOutline(Text:ZKX_TD_GPSBox[playerid],1);
  107. TextDrawSetOutline(Text:ZKX_TD_Distanz[playerid],1);
  108. TextDrawSetOutline(Text:ZKX_TD_SLinks[playerid],1);
  109. TextDrawSetOutline(Text:ZKX_TD_SRechts[playerid],1);
  110. TextDrawSetOutline(Text:ZKX_TD_Links[playerid],1);
  111. TextDrawSetOutline(Text:ZKX_TD_Rechts[playerid],1);
  112. TextDrawSetOutline(Text:ZKX_TD_Wenden[playerid],1);
  113. TextDrawSetOutline(Text:ZKX_TD_Geradeaus[playerid],1);
  114. TextDrawSetOutline(Text:ZKX_TD_Ziel[playerid],1);
  115. TextDrawSetProportional(Text:ZKX_TD_Titel[playerid],1);
  116. TextDrawSetProportional(Text:ZKX_TD_GPSBox[playerid],1);
  117. TextDrawSetProportional(Text:ZKX_TD_Distanz[playerid],1);
  118. TextDrawSetProportional(Text:ZKX_TD_SLinks[playerid],1);
  119. TextDrawSetProportional(Text:ZKX_TD_SRechts[playerid],1);
  120. TextDrawSetProportional(Text:ZKX_TD_Links[playerid],1);
  121. TextDrawSetProportional(Text:ZKX_TD_Rechts[playerid],1);
  122. TextDrawSetProportional(Text:ZKX_TD_Wenden[playerid],1);
  123. TextDrawSetProportional(Text:ZKX_TD_Geradeaus[playerid],1);
  124. TextDrawSetProportional(Text:ZKX_TD_Ziel[playerid],1);
  125. TextDrawSetShadow(Text:ZKX_TD_Titel[playerid],1);
  126. TextDrawSetShadow(Text:ZKX_TD_GPSBox[playerid],1);
  127. TextDrawSetShadow(Text:ZKX_TD_Distanz[playerid],1);
  128. TextDrawSetShadow(Text:ZKX_TD_SLinks[playerid],1);
  129. TextDrawSetShadow(Text:ZKX_TD_SRechts[playerid],1);
  130. TextDrawSetShadow(Text:ZKX_TD_Links[playerid],1);
  131. TextDrawSetShadow(Text:ZKX_TD_Rechts[playerid],1);
  132. TextDrawSetShadow(Text:ZKX_TD_Wenden[playerid],1);
  133. TextDrawSetShadow(Text:ZKX_TD_Geradeaus[playerid],1);
  134. TextDrawSetShadow(Text:ZKX_TD_Ziel[playerid],1);
  135. z_Navi_ON[playerid] = 0;
  136. return 1;
  137. }
  138.  
  139. public OnPlayerStateChange(playerid, newstate)
  140. {
  141. if(newstate == PLAYER_STATE_DRIVER)
  142. {
  143. if(z_Navi_ON[playerid] == 1)
  144. {
  145. TextDrawShowForPlayer(playerid,Text:ZKX_TD_Titel[playerid]);
  146. TextDrawShowForPlayer(playerid,Text:ZKX_TD_GPSBox[playerid]);
  147. TextDrawShowForPlayer(playerid,Text:ZKX_TD_Distanz[playerid]);
  148.  
  149. }
  150. }
  151. return 1;
  152. }
  153.  
  154. ZKX_SetGPSSystemOn(playerid)
  155. {
  156. z_Navi_ON[playerid] = 1;
  157. return 1;
  158. }
  159.  
  160. ZKX_SetGPSSystemOff(playerid)
  161. {
  162. z_Navi_ON[playerid] = 0;
  163. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Titel[playerid]);
  164. TextDrawHideForPlayer(playerid, Text:ZKX_TD_GPSBox[playerid]);
  165. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Distanz[playerid]);
  166. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  167. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  168. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  169. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  170. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  171. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  172. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  173. return 1;
  174. }
  175.  
  176. public ZKX_GPSTimer()
  177. {
  178. for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
  179. {
  180. if(IsPlayerConnected(playerid))
  181. {
  182. if(IsPlayerInAnyVehicle(playerid))
  183. {
  184. if(z_Navi_ON[playerid] == 1)
  185. {
  186. z_Navi_ON[playerid] = 1;
  187. ZKX_SetRoute(playerid,ZKX_Zielort[playerid][GPS_X],ZKX_Zielort[playerid][GPS_Y],ZKX_Zielort[playerid][GPS_Z]);
  188. }
  189. else if(z_Navi_ON[playerid] == 0)
  190. {
  191. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Titel[playerid]);
  192. TextDrawHideForPlayer(playerid, Text:ZKX_TD_GPSBox[playerid]);
  193. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Distanz[playerid]);
  194. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  195. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  196. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  197. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  198. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  199. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  200. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  201. return 1;
  202. }
  203. return 1;
  204. }
  205.  
  206. }
  207. }
  208. return 1;
  209. }
  210.  
  211. stock ZKX_SetRoute(playerid, Float:x1, Float:y1, Float:z1)
  212. {
  213. ZKX_Zielort[playerid][GPS_X] = x1;
  214. ZKX_Zielort[playerid][GPS_Y] = y1;
  215. ZKX_Zielort[playerid][GPS_Z] = z1;
  216. if(IsPlayerInAnyVehicle(playerid)&&z_Navi_ON[playerid] == 1)
  217. {
  218. TextDrawShowForPlayer(playerid, Text:ZKX_TD_GPSBox[playerid]);
  219. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Titel[playerid]);
  220. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Distanz[playerid]);
  221.  
  222. new Float:zAchse1,Float:zAchse2,Float:sDistanz,Float:x2, Float:y2, Float:z2,Distanzstring[256],Float:Richtung;
  223. GetVehiclePos(GetPlayerVehicleID(playerid), x2, y2, z2);
  224. GetVehicleZAngle(GetPlayerVehicleID(playerid), zAchse1);
  225. sDistanz = floatsqroot(floatpower(floatabs(floatsub(x1,x2)),2)+floatpower(floatabs(floatsub(y1,y2)),2)+floatpower(floatabs(floatsub(z1,z2)),2));
  226. if( (y1-y2) >= 0.0) zAchse2 = acos((x1-x2)/sDistanz) - 90;
  227. else zAchse2 = 270 - acos((x1-x2)/sDistanz);
  228.  
  229. Richtung = 360.0 - zAchse1 + zAchse2;
  230. if(Richtung >= 360.0) Richtung = Richtung - 360.0;
  231. else if(Richtung < 0.0) Richtung = Richtung + 360.0;
  232.  
  233. format(Distanzstring,sizeof(Distanzstring),"%d ~n~Meter", floatround(sDistanz));
  234. TextDrawSetString(Text:ZKX_TD_Distanz[playerid],Distanzstring);
  235. if(floatround(sDistanz) <= 25)
  236. {
  237. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  238. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Distanz[playerid]);
  239. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  240. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  241. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  242. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  243. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  244. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  245. return 0;
  246. }
  247. if(Richtung >= 330.0 || Richtung < 30.0)// ^^
  248. {
  249. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  250. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  251. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  252. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  253. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  254. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  255. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  256. }
  257. else if(Richtung >= 30.0 && Richtung < 60.0)// <
  258. {
  259. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  260. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  261. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  262. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  263. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  264. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  265. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  266. }
  267. else if(Richtung >= 60.0 && Richtung < 100.0)// <<
  268. {
  269. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  270. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  271. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  272. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  273. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  274. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  275. TextDrawShowForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  276. }
  277. else if(Richtung >= 100.0 && Richtung < 150.0)// v>
  278. {
  279. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  280. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  281. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  282. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  283. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  284. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  285. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  286. }
  287. else if(Richtung >= 150.0 && Richtung < 210.0)// vv
  288. {
  289. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  290. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  291. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  292. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  293. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  294. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  295. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  296. }
  297. else if(Richtung >= 210.0 && Richtung < 260.0)// >v
  298. {
  299. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  300. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  301. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  302. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  303. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  304. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  305. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  306. }
  307. else if(Richtung >= 260.0 && Richtung < 300.0)// >>
  308. {
  309. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  310. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  311. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  312. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  313. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  314. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  315. TextDrawShowForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  316. }
  317. else if(Richtung >= 300.0 && Richtung < 330.0)// >
  318. {
  319. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SLinks[playerid]);
  320. TextDrawHideForPlayer(playerid, Text:ZKX_TD_SRechts[playerid]);
  321. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Links[playerid]);
  322. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Geradeaus[playerid]);
  323. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Wenden[playerid]);
  324. TextDrawHideForPlayer(playerid, Text:ZKX_TD_Ziel[playerid]);
  325. TextDrawShowForPlayer(playerid, Text:ZKX_TD_Rechts[playerid]);
  326. }
  327. }
  328. else
  329. {
  330. z_Navi_ON[playerid] = 0;
  331. }
  332. return 1;
  333. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement