Advertisement
Guest User

Untitled

a guest
Dec 25th, 2017
173
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Copyrighted by Caupo Helvik
  2. // Copying or editing this code is forbidden!
  3.  
  4. var connected = false;
  5. var mainBlip = null;
  6. var locationBlip = null;
  7. var currentMoney = 0;
  8. var currentFuel = 0;
  9. var currentOctane = 0;
  10. var vehicleOctane = 0;
  11. var primaryBlip = null;
  12. var secondBlip = null;
  13. var fishNetBlip1 = null;
  14. var fishNetBlip2 = null;
  15. var nextCheckpointMarker = null;
  16. var nextCheckpointDir = null;
  17. var racePosition = null;
  18. var player = API.getLocalPlayer();
  19. var temp_marker = null;
  20. var count = 0;
  21. var g_menu = API.createMenu("Riietepood", "Skin", 0, 0, 6);
  22. var menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  23. var testList = new List(String);
  24. var money_label = null;
  25. var money_label_shadow = null;
  26. var menuIdx = 0;
  27. var userInput = "";
  28. var actionType = 0;
  29. var canFuel = 0; // NOTE (Caupo 26.02.2017): This value is set when gasstation menu is prompt.
  30. var locations = null;
  31. var tplocations = null;
  32. var browser = null;
  33. var loggedIn = false;
  34. var res = API.getScreenResolution();
  35. var productMinPrice = 0;
  36. var productMaxPrice = 0;
  37. var food = 0;
  38. var freewill = 0;
  39. var incrementerSpeedCounter = 0;
  40. var normalspeed = 0.005;
  41. var deathTime = 0;
  42. var currentHospitalTime = 0;
  43. var currentJailTime = 0;
  44. var currentAJailTime = 0;
  45. var givingTo = null;
  46. var dropping = false;
  47. var maxCamOffset = 2.5;
  48. var currentCamOffset = 2.5;
  49. var loginState = -1;
  50. var nearCartheftJob = false;
  51. var cartheftJob = new Vector3(816.1501, -2982.424, 6.020654);
  52. var globalCameraPos = new Vector3(-1836.076, -1552.769, 21.25781);
  53. var globalCameraRot = new Vector3(0, 0, -40.0);
  54. var cefShown = false;
  55. var kickMeDelayed = false;
  56. var kickDelay = 3;
  57. var keyTime = 1000;
  58. var deathMarkerTime = 1000 * 120;
  59. var keyTimePressed = 0;
  60. var blockKey = -1;
  61. var isInCar = 0;
  62. var freezed = 0;
  63. var skinList = new List(String);
  64. var skinListCount = 0;
  65. var resourceStartedTime = 0;
  66. var isTowing = false;
  67. var towwed = null;
  68. var towwingVehicle = null;
  69. var uid = 0;
  70. var username = "";
  71. var selectingChar = false;
  72. var isVehicleInWater = false;
  73. var totalPlayers = 0;
  74. var CurrentResXPos = 1920;
  75. var CurrentResYPos = 1080;
  76. var toggledCanvas = false;
  77. var odometer = 0;
  78. var updateSettingsIndexes = 0;
  79. var chosenClothMenu = "";
  80.  
  81. var tattoo1 = 0;
  82. var tattoo2 = 0;
  83. var tattoo3 = 0;
  84. var tattoo4 = 0;
  85. var tattoo5 = 0;
  86. var tattoo6 = 0;
  87. var tattoo7 = 0;
  88. var tattoo8 = 0;
  89. var tattoo9 = 0;
  90. var tattoo10 = 0;
  91.  
  92. var beard = 0;
  93. var beardColor = 0;
  94.  
  95. var selectedCategory = 0;
  96. var selectedObjIdx = 0;
  97. var objcategorys = null;
  98. var objcategorysCount = 0;
  99. var objpresets = null;
  100. var objpresetsCount = 0;
  101. var selectingObjWithCursor = false;
  102. var selectingVehicleWithCursor = false;
  103. var selectingWithCursorType = 0;
  104.  
  105. var SELECT_TYPE_OBJECT = 16;
  106. var SELECT_TYPE_PLAYER = 12;
  107. var SELECT_TYPE_VEHICLE = 10;
  108.  
  109. var lastDoor = null;
  110. var lastDoorV = 0;
  111. var lastVehicle = null;
  112. var lastVehicleV = 0;
  113.  
  114. var noAccelereationPos = null;
  115.  
  116. var spikestrips = null;
  117. var spikestripsTotal = 0;
  118. var spiked = 0;
  119.  
  120. var movingObj = false;
  121. var selectedObj = 0;
  122. var isSpaceBeingPressed = false;
  123. var isShiftBeingPressed = false;
  124. var objPosValue = 0.05;
  125. var objRotValue = 0.2;
  126.  
  127. var deathMarkerIdx = 0;
  128. var deathMarkers = [];
  129. var deathMarkersTime = [];
  130. var deathMarkersSupportUpTo = 50;
  131.  
  132. var fireHazardMarkers = [];
  133. var maxFireHazardMarkers = 10;
  134. var currentHazardMarker = 0;
  135.  
  136. var carStealingMarkerIdx = 0;
  137. var carStealingMarkers = [];
  138. var carStealingMarkersSupportUpTo = 50;
  139.  
  140. var ACCURATION_OF_FONT_SIZE = 0.05;
  141. var setting_update_speed = 10;
  142. var setting_show_speed = 1;
  143. var setting_show_vehicle_health = 1;
  144. var setting_show_vehicle_fuel = 1;
  145. var setting_hud_width = 26;
  146. var setting_hud_height = 199;
  147. var setting_font = 1;
  148. var setting_font_size = 1;
  149. var setting_font_size_input = 1;
  150. var setting_speedometer_in_lower_hud = 1;
  151.  
  152. var chosenSetting = 0;
  153.  
  154. var setting_money_font_size_display = 1;
  155. var setting_money_font_size = 0;
  156. var setting_money_font_style = 0;
  157. var setting_money_color_r = 0;
  158. var setting_money_color_g = 0;
  159. var setting_money_color_b = 0;
  160. var setting_money_pos_x = 0;
  161. var setting_money_pos_y = 0;
  162. var setting_money_opacity = 0;
  163.  
  164. var setting_food_font_size_display = 1;
  165. var setting_food_font_size = 0;
  166. var setting_food_font_style = 0;
  167. var setting_food_color_r = 0;
  168. var setting_food_color_g = 0;
  169. var setting_food_color_b = 0;
  170. var setting_food_pos_x = 0;
  171. var setting_food_pos_y = 0;
  172. var setting_food_opacity = 0;
  173.  
  174. var setting_speed_font_size_display = 1;
  175. var setting_speed_font_size = 0;
  176. var setting_speed_font_style = 0;
  177. var setting_speed_color_r = 0;
  178. var setting_speed_color_g = 0;
  179. var setting_speed_color_b = 0;
  180. var setting_speed_pos_x = 0;
  181. var setting_speed_pos_y = 0;
  182. var setting_speed_opacity = 0;
  183.  
  184. var setting_fuel_font_size_display = 1;
  185. var setting_fuel_font_size = 0;
  186. var setting_fuel_font_style = 0;
  187. var setting_fuel_color_r = 0;
  188. var setting_fuel_color_g = 0;
  189. var setting_fuel_color_b = 0;
  190. var setting_fuel_pos_x = 0;
  191. var setting_fuel_pos_y = 0;
  192. var setting_fuel_opacity = 0;
  193.  
  194. var setting_vehhp_font_size_display = 1;
  195. var setting_vehhp_font_size = 0;
  196. var setting_vehhp_font_style = 0;
  197. var setting_vehhp_color_r = 0;
  198. var setting_vehhp_color_g = 0;
  199. var setting_vehhp_color_b = 0;
  200. var setting_vehhp_pos_x = 0;
  201. var setting_vehhp_pos_y = 0;
  202. var setting_vehhp_opacity = 0;
  203.  
  204. var setting_counter_font_size_display = 1;
  205. var setting_counter_font_size = 0;
  206. var setting_counter_font_style = 0;
  207. var setting_counter_color_r = 0;
  208. var setting_counter_color_g = 0;
  209. var setting_counter_color_b = 0;
  210. var setting_counter_pos_x = 0;
  211. var setting_counter_pos_y = 0;
  212. var setting_counter_opacity = 0;
  213.  
  214. var setting_notification_font_size_display = 1;
  215. var setting_notification_font_size = 0;
  216. var setting_notification_font_style = 0;
  217. var setting_notification_color_r = 0;
  218. var setting_notification_color_g = 0;
  219. var setting_notification_color_b = 0;
  220. var setting_notification_pos_x = 0;
  221. var setting_notification_pos_y = 0;
  222. var setting_notification_opacity = 0;
  223.  
  224. var setting_refreshrate = 0;
  225.  
  226. var setting_odometer_font_size_display = 1;
  227. var setting_odometer_font_size = 0;
  228. var setting_odometer_font_style = 0;
  229. var setting_odometer_color_r = 0;
  230. var setting_odometer_color_g = 0;
  231. var setting_odometer_color_b = 0;
  232. var setting_odometer_pos_x = 0;
  233. var setting_odometer_pos_y = 0;
  234. var setting_odometer_opacity = 0;
  235.  
  236. var setting_minigame_font_size_display = 1;
  237. var setting_minigame_font_size = 0;
  238. var setting_minigame_font_style = 0;
  239. var setting_minigame_color_r = 0;
  240. var setting_minigame_color_g = 0;
  241. var setting_minigame_color_b = 0;
  242. var setting_minigame_pos_x = 0;
  243. var setting_minigame_pos_y = 0;
  244. var setting_minigame_opacity = 0;
  245.  
  246. var setting_compass_font_size_display = 1;
  247. var setting_compass_font_size = 0;
  248. var setting_compass_font_style = 0;
  249. var setting_compass_color_r = 0;
  250. var setting_compass_color_g = 0;
  251. var setting_compass_color_b = 0;
  252. var setting_compass_pos_x = 0;
  253. var setting_compass_pos_y = 0;
  254. var setting_compass_opacity = 0;
  255.  
  256. var hudOptionSizeList = new List(String);
  257. var hudOptionStyleList = new List(String);
  258. var hudOptionColorList = new List(String);
  259. var hudOptionXList = new List(String);
  260. var hudOptionYList = new List(String);
  261. var hudRefreshrateList = new List(String);
  262.  
  263. hudOptionStyleList.Add("C.London");
  264. hudOptionStyleList.Add("H.Script");
  265. hudOptionStyleList.Add("Monospace");
  266. hudOptionStyleList.Add("C.C.Colonge");
  267. hudOptionStyleList.Add("Pricedown");
  268.  
  269. var fontSizeOptions = 30;
  270.  
  271. for (var i = 0; i <= 255; i++) {
  272.     hudOptionColorList.Add("[" + i + " - 255]");
  273. }
  274. for (var i = 0; i <= fontSizeOptions; i++) {
  275.     hudOptionSizeList.Add("[" + i + " - " + fontSizeOptions + "]");
  276. }
  277. for (var i = 0; i < CurrentResXPos; i++) {
  278.     hudOptionXList.Add("[" + i + "-" + (CurrentResXPos - 1) + "]");
  279. }
  280. for (var i = 0; i < CurrentResYPos; i++) {
  281.     hudOptionYList.Add("[" + i + "-" + (CurrentResYPos - 1) + "]");
  282. }
  283. for (var i = 0; i < 60; i++) {
  284.     hudRefreshrateList.Add("[" + i + "-59]");
  285. }
  286.  
  287. var CHOSEN_SETTING_IDX_MONEY = 1;
  288. var CHOSEN_SETTING_IDX_FOOD = 2;
  289. var CHOSEN_SETTING_IDX_SPEED = 3;
  290. var CHOSEN_SETTING_IDX_FUEL = 4;
  291. var CHOSEN_SETTING_IDX_VEHHP = 5;
  292. var CHOSEN_SETTING_IDX_COUNTER = 6;
  293. var CHOSEN_SETTING_IDX_NOTIFICATION = 7;
  294. var CHOSEN_SETTING_IDX_ODOMETER = 8;
  295. var CHOSEN_SETTING_IDX_MINIGAME = 9;
  296. var CHOSEN_SETTING_IDX_COMPASS = 10;
  297.  
  298. var STR_FONT_SIZE = "Kirjasuurus";
  299. var STR_FONT_STYLE = "Stiil";
  300. var STR_COLOR_R = "~r~Color R";
  301. var STR_COLOR_G = "~g~Color G";
  302. var STR_COLOR_B = "~b~Color B";
  303. var STR_POS_X = "~y~Pos X";
  304. var STR_POS_Y = "~y~Pos Y";
  305. var STR_OPACITY = "~q~Läbipaistvus";
  306. var STR_VALUE_RANGE = "Väärtuse sisestamiseks vajuta ~b~[ENTER]";
  307.  
  308. var hudfontSizeList_MONEY = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_money_font_size);
  309. var hudfontStyleList_MONEY = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_money_font_style);
  310. var hudColorRList_MONEY = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_money_color_r);
  311. var hudColorGList_MONEY = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_money_color_g);
  312. var hudColorBList_MONEY = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_money_color_b);
  313. var hudPosXList_MONEY = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_money_pos_x);
  314. var hudPosYList_MONEY = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_money_pos_y);
  315. var hudOpacityList_MONEY = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_money_opacity);
  316.  
  317. var hudfontSizeList_FOOD = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_food_font_size);
  318. var hudfontStyleListFOOD_ = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_food_font_style);
  319. var hudColorRList_FOOD = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_food_color_r);
  320. var hudColorGList_FOOD = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_food_color_g);
  321. var hudColorBList_FOOD = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_food_color_b);
  322. var hudPosXList_FOOD = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_food_pos_x);
  323. var hudPosYList_FOOD = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_food_pos_y);
  324. var hudOpacityList_FOOD = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_food_opacity);
  325.  
  326. var hudfontSizeList_SPEED = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_speed_font_size);
  327. var hudfontStyleList_SPEED = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_speed_font_style);
  328. var hudColorRList_SPEED = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_speed_color_r);
  329. var hudColorGList_SPEED = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_speed_color_g);
  330. var hudColorBList_SPEED = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_speed_color_b);
  331. var hudPosXList_SPEED = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_speed_pos_x);
  332. var hudPosYList_SPEED = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_speed_pos_y);
  333. var hudOpacityList_SPEED = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_speed_opacity);
  334.  
  335. var hudfontSizeList_FUEL = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_fuel_font_size);
  336. var hudfontStyleList_FUEL = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_fuel_font_style);
  337. var hudColorRList_FUEL = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_fuel_color_r);
  338. var hudColorGList_FUEL = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_fuel_color_g);
  339. var hudColorBList_FUEL = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_fuel_color_b);
  340. var hudPosXList_FUEL = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_fuel_pos_x);
  341. var hudPosYList_FUEL = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_fuel_pos_y);
  342. var hudOpacityList_FUEL = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_fuel_opacity);
  343.  
  344. var hudfontSizeList_VEHHP = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_vehhp_font_size);
  345. var hudfontStyleList_VEHHP = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_vehhp_font_style);
  346. var hudColorRList_VEHHP = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_vehhp_color_r);
  347. var hudColorGList_VEHHP = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_vehhp_color_g);
  348. var hudColorBList_VEHHP = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_vehhp_color_b);
  349. var hudPosXList_VEHHP = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_vehhp_pos_x);
  350. var hudPosYList_VEHHP = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_vehhp_pos_y);
  351. var hudOpacityList_VEHHP = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_vehhp_opacity);
  352.  
  353. var hudfontSizeList_COUNTER = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_counter_font_size);
  354. var hudfontStyleList_COUNTER = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_counter_font_style);
  355. var hudColorRList_COUNTER = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_counter_color_r);
  356. var hudColorGList_COUNTER = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_counter_color_g);
  357. var hudColorBList_COUNTER = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_counter_color_b);
  358. var hudPosXList_COUNTER = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_counter_pos_x);
  359. var hudPosYList_COUNTER = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_counter_pos_y);
  360. var hudOpacityList_COUNTER = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_counter_opacity);
  361.  
  362. var hudfontSizeList_NOTIFICATION = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_notification_font_size);
  363. var hudfontStyleList_NOTIFICATION = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_notification_font_style);
  364. var hudColorRList_NOTIFICATION = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_notification_color_r);
  365. var hudColorGList_NOTIFICATION = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_notification_color_g);
  366. var hudColorBList_NOTIFICATION = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_notification_color_b);
  367. var hudPosXList_NOTIFICATION = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_notification_pos_x);
  368. var hudPosYList_NOTIFICATION = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_notification_pos_y);
  369. var hudOpacityList_NOTIFICATION = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_notification_opacity);
  370.  
  371. var hudfontSizeList_ODOMETER = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_odometer_font_size);
  372. var hudfontStyleList_ODOMETER = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_odometer_font_style);
  373. var hudColorRList_ODOMETER = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_odometer_color_r);
  374. var hudColorGList_ODOMETER = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_odometer_color_g);
  375. var hudColorBList_ODOMETER = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_odometer_color_b);
  376. var hudPosXList_ODOMETER = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_odometer_pos_x);
  377. var hudPosYList_ODOMETER = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_odometer_pos_y);
  378. var hudOpacityList_ODOMETER = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_odometer_opacity);
  379.  
  380. var hudfontSizeList_MINIGAME = API.createListItem(STR_FONT_SIZE, "0-"+fontSizeOptions, hudOptionSizeList, setting_minigame_font_size);
  381. var hudfontStyleList_MINIGAME = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_minigame_font_style);
  382. var hudColorRList_MINIGAME = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_minigame_color_r);
  383. var hudColorGList_MINIGAME = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_minigame_color_g);
  384. var hudColorBList_MINIGAME = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_minigame_color_b);
  385. var hudPosXList_MINIGAME = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_minigame_pos_x);
  386. var hudPosYList_MINIGAME = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_minigame_pos_y);
  387. var hudOpacityList_MINIGAME = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_minigame_opacity);
  388.  
  389. var hudfontSizeList_COMPASS = API.createListItem(STR_FONT_SIZE, "0-" + fontSizeOptions, hudOptionSizeList, setting_compass_font_size);
  390. var hudfontStyleList_COMPASS = API.createListItem(STR_FONT_STYLE, "0-4", hudOptionStyleList, setting_compass_font_style);
  391. var hudColorRList_COMPASS = API.createListItem(STR_COLOR_R, STR_VALUE_RANGE, hudOptionColorList, setting_compass_color_r);
  392. var hudColorGList_COMPASS = API.createListItem(STR_COLOR_G, STR_VALUE_RANGE, hudOptionColorList, setting_compass_color_g);
  393. var hudColorBList_COMPASS = API.createListItem(STR_COLOR_B, STR_VALUE_RANGE, hudOptionColorList, setting_compass_color_b);
  394. var hudPosXList_COMPASS = API.createListItem(STR_POS_X, STR_VALUE_RANGE, hudOptionXList, setting_compass_pos_x);
  395. var hudPosYList_COMPASS = API.createListItem(STR_POS_Y, STR_VALUE_RANGE, hudOptionYList, setting_compass_pos_y);
  396. var hudOpacityList_COMPASS = API.createListItem(STR_OPACITY, STR_VALUE_RANGE, hudOptionColorList, setting_compass_opacity);
  397.  
  398. var hudRefreshrateListItem = API.createListItem("Refreshrate", "0-59", hudRefreshrateList, setting_refreshrate);
  399.  
  400. var chosenSetting = 0;
  401.  
  402. // NOTE (Caupo 24.02.2017): MENU_ACTION_... peavad olema syncis sellega, mis on CompanyMenus.cs failis ACTION_ITEM_...
  403. var MENU_ACTION_SHOW = 1;
  404. var MENU_ACTION_EDIT = 2;
  405. var MENU_ACTION_DELETE = 3;
  406. var MAX_VEHICLES_IN_SELECTION = 25;
  407.  
  408. var MENU_IDX_SHOP = 1;
  409. var MENU_IDX_ATM = 2;
  410. var MENU_IDX_COMPOSE_MENU_OPTIONS = 3;
  411. var MENU_IDX_COMPOSE_MENU_CHOOSE_ITEM = 4;
  412. var MENU_IDX_COMPOSE_MENU_DELETE_ITEM = 5;
  413. var MENU_IDX_COMPOSE_MENU_EDIT_OPTIONS = 6;
  414. var MENU_IDX_GASSTATION_MENU = 7;
  415. var MENU_IDX_INVENTORY = 8;
  416. var MENU_IDX_VEHICLE_SELECTION = 9;
  417. var MENU_IDX_PHONE_SELECTION = 10;
  418. var MENU_IDX_PHONE = 11;
  419. var MENU_IDX_CONTACT_SELECTION = 12;
  420. var MENU_IDX_SMS_SELECTION = 13;
  421. var MENU_IDX_CHOOSE_CONTACT_OPTION = 14;
  422. var MENU_IDX_LOCATIONS = 15;
  423. var MENU_IDX_SELECT_VEHICLE_COLOR = 16;
  424. var MENU_IDX_SELECT_GROUP_VEHICLE = 17;
  425. var MENU_IDX_SELECT_VEHICLE_WHEELS = 18;
  426. var MENU_IDX_SELECT_VEHICLE_NEON_COLOR = 19;
  427. var MENU_IDX_PHONE_SELECTION_COMMERCIAL = 20;
  428. var MENU_IDX_SHOW_VEHICLE_SHOP = 20;
  429. var MENU_IDX_SHOW_LOGIN = 21;
  430. var MENU_IDX_FIRST_WARDROBE = 22;
  431. var MENU_IDX_FIRST_WARDROBE_COLOR = 23;
  432. var MENU_IDX_PAWNSHOP = 24;
  433. var MENU_IDX_BANK = 25;
  434. var MENU_IDX_BANKCARD_PIN = 26;
  435. var MENU_IDX_SELECT_BANKCARD = 27;
  436. var MENU_IDX_SETTINGS = 28;
  437. var MENU_IDX_CONFISCATED_VEHICLES = 29;
  438. var MENU_IDX_FISHMARKET = 30;
  439. var MENU_IDX_TELEPORT_TO_LOCATION = 31;
  440. var MENU_IDX_FACE_FEATURES = 32;
  441. var MENU_IDX_SELECT_BANKCARD_FOR_CANCEL = 33;
  442. var MENU_IDX_RECIPES = 34;
  443. var MENU_IDX_EQUIPTMENT = 35;
  444. var MENU_IDX_DRIVING_EXAM = 36;
  445. var MENU_IDX_SETTINGS_NEW = 37;
  446. var MENU_IDX_SETTINGS_NEW_CHOSED = 38;
  447. var MENU_IDX_SELECT_SKIN_FROM_CLOTHESHOP = 39;
  448. var MENU_IDX_OBJ_CATEGORYS = 40;
  449. var MENU_IDX_OBJ_SELECTION = 41;
  450. var MENU_IDX_OBJ_OPTIONS = 42;
  451. var MENU_IDX_STATIC_SHOP = 43;
  452. var MENU_IDX_PREVIEW_OBJ = 44;
  453. var MENU_IDX_PUTTING_ITEMS = 45;
  454. var MENU_IDX_TAKING_ITEMS = 46;
  455. var MENU_IDX_MAKE_VEHICLE_KEYS = 47;
  456. var MENU_IDX_GUNSTORE = 48;
  457. var MENU_IDX_SELECT_CHAR = 49;
  458. var MENU_IDX_MELEESTORE = 50;
  459. var MENU_IDX_INVENTORY_SEARCH = 51;
  460. var MENU_IDX_YES_OR_NO_SELL_VEHICLE = 52;
  461. var MENU_IDX_AROUND_OBJECTS = 53;
  462. var MENU_IDX_SELECTED_VEHICLE_MENU = 54;
  463. var MENU_IDX_TUNING = 55;
  464. var MENU_IDX_NEW_CLOTHINGSHOP = 56;
  465. var MENU_IDX_TATTOOSHOP = 57;
  466. var MENU_IDX_BEARDS = 58;
  467. var MENU_IDX_EQUIPTMENT_COP = 59;
  468. var MENU_IDX_EQUIPTMENT_COP_FEMALE = 60;
  469. var MENU_IDX_EQUIPTMENT_COP_MALE = 61;
  470.  
  471. var tuningTyreColorR = 0;
  472. var tuningTyreColorG = 0;
  473. var tuningTyreColorB = 0;
  474. var tuningIdx = 0;
  475. var TUNING_IDX_TYRE_SMOKE = 1;
  476. var TUNING_IDX_WHEEL_COLOR = 2;
  477. var TUNING_IDX_HYDRAULICS = 3;
  478. var TUNING_IDX_SPOILER = 4;
  479. var TUNING_IDX_FRONT_BUMPER = 5;
  480. var TUNING_IDX_REAR_BUMPER = 6;
  481. var TUNING_IDX_SIDE_SKIRT = 7;
  482. var TUNING_IDX_EXHAUST = 8;
  483. var TUNING_IDX_FRAME = 9;
  484. var TUNING_IDX_GRILLE = 10;
  485. var TUNING_IDX_HOOD = 11;
  486. var TUNING_IDX_FENDER = 12;
  487. var TUNING_IDX_FENDER_RIGHT = 13;
  488. var TUNING_IDX_ROOF = 14;
  489. var TUNING_IDX_HORNS = 15;
  490. var TUNING_IDX_XENON = 16;
  491. var TUNING_IDX_PLATE_HOLDERS = 17;
  492. var TUNING_IDX_TRIM_DESIGN = 18;
  493. var TUNING_IDX_ORNAMENTS = 19;
  494. var TUNING_IDX_DIAL_DESIGN = 20;
  495. var TUNING_IDX_STEERING_WHEEL = 21;
  496. var TUNING_IDX_SHIFT_LEVEL = 22;
  497. var TUNING_IDX_PLATES = 23;
  498. var TUNING_IDX_LIVERY = 24;
  499. var TUNING_IDX_DASHBOARD = 25;
  500. var TUNING_IDX_TRIM_COLOR = 26;
  501.  
  502. var ATM_RESPONSE_MONEY_ON_ACC = 0;
  503. var ATM_RESPONSE_TO_BANK = 1;
  504. var ATM_RESPONSE_FROM_BANK = 2;
  505. var ATM_RESPONSE_CHANGE_PIN = 3;
  506. var ATM_RESPONSE_TRANSACTION = 4;
  507. var ATM_RESPONSE_LOGS = 4;
  508.  
  509. var PHONE_ACTION_CALL = 0;
  510. var PHONE_ACTION_SMS = 1;
  511. var PHONE_ACTION_CONTACTS = 2;
  512. var PHONE_ACTION_INCOMING_SMS = 3;
  513. var PHONE_ACTION_SENT_SMS = 4;
  514.  
  515. var CONTACT_OPTION_CALL = 0;
  516. var CONTACT_OPTION_SEND_SMS = 1;
  517. var CONTACT_OPTION_EDIT_NAME = 2;
  518. var CONTACT_OPTION_EDIT_NUMBER = 3;
  519. var CONTACT_OPTION_REMOVE = 4;
  520.  
  521. var LOGIN_STATE_SUCCESS = 1;
  522. var LOGIN_STATE_ALREADY_LOGGED_IN = 2;
  523. var LOGIN_STATE_WARNS_FULL = 3;
  524. var LOGIN_STATE_BANNED = 4;
  525. var LOGIN_STATE_WRONG_USERNAME_OR_PASSWORD = 5;
  526. var LOGIN_STATE_SOCIAL_CLUB_NOT_CONFIRMED = 6;
  527. var LOGIN_STATE_RPTEST_NOT_PASSED = 7;
  528. var LOGIN_STATE_NO_CHARACTERS = 8;
  529. var LOGIN_STATE_SYSTEM_ERROR = 9;
  530. var LOGIN_STATE_DEFAULTS_NOT_SET = 10;
  531.  
  532. var SMS_MAX_LENGTH = 127;
  533. var CONTACT_MAX_LENGTH = 24;
  534. var INV_AMOUNT_MAX_LENGTH = 4;
  535. var colorpickerUrl = "/RPGM/colorpicker/index.html";
  536. var vehicleshopUrl = "/RPGM/vehshop/index.html";
  537. var loginUrl = "/RPGM/login/index.html";
  538. var dmvUrl = "/RPGM/ark/index.html";
  539. var loginUrlTest = "www.google.com";
  540.  
  541. var loginMsgTime = 3000;
  542. var loginMsgTimeAppeared = -1;
  543. var loginMsg = "";
  544.  
  545. var loginSuccessColorR = 51;
  546. var loginSuccessColorG = 147;
  547. var loginSuccessColorB = 69;
  548.  
  549. var loginFailedColorR = 176;
  550. var loginFailedColorG = 51;
  551. var loginFailedColorB = 51;
  552.  
  553. var hudColorR = 0;
  554. var hudColorG = 153;
  555. var hudColorB = 0;
  556.  
  557. var userInputMsg = "";
  558. var inputIdx = 0;
  559. var cruiseSpeed = 0;
  560. var speedlimited = false;
  561. var speedlimitvalue = 0;
  562.  
  563. var INPUT_IDX_INSERT_SUM_TO_BANK = 1;
  564. var INPUT_IDX_INSERT_SUM_FROM_BANK = 2;
  565. var INPUT_IDX_INSERT_NEW_PIN = 3;
  566. var INPUT_IDX_INSERT_TRANSACTION_NAME = 4;
  567. var INPUT_IDX_INSERT_PRODUCT_NAME = 5;
  568. var INPUT_IDX_INSERT_PRODUCT_PRICE = 6;
  569. var INPUT_IDX_INSERT_FUEL_AMOUNT = 7;
  570. var INPUT_IDX_INSERT_CALL_NUMBER = 8;
  571. var INPUT_IDX_INSERT_NUMBER_TO_SMS = 9;
  572. var INPUT_IDX_INSERT_CONTACT_NAME = 10;
  573. var INPUT_IDX_INSERT_SMS_CONTENT = 11;
  574. var INPUT_IDX_INSERT_CONTACT_NUMBER = 12;
  575. var INPUT_IDX_INSERT_TRANSACTION_SUM = 13;
  576. var INPUT_IDX_INSERT_SMS_NUMBER_TO_SEND = 14;
  577.  
  578. var HUDText = "";
  579. var vehicle = null;
  580. var vehHealth = null;
  581. var velocity = null;
  582. var speed = null;
  583. var updateSpeedSequence = 0;
  584.  
  585. var footerMsg = "";
  586. var footerMsgTime = 4000;
  587. var footerMsgTimeAppeared = -1;
  588.  
  589. var footerSuccessColorR = 255;
  590. var footerSuccessColorG = 255;
  591. var footerSuccessColorB = 255;
  592.  
  593. var FONT_CHALET_LONDON = 0;
  594. var FONT_HOUSE_SCRIPT = 1;
  595. var FONT_MONOSPACE = 2;
  596. var FONT_CHARLET_COMPRIME_COLONGE = 4;
  597. var FONT_PRICEDOWN = 7;
  598. var FONT_DEFAULT = FONT_HOUSE_SCRIPT;
  599.  
  600. var clotheIdx = -1;
  601. var assignClothIdx = false;
  602. var CLOTH_COMPONENT_CATEGORY_HEAD = 9999; // disabled
  603. var CLOTH_COMPONENT_CATEGORY_MASKS = 9999; // disabled
  604. var CLOTH_COMPONENT_CATEGORY_HAIRCUTS = 0;
  605. var CLOTH_COMPONENT_CATEGORY_TORSO = 1;
  606. var CLOTH_COMPONENT_CATEGORY_LEGS = 2;
  607. var CLOTH_COMPONENT_CATEGORY_BAGS = 3;
  608. var CLOTH_COMPONENT_CATEGORY_FEET = 4;
  609. var CLOTH_COMPONENT_CATEGORY_ACCESSORIES = 5;
  610. var CLOTH_COMPONENT_CATEGORY_UNDERSHIRT = 6;
  611. var CLOTH_COMPONENT_CATEGORY_DECALS = 7;
  612. var CLOTH_COMPONENT_CATEGORY_TOPS = 8;
  613. var CLOTH_COMPONENT_CATEGORY_HATS = 9;
  614. var CLOTH_COMPONENT_CATEGORY_GLASSES = 10;
  615. var CLOTH_COMPONENT_CATEGORY_EARS = 11;
  616. var CLOTH_COMPONENT_CATEGORY_SAVE = 12;
  617. var CLOTH_COMPONENT_CATEGORY_RESET = 13;
  618. var CLOTH_COMPONENT_CATEGORY_SKINS = 14;
  619. var CLOTH_COMPONENT_CATEGORY_RESET_HAIRCUT = 15;
  620. var CLOTH_COMPONENT_CATEGORY_RESET_TORSO = 16;
  621. var CLOTH_COMPONENT_CATEGORY_RESET_LEGS = 17;
  622. var CLOTH_COMPONENT_CATEGORY_RESET_BAGS = 18;
  623. var CLOTH_COMPONENT_CATEGORY_RESET_FEET = 19;
  624. var CLOTH_COMPONENT_CATEGORY_RESET_ACCESSORIES = 20;
  625. var CLOTH_COMPONENT_CATEGORY_RESET_UNDERSHIRT = 21;
  626. var CLOTH_COMPONENT_CATEGORY_RESET_DECALS = 22;
  627. var CLOTH_COMPONENT_CATEGORY_RESET_TOPS = 23;
  628. var CLOTH_COMPONENT_CATEGORY_RESET_HATS = 24;
  629. var CLOTH_COMPONENT_CATEGORY_RESET_GLASSES = 25;
  630. var CLOTH_COMPONENT_CATEGORY_RESET_EARS = 26;
  631.  
  632. var clotheColorIdx = -1;
  633. var assignClothColorIdx = false;
  634. var CLOTH_COLOR_CATEGORY_MASKS = 9999; // disabled
  635. var CLOTH_COLOR_CATEGORY_HAIRCUTS = 1;
  636. var CLOTH_COLOR_CATEGORY_LEGS = 2;
  637. var CLOTH_COLOR_CATEGORY_BAGS = 3;
  638. var CLOTH_COLOR_CATEGORY_FEET = 4;
  639. var CLOTH_COLOR_CATEGORY_ACCESSORIES = 5;
  640. var CLOTH_COLOR_CATEGORY_UNDERSHIRT = 6;
  641. var CLOTH_COLOR_CATEGORY_DECALS = 7;
  642. var CLOTH_COLOR_CATEGORY_TOPS = 8;
  643. var CLOTH_COLOR_CATEGORY_HATS = 9;
  644. var CLOTH_COLOR_CATEGORY_GLASSES = 10;
  645. var CLOTH_COLOR_CATEGORY_EARS = 11;
  646. var CLOTH_COLOR_CATEGORY_SAVE = 12;
  647. var CLOTH_COLOR_CATEGORY_RESET = 13;
  648. var CLOTH_COLOR_CATEGORY_BACK = 14;
  649.  
  650. var clothHead = 0;
  651. var clothMask = 0;
  652. var clothHaircut = 0;
  653. var clothTorso = 0;
  654. var clothLegs = 0;
  655. var clothBags = 0;
  656. var clothFeet = 0;
  657. var clothAccessory = 0;
  658. var clothUndershirt = 0;
  659. var clothBodyArmour = 0;
  660. var clothDecals = 0;
  661. var clothTops = 0;
  662. var clothHats = 0;
  663. var clothGlasses = 0;
  664. var clothEars = 0;
  665.  
  666. var textureclothHead = 0;
  667. var textureclothMask = 0;
  668. var textureclothHaircut = 0;
  669. var textureclothTorso = 0;
  670. var textureclothLegs = 0;
  671. var textureclothBags = 0;
  672. var textureclothFeet = 0;
  673. var textureclothAccessory = 0;
  674. var textureclothUndershirt = 0;
  675. var textureclothBodyArmour = 0;
  676. var textureclothDecals = 0;
  677. var textureclothTops = 0;
  678. var textureclothHats = 0;
  679. var textureclothGlasses = 0;
  680. var textureclothEars = 0;
  681.  
  682. var body_feature_shape1 = 0;
  683. var body_feature_shape2 = 0;
  684. var body_feature_shape_mix = 0;
  685. var body_feature_skin1 = 0;
  686. var body_feature_skin2 = 0;
  687. var body_feature_skin_mix = 0;
  688. var body_feature_hair_color = 0;
  689. var body_feature_hair_highlight_color = 0;
  690. var body_feature_eye_color = 0;
  691. var body_feature_eyebrows = 0;
  692. var body_feature_eyebrow_color1 = 0;
  693. var body_feature_eyebrow_color2 = 0;
  694. var body_feature_makeup = 0;
  695. var body_feature_makeup_color1 = 0;
  696. var body_feature_makeup_color2 = 0;
  697. var body_feature_lipstick = 0;
  698. var body_feature_lipstick_color1 = 0;
  699. var body_feature_lipstick_color2 = 0;
  700. var body_feature_face = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
  701. var body_feature_faceIdx = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
  702.  
  703. /*var maxHeads = 48;
  704. var maxMask = 103;
  705. var maxHaircut = 40;
  706. var maxTorso = 140;
  707. var maxLegs = 86;
  708. var maxBags = 71;
  709. var maxFeet = 59;
  710. var maxAccessory = 56;
  711. var maxUndershirt = 98;
  712. var maxBodyArmour = 29;
  713. var maxDecals = 15;
  714. var maxTops = 250;
  715. var maxHats = 103;
  716. var maxGlasses = 26;
  717. var maxEars = 36;
  718. var maxColors = 250;
  719. var maxBodySettings = 50;
  720. var maxFaceSettings = 50;
  721. var maxFacecolorSettings = 50;
  722. var maxTunings = 50;*/
  723.  
  724. var maxHeads = 200;
  725. var maxMask = 200;
  726. var maxHaircut = 200;
  727. var maxTorso = 164;
  728. var maxLegs = 200;
  729. var maxBags = 200;
  730. var maxFeet = 200;
  731. var maxAccessory = 200;
  732. var maxUndershirt = 200;
  733. var maxBodyArmour = 200;
  734. var maxDecals = 200;
  735. var maxTops = 400;
  736. var maxHats = 200;
  737. var maxGlasses = 200;
  738. var maxEars = 200;
  739. var maxColors = 400;
  740. var maxBodySettings = 200;
  741. var maxFaceSettings = 200;
  742. var maxFacecolorSettings = 200;
  743. var maxTunings = 50;
  744. var maxTattoos = 459;
  745. var maxBeards = 30;
  746. var maxBeardColors = 255;
  747.  
  748. var headList = new List(String);
  749. var maskList = new List(String);
  750. var haircutList = new List(String);
  751. var torsoList = new List(String);
  752. var legsList = new List(String);
  753. var bagsList = new List(String);
  754. var feetList = new List(String);
  755. var accessoryList = new List(String);
  756. var undershirtList = new List(String);
  757. var bodyarmourList = new List(String);
  758. var decalsList = new List(String);
  759. var topList = new List(String);
  760. var hatList = new List(String);
  761. var glassesList = new List(String);
  762. var earsList = new List(String);
  763. var clothColorList = new List(String);
  764. var settingList = new List(String);
  765. var fontList = new List(String);
  766. var fontSizeList = new List(String);
  767. var bodySettings = new List(String);
  768. var faceList = new List(String);
  769. var faceColorList = new List(String);
  770. var tuningList = new List(String);
  771. var beardList = new List(String);
  772. var beardColorList = new List(String);
  773.  
  774. var tattooList1 = new List(String);
  775. var tattooList2 = new List(String);
  776. var tattooList3 = new List(String);
  777. var tattooList4 = new List(String);
  778. var tattooList5 = new List(String);
  779. var tattooList6 = new List(String);
  780. var tattooList7 = new List(String);
  781. var tattooList8 = new List(String);
  782. var tattooList9 = new List(String);
  783. var tattooList10 = new List(String);
  784.  
  785. for (var i = 0; i < maxHeads; i++) {
  786.     headList.Add("Valik " + i);
  787. }
  788. for (var i = 0; i < maxMask; i++) {
  789.     maskList.Add("Valik " + i);
  790. }
  791. for (var i = 0; i < maxHaircut; i++) {
  792.     haircutList.Add("Valik " + i);
  793. }
  794. for (var i = 0; i < maxTorso; i++) {
  795.     torsoList.Add("Valik " + i);
  796. }
  797. for (var i = 0; i < maxLegs; i++) {
  798.     legsList.Add("Valik " + i);
  799. }
  800. for (var i = 0; i < maxBags; i++) {
  801.     bagsList.Add("Valik " + i);
  802. }
  803. for (var i = 0; i < maxFeet; i++) {
  804.     feetList.Add("Valik " + i);
  805. }
  806. for (var i = 0; i < maxAccessory; i++) {
  807.     accessoryList.Add("Valik " + i);
  808. }
  809. for (var i = 0; i < maxUndershirt; i++) {
  810.     undershirtList.Add("Valik " + i);
  811. }
  812. for (var i = 0; i < maxBodyArmour; i++) {
  813.     bodyarmourList.Add("Valik " + i);
  814. }
  815. for (var i = 0; i < maxDecals; i++) {
  816.     decalsList.Add("Valik " + i);
  817. }
  818. for (var i = 0; i < maxTops; i++) {
  819.     topList.Add("Valik " + i);
  820. }
  821. for (var i = 0; i < maxHats; i++) {
  822.     hatList.Add("Valik " + i);
  823. }
  824. for (var i = 0; i < maxGlasses; i++) {
  825.     glassesList.Add("Valik " + i);
  826. }
  827. for (var i = 0; i < maxEars; i++) {
  828.     earsList.Add("Valik " + i);
  829. }
  830.  
  831. for (var i = 0; i < maxColors; i++) {
  832.     clothColorList.Add("Valik " + i);
  833. }
  834. for (var i = (maxBodySettings * -1) ; i < maxBodySettings; i++) {
  835.     bodySettings.Add("Valik " + i);
  836. }
  837. for (var i = 0; i < maxFaceSettings; i++) {
  838.     faceList.Add("Valik " + i);
  839. }
  840. for (var i = 0; i < maxFacecolorSettings; i++) {
  841.     faceColorList.Add("Valik " + i);
  842. }
  843. for (var i = 0; i < maxTunings; i++) {
  844.     tuningList.Add("Valik " + i);
  845. }
  846. for (var i = 0; i < maxTattoos; i++) {
  847.     tattooList1.Add("Valik " + i);
  848. }
  849. for (var i = 0; i < maxTattoos; i++) {
  850.     tattooList2.Add("Valik " + i);
  851. }
  852. for (var i = 0; i < maxTattoos; i++) {
  853.     tattooList3.Add("Valik " + i);
  854. }
  855. for (var i = 0; i < maxTattoos; i++) {
  856.     tattooList4.Add("Valik " + i);
  857. }
  858. for (var i = 0; i < maxTattoos; i++) {
  859.     tattooList5.Add("Valik " + i);
  860. }
  861. for (var i = 0; i < maxTattoos; i++) {
  862.     tattooList6.Add("Valik " + i);
  863. }
  864. for (var i = 0; i < maxTattoos; i++) {
  865.     tattooList7.Add("Valik " + i);
  866. }
  867. for (var i = 0; i < maxTattoos; i++) {
  868.     tattooList8.Add("Valik " + i);
  869. }
  870. for (var i = 0; i < maxTattoos; i++) {
  871.     tattooList9.Add("Valik " + i);
  872. }
  873. for (var i = 0; i < maxTattoos; i++) {
  874.     tattooList10.Add("Valik " + i);
  875. }
  876. for (var i = 0; i < maxBeards; i++) {
  877.     beardList.Add("Valik " + i);
  878. }
  879. for (var i = 0; i < maxBeardColors; i++) {
  880.     beardColorList.Add("Valik " + i);
  881. }
  882.  
  883. var CLOTH_haircutList = API.createListItem("~y~Soengud", "0-" + maxHaircut, haircutList, clothHaircut);
  884. var CLOTH_torsoList = API.createListItem("~b~Keha", "0-" + maxTorso, torsoList, clothTorso);
  885. var CLOTH_legsList = API.createListItem("~g~Püksid", "0-" + maxLegs, legsList, clothLegs);
  886. var CLOTH_bagsList = API.createListItem("~q~Seljakotid", "0-" + maxBags, bagsList, clothBags);
  887. var CLOTH_feetList = API.createListItem("~g~Jalatsid", "0-" + maxFeet, feetList, clothFeet);
  888. var CLOTH_accessoryList = API.createListItem("~b~Aksessuaarid", "0-" + maxAccessory, accessoryList, clothAccessory);
  889. var CLOTH_undershirtList = API.createListItem("~g~Särgid", "0-" + maxUndershirt, undershirtList, clothUndershirt);
  890. var CLOTH_decalsList = API.createListItem("~b~Riidekleebised", "0-" + maxDecals, decalsList, clothDecals);
  891. var CLOTH_topList = API.createListItem("~g~Jakid", "0-" + maxTops, topList, clothTops);
  892. var CLOTH_hatList = API.createListItem("~y~Mütsid", "0-" + maxHats, hatList, clothHats);
  893. var CLOTH_glassesList = API.createListItem("~y~Prillid", "0-" + maxGlasses, glassesList, clothGlasses);
  894. var CLOTH_earsList = API.createListItem("~y~Kõrvad", "0-" + maxEars, earsList, clothEars);
  895.  
  896. var TEXTURE_MaskList = API.createListItem("Mask", "0-" + maxColors, clothColorList, textureclothMask);
  897. var TEXTURE_HaircutList = API.createListItem("Soengud", "0-" + maxColors, clothColorList, textureclothHaircut);
  898. var TEXTURE_LegsList = API.createListItem("Püksid", "0-" + maxColors, clothColorList, textureclothLegs);
  899. var TEXTURE_BagsList = API.createListItem("Seljakotid", "0-" + maxColors, clothColorList, textureclothBags);
  900. var TEXTURE_FeetList = API.createListItem("Jalatsid", "0-" + maxColors, clothColorList, textureclothFeet);
  901. var TEXTURE_AccessoriesList = API.createListItem("Aksessuaarid", "0-" + maxColors, clothColorList, textureclothAccessory);
  902. var TEXTURE_UndershirtList = API.createListItem("Särgid", "0-" + maxColors, clothColorList, textureclothUndershirt);
  903. var TEXTURE_TopsList = API.createListItem("Jakid", "0-" + maxColors, clothColorList, textureclothTops);
  904. var TEXTURE_HatsList = API.createListItem("Mütsid", "0-" + maxColors, clothColorList, textureclothHats);
  905. var TEXTURE_GlassesList = API.createListItem("Prillid", "0-" + maxColors, clothColorList, textureclothGlasses);
  906. var TEXTURE_EarsList = API.createListItem("Kõrvad", "0-" + maxColors, clothColorList, textureclothEars);
  907. var TEXTURE_DecalsList = API.createListItem("Riidekleebised", "0-" + maxColors, clothColorList, textureclothDecals);
  908.  
  909. var TUNING_List = API.createListItem("Valikud", "0-" + maxTunings, tuningList, 0);
  910. var TUNING_ColorRList = API.createListItem("~r~Color R", "0-" + maxColors, hudOptionColorList, 0);
  911. var TUNING_ColorGList = API.createListItem("~g~Color G", "0-" + maxColors, hudOptionColorList, 0);
  912. var TUNING_ColorBList = API.createListItem("~b~Color B", "0-" + maxColors, hudOptionColorList, 0);
  913.  
  914. var LIST_BODY_FEATURE_EYEBROWS = API.createListItem("~y~Kulmud", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_eyebrows);
  915. var LIST_BODY_FEATURE_EYEBROW_COLOR1 = API.createListItem("~y~Kulmu värv 1", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_eyebrow_color1);
  916. var LIST_BODY_FEATURE_EYEBROW_COLOR2 = API.createListItem("~y~Kulmu värv 2", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_eyebrow_color2);
  917. var LIST_BODY_FEATURE_EYE_COLOR = API.createListItem("~b~Silma värv", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_eye_color);
  918. var LIST_BODY_FEATURE_HAIR_COLOR = API.createListItem("~q~Juuste värv", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_hair_color);
  919. var LIST_BODY_FEATURE_HAIR_HIGHLIGHTCOLOR = API.createListItem("~q~Juuste highlight", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_hair_highlight_color);
  920. var LIST_BODY_FEATURE_LIPSTICK = API.createListItem("~r~Huulepulk", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_lipstick);
  921. var LIST_BODY_FEATURE_LIPSTICK_COLOR1 = API.createListItem("~r~Huulepulga värv 1", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_lipstick_color1);
  922. var LIST_BODY_FEATURE_LIPSTICK_COLOR2 = API.createListItem("~r~Huulepulga värv 2", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_lipstick_color2);
  923. var LIST_BODY_FEATURE_MAKEUP = API.createListItem("~o~Meik", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_makeup);
  924. var LIST_BODY_FEATURE_MAKEUP_COLOR1 = API.createListItem("~o~Meigi värv 1", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_makeup_color1);
  925. var LIST_BODY_FEATURE_MAKEUP_COLOR2 = API.createListItem("~o~Meigi värv 2", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_makeup_color2);
  926. var LIST_BODY_FEATURE_SHAPE1 = API.createListItem("~b~Kuju 1", "Valikuid kokku " + maxFacecolorSettings, faceList, body_feature_shape1);
  927. var LIST_BODY_FEATURE_SHAPE_MIX = API.createListItem("~b~Kuju mix", "Valikuid kokku " + maxFacecolorSettings, faceList, body_feature_shape_mix);
  928. var LIST_BODY_FEATURE_SHAPE2 = API.createListItem("~b~Kuju 2", "Valikuid kokku " + maxFacecolorSettings, faceList, body_feature_shape2);
  929. var LIST_BODY_FEATURE_SKIN1 = API.createListItem("~y~Nahavärvus", "Valikuid kokku " + maxFacecolorSettings, faceList, body_feature_skin1);
  930. var LIST_BODY_FEATURE_SKIN_MIX = API.createListItem("~y~Skin mix", "Valikuid kokku " + maxFacecolorSettings, faceList, body_feature_skin_mix);
  931. var LIST_BODY_FEATURE_SKIN2 = API.createListItem("~y~Skin 2", "Valikuid kokku " + maxFacecolorSettings, faceList, body_feature_skin2);
  932.  
  933. var LIST_BODY_FEATURE_FACE_0 = API.createListItem("~g~Nina laius", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[0]);
  934. var LIST_BODY_FEATURE_FACE_1 = API.createListItem("~g~Nina kõrgus", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[1]);
  935. var LIST_BODY_FEATURE_FACE_2 = API.createListItem("~g~Nina ette", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[2]);
  936. var LIST_BODY_FEATURE_FACE_3 = API.createListItem("~g~Nina selg", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[3]);
  937. var LIST_BODY_FEATURE_FACE_4 = API.createListItem("~g~Nina otsa", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[4]);
  938. var LIST_BODY_FEATURE_FACE_5 = API.createListItem("~g~Nina kõverus", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[5]);
  939. var LIST_BODY_FEATURE_FACE_6 = API.createListItem("~y~Kulmude kõrgus", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[6]);
  940. var LIST_BODY_FEATURE_FACE_7 = API.createListItem("~y~Kulmud ette", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[7]);
  941. var LIST_BODY_FEATURE_FACE_8 = API.createListItem("~q~Põsesarnad", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[8]);
  942. var LIST_BODY_FEATURE_FACE_9 = API.createListItem("~q~Põskede laius", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[9]);
  943. var LIST_BODY_FEATURE_FACE_10 = API.createListItem("~q~Põsed", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[10]);
  944. var LIST_BODY_FEATURE_FACE_11 = API.createListItem("~b~Silmad", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[11]);
  945. var LIST_BODY_FEATURE_FACE_12 = API.createListItem("~r~Huuled", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[12]);
  946. var LIST_BODY_FEATURE_FACE_13 = API.createListItem("~b~Lõua laius", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[13]);
  947. var LIST_BODY_FEATURE_FACE_14 = API.createListItem("~b~Lõua kõrgus", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[14]);
  948. var LIST_BODY_FEATURE_FACE_15 = API.createListItem("~b~Lõua ots 1", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[15]);
  949. var LIST_BODY_FEATURE_FACE_16 = API.createListItem("~b~Lõug ette", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[16]);
  950. var LIST_BODY_FEATURE_FACE_17 = API.createListItem("~b~Lõua otsa laius", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[17]);
  951. var LIST_BODY_FEATURE_FACE_18 = API.createListItem("~b~Lõua ots 2", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[18]);
  952. var LIST_BODY_FEATURE_FACE_19 = API.createListItem("~y~Kael", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[19]);
  953. var LIST_BODY_FEATURE_FACE_20 = API.createListItem("Teadmata", "Valikuid kokku " + (maxBodySettings * 2), bodySettings, body_feature_faceIdx[20]);
  954.  
  955. var LIST_TATTOO_1 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList1, tattoo1);
  956. var LIST_TATTOO_2 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList2, tattoo2);
  957. var LIST_TATTOO_3 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList3, tattoo3);
  958. var LIST_TATTOO_4 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList4, tattoo4);
  959. var LIST_TATTOO_5 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList5, tattoo5);
  960. var LIST_TATTOO_6 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList6, tattoo6);
  961. var LIST_TATTOO_7 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList7, tattoo7);
  962. var LIST_TATTOO_8 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList8, tattoo8);
  963. var LIST_TATTOO_9 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList9, tattoo9);
  964. var LIST_TATTOO_10 = API.createListItem("Tattoo", "Valikuid kokku " + maxTattoos, tattooList10, tattoo10);
  965.  
  966. var LIST_BEARD = API.createListItem("Habe", "Valikuid kokku " + maxBeards, beardList, beard);
  967. var LIST_BEARDCOLOR = API.createListItem("Värv", "Valikuid kokku " + maxBeardColors, beardColorList, beardColor);
  968.  
  969. // NEW CLOTHING MENUS
  970.  
  971. var maleAccessorys = 340;
  972. var maleDecals = 46;
  973. var maleEars = 100;
  974. var maleFeet = 413;
  975. var maleGlasses = 193;
  976. var maleHaircuts = 142;
  977. var maleHats = 862;
  978. var malePants = 724;
  979. var maleTops = 1919;
  980. var maleUndershirts = 1110;
  981.  
  982. var femaleAccessorys = 232;
  983. var femaleDecals = 49;
  984. var femaleEars = 34;
  985. var femaleFeet = 502;
  986. var femaleGlasses = 214;
  987. var femaleHaircuts = 186;
  988. var femaleHats = 827;
  989. var femalePants = 700;
  990. var femaleTops = 2064;
  991. var femaleUndershirts = 1466;
  992.  
  993. var newMaleAccessorysList = new List(String);
  994. var newMaleDecalsList = new List(String);
  995. var newMaleEarsList = new List(String);
  996. var newMaleFeetList = new List(String);
  997. var newMaleGlassesList = new List(String);
  998. var newMaleHaircutsList = new List(String);
  999. var newMaleHatsList = new List(String);
  1000. var newMalePantsList = new List(String);
  1001. var newMaleTopsList = new List(String);
  1002. var newMaleUndershirtsList = new List(String);
  1003.  
  1004. var newfemaleAccessorysList = new List(String);
  1005. var newfemaleDecalsList = new List(String);
  1006. var newfemaleEarsList = new List(String);
  1007. var newfemaleFeetList = new List(String);
  1008. var newfemaleGlassesList = new List(String);
  1009. var newfemaleHaircutsList = new List(String);
  1010. var newfemaleHatsList = new List(String);
  1011. var newfemalePantsList = new List(String);
  1012. var newfemaleTopsList = new List(String);
  1013. var newfemaleUndershirtsList = new List(String);
  1014.  
  1015. for (var i = 0; i < maleAccessorys; i++) { newMaleAccessorysList.Add("Valik " + i); }
  1016. for (var i = 0; i < maleDecals; i++) { newMaleDecalsList.Add("Valik " + i); }
  1017. for (var i = 0; i < maleEars; i++) { newMaleEarsList.Add("Valik " + i); }
  1018. for (var i = 0; i < maleFeet; i++) { newMaleFeetList.Add("Valik " + i); }
  1019. for (var i = 0; i < maleGlasses; i++) { newMaleGlassesList.Add("Valik " + i); }
  1020. for (var i = 0; i < maleHaircuts; i++) { newMaleHaircutsList.Add("Valik " + i); }
  1021. for (var i = 0; i < maleHats; i++) { newMaleHatsList.Add("Valik " + i); }
  1022. for (var i = 0; i < malePants; i++) { newMalePantsList.Add("Valik " + i); }
  1023. for (var i = 0; i < maleTops; i++) { newMaleTopsList.Add("Valik " + i); }
  1024. for (var i = 0; i < maleUndershirts; i++) { newMaleUndershirtsList.Add("Valik " + i); }
  1025.  
  1026. for (var i = 0; i < femaleAccessorys; i++) { newfemaleAccessorysList.Add("Valik " + i); }
  1027. for (var i = 0; i < femaleDecals; i++) { newfemaleDecalsList.Add("Valik " + i); }
  1028. for (var i = 0; i < femaleEars; i++) { newfemaleEarsList.Add("Valik " + i); }
  1029. for (var i = 0; i < femaleFeet; i++) { newfemaleFeetList.Add("Valik " + i); }
  1030. for (var i = 0; i < femaleGlasses; i++) { newfemaleGlassesList.Add("Valik " + i); }
  1031. for (var i = 0; i < femaleHaircuts; i++) { newfemaleHaircutsList.Add("Valik " + i); }
  1032. for (var i = 0; i < femaleHats; i++) { newfemaleHatsList.Add("Valik " + i); }
  1033. for (var i = 0; i < femalePants; i++) { newfemalePantsList.Add("Valik " + i); }
  1034. for (var i = 0; i < femaleTops; i++) { newfemaleTopsList.Add("Valik " + i); }
  1035. for (var i = 0; i < femaleUndershirts; i++) { newfemaleUndershirtsList.Add("Valik " + i); }
  1036.  
  1037. var NEW_CLOTH_MALE_haircutList = API.createListItem("~y~Soengud", "0-" + maleHaircuts, newMaleHaircutsList, clothHaircut);
  1038. var NEW_CLOTH_MALE_torsoList = API.createListItem("~b~Keha", "0-" + maxTorso, torsoList, clothTorso);
  1039. var NEW_CLOTH_MALE_legsList = API.createListItem("~g~Püksid", "0-" + malePants, newMalePantsList, clothLegs);
  1040. var NEW_CLOTH_MALE_feetList = API.createListItem("~g~Jalatsid", "0-" + maleFeet, newMaleFeetList, clothFeet);
  1041. var NEW_CLOTH_MALE_accessoryList = API.createListItem("~b~Aksessuaarid", "0-" + maleAccessorys, newMaleAccessorysList, clothAccessory);
  1042. var NEW_CLOTH_MALE_undershirtList = API.createListItem("~g~Särgid", "0-" + maleUndershirts, newMaleUndershirtsList, clothUndershirt);
  1043. var NEW_CLOTH_MALE_decalsList = API.createListItem("~b~Riidekleebised", "0-" + maleDecals, newMaleDecalsList, clothDecals);
  1044. var NEW_CLOTH_MALE_topList = API.createListItem("~g~Jakid", "0-" + maleTops, newMaleTopsList, clothTops);
  1045. var NEW_CLOTH_MALE_hatList = API.createListItem("~y~Mütsid", "0-" + maleHats, newMaleHatsList, clothHats);
  1046. var NEW_CLOTH_MALE_glassesList = API.createListItem("~y~Prillid", "0-" + maleGlasses, newMaleGlassesList, clothGlasses);
  1047. var NEW_CLOTH_MALE_earsList = API.createListItem("~y~Kõrvad", "0-" + maleEars, newMaleEarsList, clothEars);
  1048.  
  1049. var NEW_CLOTH_FEMALE_haircutList = API.createListItem("~y~Soengud", "0-" + femaleHaircuts, newfemaleHaircutsList, clothHaircut);
  1050. var NEW_CLOTH_FEMALE_torsoList = API.createListItem("~b~Keha", "0-" + maxTorso, torsoList, clothTorso);
  1051. var NEW_CLOTH_FEMALE_legsList = API.createListItem("~g~Püksid", "0-" + femalePants, newfemalePantsList, clothLegs);
  1052. var NEW_CLOTH_FEMALE_feetList = API.createListItem("~g~Jalatsid", "0-" + femaleFeet, newfemaleFeetList, clothFeet);
  1053. var NEW_CLOTH_FEMALE_accessoryList = API.createListItem("~b~Aksessuaarid", "0-" + femaleAccessorys, newfemaleAccessorysList, clothAccessory);
  1054. var NEW_CLOTH_FEMALE_undershirtList = API.createListItem("~g~Särgid", "0-" + femaleUndershirts, newfemaleUndershirtsList, clothUndershirt);
  1055. var NEW_CLOTH_FEMALE_decalsList = API.createListItem("~b~Riidekleebised", "0-" + femaleDecals, newfemaleDecalsList, clothDecals);
  1056. var NEW_CLOTH_FEMALE_topList = API.createListItem("~g~Jakid", "0-" + femaleTops, newfemaleTopsList, clothTops);
  1057. var NEW_CLOTH_FEMALE_hatList = API.createListItem("~y~Mütsid", "0-" + femaleHats, newfemaleHatsList, clothHats);
  1058. var NEW_CLOTH_FEMALE_glassesList = API.createListItem("~y~Prillid", "0-" + femaleGlasses, newfemaleGlassesList, clothGlasses);
  1059. var NEW_CLOTH_FEMALE_earsList = API.createListItem("~y~Kõrvad", "0-" + femaleEars, newfemaleEarsList, clothEars);
  1060.  
  1061. // NEW CLOTHING MENUS END
  1062.  
  1063. //menu.AddItem(API.createListItem("Kulmud", "Valikuid kokku " + maxFacecolorSettings, faceColorList, body_feature_eyebrows));
  1064.  
  1065. var camera = null;
  1066. var cameraPosX = -779.7549;
  1067. var cameraPosY = 482.1338;
  1068. var cameraPosZ = 100.1737;
  1069. var cameraCurrentOffsetX = 0;
  1070. var cameraCurrentOffsetY = 0;
  1071. var cameraCurrentOffsetZ = 0;
  1072. var cameraMaxOffset = 25;
  1073. var charPosZ = 0;
  1074.  
  1075. var groupGpsMarkers = [];
  1076. var objectPresets = [];
  1077. var objectPresetCounts = [];
  1078. var MAX_GPS_MARKERS = 25;
  1079. var groupGpsMarkerColorIDX = 0;
  1080.  
  1081. var previouseTime = 0;
  1082. var pointAtHospital = false;
  1083. var hospitalCamPos = null;
  1084. var hospitalCamLookAt = null;
  1085. var hospitalRespawnPos = null;
  1086. var deathPos = null;
  1087. var acceptedDeath = false;
  1088. var gotDead = false;
  1089.  
  1090. var fists = -1569615261;
  1091. var fishBtnArray;
  1092. var fishBtnCount = 0;
  1093. var pullingFish = false;
  1094. var fishPullingStr = "";
  1095. var fishPullingCounter = 0;
  1096. var fishTimeLeft = 5;
  1097.  
  1098. var afkBtnArray;
  1099. var afkBtnCount = 0;
  1100. var pullingAfk = false;
  1101. var afkPullingStr = "";
  1102. var afkPullingCounter = 0;
  1103. var afkTimeLeft = 5;
  1104.  
  1105. var isInClotheShop = 0;
  1106.  
  1107. var BODY_FEATURE_EYEBROWS = 0;
  1108. var BODY_FEATURE_EYEBROW_COLOR1 = 1;
  1109. var BODY_FEATURE_EYEBROW_COLOR2 = 2;
  1110. var BODY_FEATURE_EYE_COLOR = 3;
  1111. var BODY_FEATURE_HAIR_COLOR = 4;
  1112. var BODY_FEATURE_HAIR_HIGHLIGHT_COLOR = 5;
  1113. var BODY_FEATURE_LIPSTICK = 6;
  1114. var BODY_FEATURE_LIPSTICK_COLOR1 = 7;
  1115. var BODY_FEATURE_LIPSTICK_COLOR2 = 8;
  1116. var BODY_FEATURE_MAKEUP = 9;
  1117. var BODY_FEATURE_MAKEUP_COLOR1 = 10;
  1118. var BODY_FEATURE_MAKEUP_COLOR2 = 11;
  1119. var BODY_FEATURE_SHAPE1 = 12;
  1120. var BODY_FEATURE_SHAPE_MIX = 13;
  1121. var BODY_FEATURE_SHAPE2 = 14;
  1122. var BODY_FEATURE_SKIN1 = 15;
  1123. var BODY_FEATURE_SKIN_MIX = 16;
  1124. var BODY_FEATURE_SKIN2 = 17;
  1125.  
  1126. var BODY_FEATURE_FACE_MIN = 18;
  1127. var BODY_FEATURE_FACE_MAX = 38;
  1128. var BODY_FEATURE_SAVE = 39;
  1129. var BODY_FEATURE_RESET = 40;
  1130. var BODY_FEATURE_BACK = 41;
  1131.  
  1132. var afkTimer = 0;
  1133. var afkTimerLimit = 600;
  1134. var inDrivingExam = 0;
  1135.  
  1136. // jsvariables end
  1137. // jsvar end
  1138.  
  1139. //money_label = API.drawText("Sula: $0\nPank: $0", (res.Width - 199), 26, 0.5, 0, 153, 0, 255, 7, 0, true, false, 0);
  1140. //money_label_shadow = API.addTextElement("Sula: $0\nPank: $0", (res.Width - 199), 26, 0.5, 0, 0, 0, 255, 7, -1);
  1141. //money_label = API.addTextElement("Sula: $0\n~w~Pank: $0", (res.Width - 200), 25, 0.5, 0, 153, 0, 255, 7, -1);
  1142.  
  1143. var list = new List(String);
  1144.  
  1145. var debugCefLoading = 0;
  1146.  
  1147. class CefHelper {
  1148.  
  1149.     constructor(resourcePath) {
  1150.         this.path = resourcePath;
  1151.         this.open = false;
  1152.     }
  1153.  
  1154.     show() {
  1155.         if (this.open === false) {
  1156.             this.open = true;
  1157.  
  1158.             var resolution = API.getScreenResolution();
  1159.             this.browser = API.createCefBrowser(resolution.Width, resolution.Height, true);
  1160.             API.waitUntilCefBrowserInit(this.browser);
  1161.  
  1162.             API.setChatVisible(false);
  1163.             API.setCefBrowserPosition(this.browser, 0, 0);
  1164.             API.loadPageCefBrowser(this.browser, this.path);
  1165.  
  1166.             API.showCursor(true);
  1167.         }
  1168.     }
  1169.  
  1170.     destroy() {
  1171.         this.open = false;
  1172.         API.destroyCefBrowser(this.browser);
  1173.         API.showCursor(false);
  1174.     }
  1175.  
  1176.     eval(string) {
  1177.         this.browser.eval(string);
  1178.     }
  1179.  
  1180.     call(functionName, args) {
  1181.         this.browser.call(functionName, args);
  1182.     }
  1183. }
  1184.  
  1185. class Cef {
  1186.     constructor(name, path) {
  1187.         this.cursor = false
  1188.         this.open = false
  1189.         this.external = false
  1190.         this.headless = false
  1191.         this.chat = false
  1192.         this.hud = false
  1193.  
  1194.         this.name = name
  1195.         this.path = path
  1196.     }
  1197.  
  1198.     load() {
  1199.         if (this.open) {
  1200.             return
  1201.         }
  1202.  
  1203.         const resolution = API.getScreenResolution()
  1204.  
  1205.         this.browser = API.createCefBrowser(resolution.Width, resolution.Height, !this.external)
  1206.         API.waitUntilCefBrowserInit(this.browser);
  1207.         API.setCefBrowserPosition(this.browser, 0, 0)
  1208.         API.setCefBrowserHeadless(this.browser, this.headless)
  1209.         API.loadPageCefBrowser(this.browser, this.path)
  1210.  
  1211.         if (!this.chat) { API.setCanOpenChat(false) }
  1212.         if (!this.hud) { API.setHudVisible(false) }
  1213.         if (this.cursor) { API.showCursor(true) }
  1214.         this.setOpen(true)
  1215.     }
  1216.  
  1217.     destroy() {
  1218.         API.destroyCefBrowser(this.browser)
  1219.  
  1220.         if (!this.chat) { API.setCanOpenChat(true) }
  1221.         if (!this.hud) { API.setHudVisible(true) }
  1222.         if (this.cursor) { API.showCursor(false) }
  1223.  
  1224.         this.setOpen(false)
  1225.     }
  1226.  
  1227.     eval(evalString) {
  1228.         this.browser.eval(evalString)
  1229.     }
  1230.  
  1231.     setExternal(newValue) { this.external = newValue }
  1232.     setHeadless(newValue) { this.headless = newValue }
  1233.     setCursorVisible(newValue) { this.cursor = newValue }
  1234.     setChatVisible(newValue) { this.chat = newValue }
  1235.     setHudVisible(newValue) { this.hud = newValue }
  1236.  
  1237.     setOpen(newValue) { this.open = newValue }
  1238. }
  1239.  
  1240. var cameraMaxDistance = 120;
  1241. var cameraStep = 0;
  1242. var customizationCharOriginalPos = new Vector3(-781.4241, 487.5605, 98.8913);
  1243. var angle = 0;
  1244. var radius = 3;
  1245. var cameraZ = 0;
  1246. var clothingPos = null;
  1247.  
  1248. var previouseHalfTime = 0;
  1249. var HUDTEXT_Money = "";
  1250. var HUDTEXT_Food = "";
  1251. var HUDTEXT_Speed = "";
  1252. var HUDTEXT_Fuel = "";
  1253. var HUDTEXT_Vehhp = "";
  1254. var HUDTEXT_Counter = "";
  1255. var HUDTEXT_Notification = "";
  1256. var HUDTEXT_Odometer = "";
  1257. var HUDTEXT_Compass = "";
  1258.  
  1259. var sentLoginInstructions = false;
  1260. var freezedTime = 0;
  1261. var alreadyCalculatedSpeed = false;
  1262.  
  1263. function GetVehicleSpeed(vehicle) {
  1264.     var _speed = 9999;
  1265.     if (!alreadyCalculatedSpeed) {
  1266.         velocity = API.getEntityVelocity(vehicle);
  1267.         _speed = Math.sqrt(
  1268.             velocity.X * velocity.X +
  1269.             velocity.Y * velocity.Y +
  1270.             velocity.Z * velocity.Z
  1271.         );
  1272.  
  1273.         _speed = (_speed * 3.6); // from m/s to km/h
  1274.         _speed = Math.round(_speed);
  1275.         alreadyCalculatedSpeed = true;
  1276.     }
  1277.     if (_speed == 9999) {
  1278.         _speed = speed;
  1279.     }
  1280.  
  1281.     return _speed;
  1282. }
  1283.  
  1284. API.onUpdate.connect(function () {
  1285.     if (freezed || currentHospitalTime > 0) {
  1286.         API.disableAllControlsThisFrame();
  1287.     }
  1288.  
  1289.     if (debugCefLoading > 0) {
  1290.         API.drawText("GTAV.ee - CEF Loading", (CurrentResXPos / 2), 20, 0.35, 209, 209, 209, 64, 0, 1, false, false, 0);
  1291.     } else {
  1292.         API.drawText("GTAV.ee Mängijaid: " + totalPlayers, (CurrentResXPos / 2) + 27, 20, 0.35, 209, 209, 209, 64, 0, 1, false, false, 0);
  1293.     }
  1294.  
  1295.     var currentTime = API.getGlobalTime();
  1296.     if (currentTime <= (freezedTime + 4000)) {
  1297.         API.disableControlThisFrame(71);
  1298.         API.disableControlThisFrame(72);
  1299.     }
  1300.  
  1301.     var difference = Math.abs(currentTime - previouseTime);
  1302.     if (isInClotheShop || freewill) {
  1303.         API.setTime(12, 0);
  1304.     }
  1305.  
  1306.     if (pullingFish) {
  1307.         API.disableControlThisFrame(30); // NOTE (Caupo 11.08.2017): Disableme liikumise kui püütakse kala. Kuna muidu osad liikusid liialt eemale ning kalastuskatkes.
  1308.         API.disableControlThisFrame(31);
  1309.  
  1310.         if (fishTimeLeft > 0 && CurrentResXPos > 0) {
  1311.             API.drawText(fishPullingStr, setting_minigame_pos_x, setting_minigame_pos_y, setting_minigame_font_size, setting_minigame_color_r, setting_minigame_color_g, setting_minigame_color_b, 255, setting_minigame_font_style, 1, true, false, 0);
  1312.         }
  1313.         else if (pullingFish) {
  1314.             API.triggerServerEvent("fishGotAWay");
  1315.             pullingFish = false;
  1316.         }
  1317.     }
  1318.     else if (pullingAfk) {
  1319.         API.disableControlThisFrame(30); // NOTE (Caupo 11.08.2017): Disableme liikumise kui püütakse kala. Kuna muidu osad liikusid liialt eemale ning kalastuskatkes.
  1320.         API.disableControlThisFrame(31);
  1321.  
  1322.         if (afkTimeLeft > 0 && CurrentResXPos > 0) {
  1323.             API.drawText(afkPullingStr, setting_minigame_pos_x, setting_minigame_pos_y, setting_minigame_font_size, setting_minigame_color_r, setting_minigame_color_g, setting_minigame_color_b, 255, setting_minigame_font_style, 1, true, false, 0);
  1324.         }
  1325.     }
  1326.     else if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED && chosenSetting == 9) {
  1327.         API.drawText("~h~MINIGAME WASD", setting_minigame_pos_x, setting_minigame_pos_y, setting_minigame_font_size, setting_minigame_color_r, setting_minigame_color_g, setting_minigame_color_b, 255, setting_minigame_font_style, 1, true, false, 0);
  1328.     }
  1329.  
  1330.     if (nearCartheftJob || menu.Visible) {
  1331.         API.disableControlThisFrame(36);
  1332.         API.disableControlThisFrame(44);
  1333.     }
  1334.  
  1335.     if (difference >= 1000) { // Aka after every second
  1336.  
  1337.         //API.callNative("SET_PED_MIN_GROUND_TIME_FOR_STUNGUN", API.getLocalPlayer(), 60000);
  1338.  
  1339.         /*var _bool = API.returnNative("IS_PED_BEING_STUNNED", 8, API.getLocalPlayer(), 1);
  1340.         if (_bool) {
  1341.             API.callNative("SET_PED_MIN_GROUND_TIME_FOR_STUNGUN", API.getLocalPlayer(), 60000);
  1342.         }*/
  1343.  
  1344.         if (updateSettingsIndexes > 0) { // NOTE (Caupo 04.10.2017): Menu ei suutnud enda indexeid muuta kui oli indexi muutmise listeneri sees. Seega tegin delayga.
  1345.             updateSettingsIndexes = 0;
  1346.             UpdateSettingsMenuIndexes();
  1347.         }
  1348.  
  1349.         var _rot = API.getEntityRotation(API.getLocalPlayer());
  1350.         _rot.Z += 180.0;
  1351.  
  1352.         if (_rot.Z > 337.5 || _rot.Z <= 22.5) {
  1353.             HUDTEXT_Compass = "S";
  1354.         }
  1355.         else if (_rot.Z > 22.5 && _rot.Z <= 67.5) {
  1356.             HUDTEXT_Compass = "SE";
  1357.         }
  1358.         else if (_rot.Z > 67.5 && _rot.Z <= 112.5) {
  1359.             HUDTEXT_Compass = "E";
  1360.         }
  1361.         else if (_rot.Z > 112.5 && _rot.Z <= 157.5) {
  1362.             HUDTEXT_Compass = "NE";
  1363.         }
  1364.         else if (_rot.Z > 157.5 && _rot.Z <= 202.5) {
  1365.             HUDTEXT_Compass = "N";
  1366.         }
  1367.         else if (_rot.Z > 202.5 && _rot.Z <= 247.5) {
  1368.             HUDTEXT_Compass = "NW";
  1369.         }
  1370.         else if (_rot.Z > 247.5 && _rot.Z <= 292.5) {
  1371.             HUDTEXT_Compass = "W";
  1372.         }
  1373.         else if (_rot.Z > 292.5 && _rot.Z <= 337.5) {
  1374.             HUDTEXT_Compass = "SW";
  1375.         }
  1376.  
  1377.         afkTimer += 1;
  1378.         if (afkTimer >= 570) {
  1379.             API.triggerServerEvent("afkTimer", afkTimer);
  1380.  
  1381.             var timeLeft = afkTimerLimit - afkTimer;
  1382.             if (timeLeft >= 0) {
  1383.                 API.showShard("~r~AFK Kick: " + timeLeft + "s");
  1384.             }
  1385.         }
  1386.         previouseTime = currentTime;
  1387.  
  1388.         if (gotDead && acceptedDeath) {
  1389.             if (camera == null) {
  1390.                 camera = API.createCamera(hospitalCamPos, hospitalCamLookAt);
  1391.             }
  1392.             API.setCameraPosition(camera, hospitalCamPos);
  1393.             API.pointCameraAtPosition(camera, hospitalCamLookAt);
  1394.             API.setActiveCamera(camera);
  1395.         }
  1396.         if (pullingFish) {
  1397.             fishTimeLeft -= 1;
  1398.  
  1399.             if (fishTimeLeft <= 0) {
  1400.                 API.triggerServerEvent("fishGotAway");
  1401.                 pullingFish = false;
  1402.             }
  1403.         }
  1404.         if (pullingAfk) {
  1405.             afkTimeLeft -= 1;
  1406.  
  1407.             if (afkTimeLeft <= 0) {
  1408.                 pullingAfk = false;
  1409.             }
  1410.         }
  1411.         if (kickMeDelayed) {
  1412.             kickDelay -= 1;
  1413.             if (kickDelay < 0) {
  1414.                 kickMeDelayed = false;
  1415.                 API.triggerServerEvent("kickMe");
  1416.             }
  1417.         }
  1418.  
  1419.         for (i = 0; i < deathMarkersSupportUpTo; i++) {
  1420.             if (currentTime >= (deathMarkersTime[i] + deathMarkerTime)) {
  1421.                 if (deathMarkers[i] !== null && deathMarkers[i] !== undefined) {
  1422.                     API.deleteEntity(deathMarkers[i]);
  1423.                     deathMarkers[i] = null;
  1424.                 }
  1425.             }
  1426.         }
  1427.  
  1428.         var _tempcurrentPos = API.getEntityPosition(API.getLocalPlayer());
  1429.  
  1430.         if (cartheftJob.DistanceTo(_tempcurrentPos) < 10) {
  1431.             nearCartheftJob = true;
  1432.         } else {
  1433.             nearCartheftJob = false;
  1434.         }
  1435.  
  1436.         if (gotDead && !acceptedDeath) { // Kui sai surma ja bleedout sai läbi ning pole nõustunud surmaga, siis pannakse ragdoll tagasi peale
  1437.             API.triggerServerEvent("syncRagdoll");
  1438.         }
  1439.     }
  1440.  
  1441.  
  1442.     var halfdifference = Math.abs(currentTime - previouseHalfTime);
  1443.     if (halfdifference >= 100) {
  1444.         /*if (gotDead && !acceptedDeath) { // Kui sai surma ja bleedout sai läbi ning pole nõustunud surmaga, siis pannakse ragdoll tagasi peale
  1445.             API.callNative("SET_PED_TO_RAGDOLL", API.getLocalPlayer(), 4000, 15000, 0, 0, 0, 0);
  1446.         }*/
  1447.         previouseHalfTime = currentTime;
  1448.     }
  1449.  
  1450.     if (movingObj) {
  1451.         API.drawText("~o~Nooled ~w~Liigutamine ~n~ ~o~Nooled/Ctrl/Shift + Space ~w~ Pöörab~n~ ~o~Ctrl/Shift ~w~ Vertikaal", (CurrentResXPos / 2), 25, 0.5, 255, 255, 255, 255, FONT_CHALET_LONDON, 1, true, false, 0);
  1452.  
  1453.         API.drawText("~o~Z,X~w~ Rot kiirus " + objRotValue + "~n~~o~C,V~w~ Pos kiirus " + objPosValue + "~n~~b~F ~w~Kopeeri ~g~E ~w~Salvesta ~r~Delete ~w~Eemalda", (CurrentResXPos / 2), 130, 0.5, 255, 255, 255, 255, FONT_CHALET_LONDON, 1, true, false, 0);
  1454.     }
  1455.  
  1456.     if (freewill) {
  1457.         afkTimer = 0;
  1458.         var _guide = "~o~Shift, Space ~w~ Kõrgus ~n~ ~o~R, F ~w~ Suund";
  1459.         API.drawText("Saad kaamera positsiooni liigutada nuppudega: ~n~ ~o~W, S ~w~ Kaugus ~n~ ~o~A, D ~w~ Keera", (CurrentResXPos / 2), 25, 0.5, 255, 255, 255, 255, FONT_CHALET_LONDON, 1, true, false, 0);
  1460.  
  1461.         if(menuIdx == MENU_IDX_FIRST_WARDROBE) {
  1462.             _guide += "~n~ ~w~Menüü:~b~ Riieteobjektid";
  1463.         }
  1464.         else if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) {
  1465.             _guide += "~n~ ~w~Menüü:~b~ Riieteobjektid";
  1466.         }
  1467.         else if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  1468.             _guide += "~n~ ~w~Menüü:~b~ Objektide variatsioonid";
  1469.         }
  1470.         else if (menuIdx == MENU_IDX_FACE_FEATURES) {
  1471.             _guide += "~n~ ~w~Menüü:~b~ Näo muutmine";
  1472.         }
  1473.         API.drawText(_guide, (CurrentResXPos / 2), 135, 0.5, 255, 255, 255, 255, FONT_CHALET_LONDON, 1, true, false, 0);
  1474.  
  1475.         /* NOTE from Caupo to whoever would come here to steal my camera position feature:
  1476.                 I don't know who you are. I don't know what you want.
  1477.                 If you are looking for ransom, I can tell you I don't have money.
  1478.                 But what I do have are a very particular set of skills,
  1479.                 skills I have acquired over a very long career.
  1480.                 Skills that make me a nightmare for people like you.
  1481.                 If you don't steal my feature, that'll be the end of it.
  1482.                 I will not look for you, I will not pursue you.
  1483.                 But if you don't, I will look for you, I will find you, and
  1484.                 I will kill you. */
  1485.  
  1486.         var _player = API.getLocalPlayer();
  1487.         API.setCameraRotation(camera, API.getGameplayCamRot());
  1488.         var cameraRot = API.getCameraRotation(camera);
  1489.         var cameraPos = API.getCameraPosition(camera);
  1490.         //API.setEntityPosition(_player, new Vector3(-781.4241, 487.5605, 99.8913));
  1491.         API.setEntityPosition(_player, customizationCharOriginalPos);
  1492.         var pi = 3.141592654
  1493.         var xradian = ((cameraRot.X * pi) / 180);
  1494.         var yradian = ((cameraRot.Z * pi) / 180);
  1495.         var zradian = ((cameraRot.Z * pi) / 180);
  1496.         var OldPos = API.getCameraPosition(camera);
  1497.         var currentSpeed = normalspeed;
  1498.  
  1499.         if (API.isControlPressed(87) || API.isControlPressed(268) || API.isControlPressed(35) || API.isControlPressed(34) || API.isControlPressed(21) || API.isControlPressed(22)) {
  1500.             cameraStep++;
  1501.             if (cameraStep >= 360) {
  1502.                 cameraStep = 0;
  1503.             }
  1504.  
  1505.             if (incrementerSpeedCounter < 25) {
  1506.                 incrementerSpeedCounter++;
  1507.                 API.setTime(12, 30);
  1508.             }
  1509.             if (incrementerSpeedCounter > 0) {
  1510.                 currentSpeed = (normalspeed * incrementerSpeedCounter);
  1511.             }
  1512.         }
  1513.         else {
  1514.             if (incrementerSpeedCounter > 0) {
  1515.                 incrementerSpeedCounter -= 1;
  1516.             }
  1517.         }
  1518.  
  1519.         var newx = null;
  1520.         var newy = null;
  1521.  
  1522.         if (API.isControlPressed(87)) // W button normal speed move straight
  1523.         {
  1524.             afkTimer = 0;
  1525.             radius -= 0.05;
  1526.             if (radius < 0.25) {
  1527.                 radius = 0.25;
  1528.             }
  1529.         }
  1530.         else if (API.isControlPressed(268)) // S button normal speed move back
  1531.         {
  1532.             afkTimer = 0;
  1533.             radius += 0.05;
  1534.             if (radius > 5) {
  1535.                 radius = 5;
  1536.             }
  1537.         }
  1538.         if (API.isControlPressed(23)) // ENTER button normal speed move straight
  1539.         {
  1540.             afkTimer = 0;
  1541.             cameraZ -= 0.05;
  1542.             if (cameraZ < -3) {
  1543.                 cameraZ = -3;
  1544.             }
  1545.         }
  1546.         else if (API.isControlPressed(45)) // RELOAD button normal speed move back
  1547.         {
  1548.             afkTimer = 0;
  1549.             cameraZ += 0.05;
  1550.             if (cameraZ > 3) {
  1551.                 cameraZ = 3;
  1552.             }
  1553.         }
  1554.         if (API.isControlPressed(35)) // D button normal speed move right
  1555.         {
  1556.             afkTimer = 0;
  1557.             API.enableControlThisFrame(35);
  1558.             angle += radius * Math.PI / 180;
  1559.         }
  1560.         else if (API.isControlPressed(34)) // A button normal speed move left
  1561.         {
  1562.             afkTimer = 0;
  1563.             API.enableControlThisFrame(34);
  1564.             angle -= radius * Math.PI / 180;
  1565.         }
  1566.         if (API.isControlPressed(21)) // Shift
  1567.         {
  1568.             afkTimer = 0;
  1569.  
  1570.             currentCamOffset += 0.05;
  1571.             cameraZ += 0.05;
  1572.             if (currentCamOffset > 3) {
  1573.                 currentCamOffset = 3;
  1574.             }
  1575.         }
  1576.         else if (API.isControlPressed(22)) // Space
  1577.         {
  1578.             afkTimer = 0;
  1579.  
  1580.             currentCamOffset -= 0.05;
  1581.             cameraZ -= 0.05;
  1582.             if (currentCamOffset < -3) {
  1583.                 currentCamOffset = 3;
  1584.             }
  1585.         }
  1586.         var newx = customizationCharOriginalPos.X + radius * Math.cos(angle);
  1587.         var newy = customizationCharOriginalPos.Y + radius * Math.sin(angle);
  1588.         API.setCameraPosition(camera, new Vector3(newx, newy, (customizationCharOriginalPos.Z + currentCamOffset)));
  1589.  
  1590.         API.pointCameraAtPosition(camera, new Vector3(customizationCharOriginalPos.X, customizationCharOriginalPos.Y, (customizationCharOriginalPos.Z + cameraZ)));
  1591.     }
  1592.  
  1593.     if (!loggedIn) {
  1594.         if (freewill == 0) {
  1595.             if (camera == null) {
  1596.                 camera = API.createCamera(globalCameraPos, globalCameraRot);
  1597.                 API.setActiveCamera(camera);
  1598.             }
  1599.             if (globalCameraRot != null && camera != null) {
  1600.                 API.setCameraRotation(camera, globalCameraRot);
  1601.             }
  1602.         }
  1603.         if (loginState == LOGIN_STATE_WRONG_USERNAME_OR_PASSWORD) {
  1604.             API.drawText("~r~Vale kasutajanimi või parool", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1605.         }
  1606.         else if (loginState == LOGIN_STATE_ALREADY_LOGGED_IN) {
  1607.             API.drawText("~r~Oled juba sisselogitud", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1608.         }
  1609.         else if (loginState == LOGIN_STATE_WARNS_FULL) {
  1610.             API.drawText("~r~Hoiatused on täis", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1611.         }
  1612.         else if (loginState == LOGIN_STATE_BANNED) {
  1613.             API.drawText("~r~Sa oled pagendatud/banned", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1614.         }
  1615.         else if (loginState == LOGIN_STATE_SOCIAL_CLUB_NOT_CONFIRMED) {
  1616.             API.drawText("~r~Su Social Club pole aktiveeritud UCPs", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1617.         }
  1618.         else if (loginState == LOGIN_STATE_RPTEST_NOT_PASSED) {
  1619.             API.drawText("~r~Su rollimängutest pole läbitud", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1620.         }
  1621.         else if (loginState == LOGIN_STATE_NO_CHARACTERS) {
  1622.             API.drawText("~r~Su foorumikontol pole karaktereid", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1623.         }
  1624.         else if (loginState == LOGIN_STATE_SYSTEM_ERROR) {
  1625.             API.drawText("~r~Süsteemi viga, teavita bugtrackeri!", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1626.         }
  1627.         else if (loginState == LOGIN_STATE_DEFAULTS_NOT_SET) {
  1628.             API.drawText("~r~Logi UCPsse korra sisse ja seejärel reconnecti.", (CurrentResXPos / 2), 25, setting_font_size, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1629.         } else if (!cefShown) {
  1630.             API.drawText("Kui sisselogimiskasti ei teki, siis vajuta T~n~ ning logi sisse ~o~/login Fooruminimi Parool", (CurrentResXPos / 2), 25, 1.5, 255, 255, 255, 255, setting_font, 1, true, false, 0);
  1631.         } else {
  1632.             if (!sentLoginInstructions) {
  1633.                 var _starttime = resourceStartedTime;
  1634.                 if (API.getGlobalTime() > (_starttime + 10000)) {
  1635.                     sentLoginInstructions = true;
  1636.                     API.triggerServerEvent("sendNotification", "Vajuta ~g~F1~w~, et sisselogida tekstikasti kaudu. Vajuta ~b~T~w~ tähte, et avada tekstikast.");
  1637.                 }
  1638.             }
  1639.         }
  1640.         return;
  1641.     }
  1642.  
  1643.     HUDTEXT_Money = "$" + currentMoney;
  1644.     HUDTEXT_Food = "Toit: " + food;
  1645.     HUDTEXT_Speed = "";
  1646.     HUDTEXT_Fuel = "";
  1647.     HUDTEXT_Vehhp = "";
  1648.     HUDTEXT_Counter = "";
  1649.     HUDTEXT_Notification = "";
  1650.     HUDTEXT_Odometer = "";
  1651.  
  1652.     if (currentHospitalTime > 0) {
  1653.         HUDTEXT_Counter += "Haiglaaeg: " + currentHospitalTime;
  1654.     }
  1655.     if (currentJailTime > 0) {
  1656.         HUDTEXT_Counter += "~n~Vanglaaeg: " + currentJailTime;
  1657.     }
  1658.     if (currentAJailTime > 0) {
  1659.         HUDTEXT_Counter += "~n~Ajail: " + currentAJailTime;
  1660.     }
  1661.  
  1662.     /*if (deathTime > 0) {
  1663.         HUDText += "\n Suremine: "+deathTime;
  1664.     }*/
  1665.     if (blockKey >= 0) {
  1666.         API.disableControlThisFrame(blockKey);
  1667.     }
  1668.  
  1669.     if (isInCar == 1) {
  1670.         if (difference >= 1000) {
  1671.         }
  1672.         API.disableControlThisFrame(60); // Ülesse ja alla sõiduki kontrollimine õhus disableb (VehicleMoveUpDown)
  1673.     }
  1674.  
  1675.     player = API.getLocalPlayer();
  1676.     if (API.isPlayerInAnyVehicle(player)) {
  1677.         vehicle = API.getPlayerVehicle(player);
  1678.         /*
  1679.         var _bool = API.returnNative("IS_ENTITY_IN_WATER", 8, vehicle);
  1680.         if (isVehicleInWater != _bool) {
  1681.             API.triggerServerEvent("setPlayerWaterState", _bool);
  1682.         }
  1683.         isVehicleInWater = _bool;
  1684.         */
  1685.         var _rotation = API.getEntityRotation(vehicle);
  1686.         if (vehicle !== null && vehicle !== undefined) {
  1687.             if ((_rotation.X > 150 && _rotation.X < 210) || (_rotation.X > -210 && _rotation.X < -150) || (_rotation.Y > 150 && _rotation.Y < 210) || (_rotation.Y > -210 && _rotation.Y < -150)) {
  1688.                 API.disableControlThisFrame(59);
  1689.             }
  1690.         }
  1691.  
  1692.         if (cruiseSpeed > 0 || speedlimited || inDrivingExam || noAccelereationPos != null) {
  1693.             if (vehicle !== null && vehicle !== undefined)
  1694.             {
  1695.                 speed = GetVehicleSpeed(vehicle);
  1696.             }
  1697.  
  1698.             if (noAccelereationPos != null) {
  1699.                 var _currentpos = API.getEntityPosition(API.getLocalPlayer());
  1700.  
  1701.                 if (noAccelereationPos.DistanceTo(_currentpos) < 50 && speed > 50) {
  1702.                     API.disableControlThisFrame(71);
  1703.                     API.enableControlThisFrame(72);
  1704.                 }
  1705.                 else if (noAccelereationPos.DistanceTo(_currentpos) < 40 && speed > 30) {
  1706.                     API.disableControlThisFrame(71);
  1707.                     API.enableControlThisFrame(72);
  1708.                 }
  1709.                 else if (noAccelereationPos.DistanceTo(_currentpos) < 30 && speed > 20) {
  1710.                     API.disableControlThisFrame(71);
  1711.                     API.enableControlThisFrame(72);
  1712.                     API.enableControlThisFrame(76);
  1713.                 }
  1714.                 else if (noAccelereationPos.DistanceTo(_currentpos) < 15 && speed > 10) {
  1715.                     API.disableControlThisFrame(71);
  1716.                     API.enableControlThisFrame(72);
  1717.                     API.enableControlThisFrame(76);
  1718.                 }
  1719.                 else if (noAccelereationPos.DistanceTo(_currentpos) < 2.5) {
  1720.                     API.disableControlThisFrame(71);
  1721.                     API.enableControlThisFrame(72);
  1722.                     API.enableControlThisFrame(76);
  1723.                 }
  1724.             }
  1725.  
  1726.             if (speed > 5) {
  1727.                 afkTimer = 0;
  1728.             }
  1729.  
  1730.             //API.displaySubtitle("[" + speedlimited + "] [" + speed + "] [" + speedlimitvalue + "]");
  1731.             if (inDrivingExam) {
  1732.                 if (speed >= cruiseSpeed && cruiseSpeed > 0) {
  1733.                     API.disableControlThisFrame(71);
  1734.                     if (speed > 65) {
  1735.                         API.displaySubtitle("ÜLETASID KIIRUST: ~r~" + speed + "~w~km/h");
  1736.                         API.triggerServerEvent("playerExceededSpeed");
  1737.                     }
  1738.                 }
  1739.                 else if (speed > 65) {
  1740.                     API.displaySubtitle("ÜLETASID KIIRUST: ~r~" + speed+"~w~km/h");
  1741.                     API.triggerServerEvent("playerExceededSpeed");
  1742.                 }
  1743.             } else if (speedlimited || cruiseSpeed > 0) {
  1744.                 if (speedlimited && speed >= speedlimitvalue) {
  1745.                     API.disableControlThisFrame(71);
  1746.                 }
  1747.                 else if (speed >= cruiseSpeed && !speedlimited) {
  1748.                     API.disableControlThisFrame(71);
  1749.                 }
  1750.             }
  1751.         }
  1752.  
  1753.         if (spikestripsTotal > 0)
  1754.         {
  1755.             if (API.getPlayerVehicleSeat(player) == -1) {
  1756.                 if (API.getGlobalTime() > (spiked + 3000)) {
  1757.                     var _currentposx = API.getEntityPosition(API.getLocalPlayer());
  1758.                     for (var i = 0; i < spikestripsTotal; i++) {
  1759.                         if (spikestrips[i] !== null || spikestrips[i] !== undefined) {
  1760.                             if (spikestrips[i].DistanceTo(_currentposx) < 8) {
  1761.                                 spiked = API.getGlobalTime();
  1762.                                 API.triggerServerEvent("popTires");
  1763.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 0, true, 50);
  1764.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 1, true, 50);
  1765.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 2, true, 50);
  1766.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 3, true, 50);
  1767.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 4, true, 50);
  1768.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 5, true, 50);
  1769.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 6, true, 50);
  1770.                                 API.callNative("SET_VEHICLE_TYRE_BURST", vehicle, 7, true, 50);
  1771.                             }
  1772.                         }
  1773.                     }
  1774.                 }
  1775.             }
  1776.         }
  1777.  
  1778.         updateSpeedSequence++;
  1779.         if (updateSpeedSequence >= setting_update_speed) {
  1780.             updateSpeedSequence = 0;
  1781.  
  1782.             if (vehicle !== null && vehicle !== undefined) {
  1783.                 vehHealth = API.getVehicleHealth(vehicle);
  1784.  
  1785.                 speed = GetVehicleSpeed(vehicle);
  1786.  
  1787.                 if (speed > 5) {
  1788.                     afkTimer = 0;
  1789.                 }
  1790.  
  1791.                 vehHealth = Math.round(vehHealth);
  1792.             }
  1793.         }
  1794.         if (setting_show_speed) {
  1795.             HUDTEXT_Speed += speed + " kmh";
  1796.         }
  1797.     }
  1798.  
  1799.     alreadyCalculatedSpeed = false; // NOTE (Caupo 14.09.2017): See peab olema peale viimast GetVehicleSpeed funktsiooni.
  1800.  
  1801.     if (setting_show_vehicle_fuel) {
  1802.         if (API.isPlayerInAnyVehicle(player)) {
  1803.             HUDTEXT_Fuel += currentFuel + " L ";
  1804.             HUDTEXT_Notification += currentOctane + "/" + vehicleOctane + " Okt";
  1805.             HUDTEXT_Odometer = odometer + "km";
  1806.         }
  1807.     }
  1808.     if (setting_show_vehicle_health) {
  1809.         if (API.isPlayerInAnyVehicle(player)) {
  1810.             HUDTEXT_Vehhp = vehHealth + " hp";
  1811.         }
  1812.     }
  1813.  
  1814.     if (!selectingChar) {
  1815.         API.drawText(HUDTEXT_Money, (CurrentResXPos - setting_money_pos_x), setting_money_pos_y, setting_money_font_size_display, setting_money_color_r, setting_money_color_g, setting_money_color_b, setting_money_opacity, setting_money_font_style, 0, true, false, 0);
  1816.         API.drawText(HUDTEXT_Food, (CurrentResXPos - setting_food_pos_x), setting_food_pos_y, setting_food_font_size_display, setting_food_color_r, setting_food_color_g, setting_food_color_b, setting_food_opacity, setting_food_font_style, 0, true, false, 0);
  1817.         API.drawText(HUDTEXT_Speed, (CurrentResXPos - setting_speed_pos_x), (CurrentResYPos - setting_speed_pos_y), setting_speed_font_size_display, setting_speed_color_r, setting_speed_color_g, setting_speed_color_b, setting_speed_opacity, setting_speed_font_style, 0, true, false, 0);
  1818.         API.drawText(HUDTEXT_Fuel, (CurrentResXPos - setting_fuel_pos_x), (CurrentResYPos - setting_fuel_pos_y), setting_fuel_font_size_display, setting_fuel_color_r, setting_fuel_color_g, setting_fuel_color_b, setting_fuel_opacity, setting_fuel_font_style, 0, true, false, 0);
  1819.         API.drawText(HUDTEXT_Vehhp, (CurrentResXPos - setting_vehhp_pos_x), (CurrentResYPos - setting_vehhp_pos_y), setting_vehhp_font_size_display, setting_vehhp_color_r, setting_vehhp_color_g, setting_vehhp_color_b, setting_vehhp_opacity, setting_vehhp_font_style, 0, true, false, 0);
  1820.         API.drawText(HUDTEXT_Counter, (CurrentResXPos - setting_counter_pos_x), setting_counter_pos_y, setting_counter_font_size_display, setting_counter_color_r, setting_counter_color_g, setting_counter_color_b, setting_counter_opacity, setting_counter_font_style, 0, true, false, 0);
  1821.         API.drawText(HUDTEXT_Odometer, (CurrentResXPos - setting_odometer_pos_x), setting_odometer_pos_y, setting_odometer_font_size_display, setting_odometer_color_r, setting_odometer_color_g, setting_odometer_color_b, setting_odometer_opacity, setting_odometer_font_style, 0, true, false, 0);
  1822.         API.drawText(HUDTEXT_Notification, (CurrentResXPos - setting_notification_pos_x), setting_notification_pos_y, setting_notification_font_size_display, setting_notification_color_r, setting_notification_color_g, setting_notification_color_b, setting_notification_opacity, setting_notification_font_style, 0, true, false, 0);
  1823.         API.drawText(HUDTEXT_Compass, (CurrentResXPos - setting_compass_pos_x), setting_compass_pos_y, setting_compass_font_size_display, setting_compass_color_r, setting_compass_color_g, setting_compass_color_b, setting_compass_opacity, setting_compass_font_style, 0, true, false, 0);
  1824.     }
  1825.    
  1826.     //API.drawText(HUDText, (res.Width - setting_hud_width), setting_hud_height, setting_font_size, hudColorR, hudColorG, hudColorB, 255, setting_font, 0, true, false, 0);
  1827.  
  1828.     if (loginMsgTimeAppeared > 0) {
  1829.         var currentTime = API.getGlobalTime();
  1830.  
  1831.         if (currentTime <= (loginMsgTime + loginMsgTimeAppeared)) {
  1832.             if (loginMsg == "Sisselogimine õnnestus!") {
  1833.                 API.drawText(loginMsg, (CurrentResXPos / 2), 50, setting_font_size, loginSuccessColorR, loginSuccessColorG, loginSuccessColorB, 255, setting_font, 1, true, false, 0);
  1834.             } else {
  1835.                 API.drawText("Sisselogimine ebaõnnestus:\n~w~" + loginMsg, (CurrentResXPos / 2), 25, 1, loginFailedColorR, loginFailedColorG, loginFailedColorB, 255, setting_font, 1, true, false, 0);
  1836.             }
  1837.         }
  1838.     }
  1839.     if (footerMsgTimeAppeared > 0) {
  1840.         var currentTime = API.getGlobalTime();
  1841.  
  1842.         if (currentTime <= (footerMsgTime + footerMsgTimeAppeared)) {
  1843.             API.drawText(footerMsg, (CurrentResXPos - setting_notification_pos_x), setting_notification_pos_y, 0.5, setting_notification_color_r, setting_notification_color_g, setting_notification_color_b, 255, setting_notification_font_style, 1, true, false, 0);
  1844.         }
  1845.     }
  1846.  
  1847.  
  1848.     // MultiplayerInfo
  1849.     if (!API.isChatOpen() && API.isControlJustPressed(19 /* MultiplayerInfo */)) {
  1850.  
  1851.         API.triggerServerEvent("keyAlt");
  1852.         g_currentState++;
  1853.         g_stateSet = API.getGameTime();
  1854.         API.triggerServerEvent("playerlist_pings");
  1855.         if (g_currentState == 1) {
  1856.             g_currentPage = 0;
  1857.             return;
  1858.         }
  1859.         if (g_currentState == 2) {
  1860.             API.callNative("_SET_RADAR_BIGMAP_ENABLED", true, false);
  1861.         }
  1862.         if (g_currentState == 3) {
  1863.             g_currentState = 0;
  1864.             API.callNative("_SET_RADAR_BIGMAP_ENABLED", false, false);
  1865.         }
  1866.     }
  1867.     if (g_currentState > 0 && API.getGameTime() - g_stateSet > 3000) {
  1868.         g_currentState = 0;
  1869.         API.callNative("_SET_RADAR_BIGMAP_ENABLED", false, false);
  1870.     }
  1871.     if (g_currentState == 1) {
  1872.         // Get list data
  1873.         var resolution = API.getScreenResolutionMaintainRatio();
  1874.         var listPadding = 4;
  1875.         var listLine = 28;
  1876.         var listBorder = 2;
  1877.         var listItemsPerPage = Math.floor((resolution.Height * 0.8) / listLine);
  1878.         var listPages = Math.ceil(g_players.length / listItemsPerPage);
  1879.         // Page navigation is here for now because the onKeyDown method doesn't work
  1880.         if (listPages > 1) {
  1881.             if (API.isControlJustPressed(172 /* PhoneUp */)) {
  1882.                 g_stateSet = API.getGameTime();
  1883.                 if (--g_currentPage < 0) {
  1884.                     g_currentPage = listPages - 1;
  1885.                 }
  1886.             }
  1887.             else if (API.isControlJustPressed(173 /* PhoneDown */)) {
  1888.                 g_stateSet = API.getGameTime();
  1889.                 if (++g_currentPage >= listPages) {
  1890.                     g_currentPage = 0;
  1891.                 }
  1892.             }
  1893.         }
  1894.         var listPageStart = g_currentPage * listItemsPerPage;
  1895.         var listPageCount = Math.min(g_players.length - listPageStart, listItemsPerPage);
  1896.         var listWidth = resolution.Width * 0.4;
  1897.         var listHeight = (Math.min(g_players.length, listPageCount) + 1) * 28 + listPadding * 2;
  1898.         var listX = resolution.Width / 2 - listWidth / 2;
  1899.         var listY = Math.max(30, resolution.Height * 0.3 - listHeight / 2);
  1900.         // Fill
  1901.         API.drawRectangle(listX, listY, listWidth, listHeight, 0, 0, 0, 220);
  1902.         // Separator
  1903.         API.drawRectangle(listX, listY + listLine, listWidth, listBorder, 100, 100, 100, 220);
  1904.         // Left
  1905.         API.drawRectangle(listX - listBorder, listY - listBorder, listBorder, listHeight + listBorder * 2, 255, 255, 255, 220);
  1906.         // Right
  1907.         API.drawRectangle(listX + listWidth, listY - listBorder, listBorder, listHeight + listBorder * 2, 255, 255, 255, 220);
  1908.         // Top
  1909.         API.drawRectangle(listX, listY - listBorder, listWidth, listBorder, 255, 255, 255, 220);
  1910.         // Bottom
  1911.         API.drawRectangle(listX, listY + listHeight, listWidth, listBorder, 255, 255, 255, 220);
  1912.         // Page indicators
  1913.         if (g_currentPage > 0) {
  1914.             API.drawText("3", listX + listWidth / 2, listY + listLine, 0.5, 255, 255, 255, 255, 3, 1, true, true, 0);
  1915.         }
  1916.         if (g_currentPage < listPages - 1) {
  1917.             API.drawText("4", listX + listWidth / 2, listY + listHeight - listLine * 2, 0.5, 255, 255, 255, 255, 3, 1, true, true, 0);
  1918.         }
  1919.         // Header
  1920.         API.drawText("ID", listX + listPadding, listY - listPadding / 2, 0.4, 255, 255, 0, 255, 0, 0, true, true, 0);
  1921.         API.drawText("Nimi", listX + listPadding + 50, listY - listPadding / 2, 0.4, 255, 255, 0, 255, 0, 0, true, true, 0);
  1922.         API.drawText("Mängutunnid", listX + listPadding + 250, listY - listPadding / 2, 0.4, 255, 255, 0, 255, 0, 0, true, true, 0);
  1923.         API.drawText("Ping", listX + listWidth - listPadding, listY - listPadding / 2, 0.4, 255, 255, 0, 255, 0, 2, true, true, 0);
  1924.         // Players
  1925.         for (var i = 0; i < listPageCount; i++) {
  1926.             var player = g_players[listPageStart + i];
  1927.             var color = player.color;
  1928.             API.drawText("" + player.id,    listX + listPadding,                listY + listPadding / 2 + listLine * (i + 1), 0.45, color[0], color[1], color[2], 255, 4, 0, true, true, 0);
  1929.             API.drawText(player.name,       listX + listPadding + 50,           listY + listPadding / 2 + listLine * (i + 1), 0.45, color[0], color[1], color[2], 255, 4, 0, true, true, 0);
  1930.             API.drawText("" + player.gh,    listX + listPadding + 250,           listY + listPadding / 2 + listLine * (i + 1), 0.45, color[0], color[1], color[2], 255, 4, 0, true, true, 0);
  1931.             API.drawText("" + player.ping,  listX + listWidth - listPadding,    listY + listPadding / 2 + listLine * (i + 1), 0.45, 100, 100, 100, 255, 4, 2, true, true, 0);
  1932.         }
  1933.     }
  1934.  
  1935.  
  1936.     if (API.isControlPressed(87)) // W button normal speed move straight
  1937.     {
  1938.         afkTimer = 0;
  1939.     }
  1940.     else if (API.isControlPressed(268)) // S button normal speed move back
  1941.     {
  1942.         afkTimer = 0;
  1943.     }
  1944.     else if (API.isControlPressed(23)) // ENTER button normal speed move straight
  1945.     {
  1946.         afkTimer = 0;
  1947.     }
  1948.     else if (API.isControlPressed(45)) // RELOAD button normal speed move back
  1949.     {
  1950.         afkTimer = 0;
  1951.     }
  1952.     else if (API.isControlPressed(35)) // D button normal speed move right
  1953.     {
  1954.         afkTimer = 0;
  1955.     }
  1956.     else if (API.isControlPressed(34)) // A button normal speed move left
  1957.     {
  1958.         afkTimer = 0;
  1959.     }
  1960.     else if (API.isControlPressed(21)) // Shift
  1961.     {
  1962.         afkTimer = 0;
  1963.     }
  1964.     else if (API.isControlPressed(22)) // Space
  1965.     {
  1966.         afkTimer = 0;
  1967.     }
  1968.  
  1969.     if (selectingObjWithCursor) {
  1970.         var cursOp = API.getCursorPositionMaintainRatio();
  1971.         var s2w = API.screenToWorldMaintainRatio(cursOp);
  1972.         var _flag = selectingWithCursorType;
  1973.         var rayCast = API.createRaycast(API.getGameplayCamPos(), s2w, _flag, null);
  1974.         var localH = null;
  1975.         var localV = 0;
  1976.         if (rayCast.didHitEntity) {
  1977.             localH = rayCast.hitEntity;
  1978.             localV = localH.Value;
  1979.         }
  1980.  
  1981.         API.displaySubtitle("Object Handle: " + localV);
  1982.  
  1983.         if (localV != lastDoorV) {
  1984.             if (localH != null) API.setEntityTransparency(localH, 50);
  1985.             if (lastDoor != null) API.setEntityTransparency(lastDoor, 255);
  1986.             lastDoor = localH;
  1987.             lastDoorV = localV;
  1988.         }
  1989.  
  1990.         if (API.isDisabledControlJustPressed(24)) {
  1991.             API.showCursor(false);
  1992.             selectingDoor = false;
  1993.             selectingObjWithCursor = false;
  1994.  
  1995.             if (localH != null) {
  1996.                 API.sendChatMessage("Object model ID valitud " + API.getEntityModel(localH));
  1997.                 API.triggerServerEvent("selectedObject", localH);
  1998.                 selectedObj = localH;
  1999.                 movingObj = true;
  2000.             }
  2001.         }
  2002.  
  2003.     } else if (selectingVehicleWithCursor) {
  2004.         var cursOp = API.getCursorPositionMaintainRatio();
  2005.         var s2w = API.screenToWorldMaintainRatio(cursOp);
  2006.         var _flag = selectingWithCursorType;
  2007.         var rayCast = API.createRaycast(API.getGameplayCamPos(), s2w, _flag, null);
  2008.         var localH = null;
  2009.         var localV = 0;
  2010.         if (rayCast.didHitEntity) {
  2011.             localH = rayCast.hitEntity;
  2012.             localV = localH.Value;
  2013.         }
  2014.  
  2015.         API.displaySubtitle("Vehicle handle: " + localV);
  2016.  
  2017.         if (localV != lastVehicleV) {
  2018.             if (localH != null) API.setEntityTransparency(localH, 50);
  2019.             if (lastVehicle != null) API.setEntityTransparency(lastVehicle, 255);
  2020.             lastVehicle = localH;
  2021.             lastVehicleV = localV;
  2022.         }
  2023.  
  2024.         if (API.isDisabledControlJustPressed(24)) {
  2025.             API.showCursor(false);
  2026.             selectingVehicleWithCursor = false;
  2027.  
  2028.             if (localH != null) {
  2029.                 API.sendChatMessage("Vehicle model ID valitud " + API.getEntityModel(localH));
  2030.                 API.triggerServerEvent("selectedVehicle", localH);
  2031.                 if (localH != null) API.setEntityTransparency(localH, 50);
  2032.                 if (lastVehicle != null) API.setEntityTransparency(lastVehicle, 255);
  2033.  
  2034.                 menuIdx = MENU_IDX_SELECTED_VEHICLE_MENU;
  2035.                 if (menu == null) {
  2036.                     menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  2037.                 }
  2038.                 menu.Clear();
  2039.  
  2040.                 menu.AddItem(API.createMenuItem("~y~Juhiuks", "Valimiseks vajuta ~g~[ENTER]"));
  2041.                 menu.AddItem(API.createMenuItem("~y~Kaasreisija", "Valimiseks vajuta ~g~[ENTER]"));
  2042.                 menu.AddItem(API.createMenuItem("~y~Vasak tagumine", "Valimiseks vajuta ~g~[ENTER]"));
  2043.                 menu.AddItem(API.createMenuItem("~y~Parem tagumine", "Valimiseks vajuta ~g~[ENTER]"));
  2044.                 menu.AddItem(API.createMenuItem("~b~Kapott", "Valimiseks vajuta ~g~[ENTER]"));
  2045.                 menu.AddItem(API.createMenuItem("~b~Pagasnik", "Valimiseks vajuta ~g~[ENTER]"));
  2046.                 menu.AddItem(API.createMenuItem("~q~Tagumine1", "Valimiseks vajuta ~g~[ENTER]"));
  2047.                 menu.AddItem(API.createMenuItem("~q~Tagumine2", "Valimiseks vajuta ~g~[ENTER]"));
  2048.                 menu.AddItem(API.createMenuItem("~g~Lukk", "Valimiseks vajuta ~g~[ENTER]"));
  2049.  
  2050.                 menu.CurrentSelection = 0;
  2051.                 menu.Visible = true;
  2052.  
  2053.             }
  2054.         }
  2055.  
  2056.     } else {
  2057.         if (lastDoor != null) {
  2058.             API.setEntityTransparency(lastDoor, 255);
  2059.             lastDoor = null;
  2060.         }
  2061.         if (API.isControlPressed(24) && halfdifference >= 100) {
  2062.             API.triggerServerEvent("OnPlayerMouseLeftClick");
  2063.         }
  2064.     }
  2065. });
  2066.  
  2067. g_menu.OnItemSelect.connect(function (sender, item, index) {
  2068.     API.sendChatMessage("Sa valisid skinn ID: ~g~" + index);
  2069.     API.triggerServerEvent("choseSkin", index);
  2070.     afkTimer = 0;
  2071. });
  2072.  
  2073. hudfontSizeList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2074.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2075.         setting_money_font_size = new_index;
  2076.  
  2077.         var _index = (new_index + 1);
  2078.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2079.         setting_money_font_size_display = size;
  2080.     }
  2081. });
  2082.  
  2083. hudfontStyleList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2084.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2085.         setting_money_font_style = new_index;
  2086.     }
  2087. });
  2088.  
  2089. hudColorRList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2090.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2091.         setting_money_color_r = new_index;
  2092.     }
  2093. });
  2094.  
  2095. hudColorGList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2096.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2097.         setting_money_color_g = new_index;
  2098.     }
  2099. });
  2100.  
  2101. hudColorBList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2102.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2103.         setting_money_color_b = new_index;
  2104.     }
  2105. });
  2106.  
  2107. hudPosXList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2108.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2109.         setting_money_pos_x = new_index;
  2110.     }
  2111. });
  2112.  
  2113. hudPosYList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2114.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2115.         setting_money_pos_y = new_index;
  2116.     }
  2117. });
  2118.  
  2119. hudOpacityList_MONEY.OnListChanged.connect(function (sender, new_index) {
  2120.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2121.         setting_money_opacity = new_index;
  2122.     }
  2123. });
  2124.  
  2125. // END LIST
  2126.  
  2127. hudfontSizeList_FOOD.OnListChanged.connect(function (sender, new_index) {
  2128.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2129.         setting_food_font_size = new_index;
  2130.  
  2131.         var _index = (new_index + 1);
  2132.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2133.         setting_food_font_size_display = size;
  2134.     }
  2135. });
  2136.  
  2137. hudfontStyleListFOOD_.OnListChanged.connect(function (sender, new_index) {
  2138.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2139.         setting_food_font_style = new_index;
  2140.     }
  2141. });
  2142.  
  2143. hudColorRList_FOOD.OnListChanged.connect(function (sender, new_index) {
  2144.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2145.         setting_food_color_r = new_index;
  2146.     }
  2147. });
  2148.  
  2149. hudColorGList_FOOD.OnListChanged.connect(function (sender, new_index) {
  2150.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2151.         setting_food_color_g = new_index;
  2152.     }
  2153. });
  2154.  
  2155. hudColorBList_FOOD.OnListChanged.connect(function (sender, new_index) {
  2156.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2157.         setting_food_color_b = new_index;
  2158.     }
  2159. });
  2160.  
  2161. hudPosXList_FOOD.OnListChanged.connect(function (sender, new_index) {
  2162.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2163.         setting_food_pos_x = new_index;
  2164.     }
  2165. });
  2166.  
  2167. hudPosYList_FOOD.OnListChanged.connect(function (sender, new_index) {
  2168.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2169.         setting_food_pos_y = new_index;
  2170.     }
  2171. });
  2172.  
  2173. hudOpacityList_FOOD.OnListChanged.connect(function (sender, new_index) {
  2174.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2175.         setting_food_opacity = new_index;
  2176.     }
  2177. });
  2178.  
  2179. // END LIST
  2180.  
  2181. hudfontSizeList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2182.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2183.         setting_speed_font_size = new_index;
  2184.  
  2185.         var _index = (new_index + 1);
  2186.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2187.         setting_speed_font_size_display = size;
  2188.     }
  2189. });
  2190.  
  2191. hudfontStyleList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2192.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2193.         setting_speed_font_style = new_index;
  2194.     }
  2195. });
  2196.  
  2197. hudColorRList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2198.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2199.         setting_speed_color_r = new_index;
  2200.     }
  2201. });
  2202.  
  2203. hudColorGList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2204.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2205.         setting_speed_color_g = new_index;
  2206.     }
  2207. });
  2208.  
  2209. hudColorBList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2210.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2211.         setting_speed_color_b = new_index;
  2212.     }
  2213. });
  2214.  
  2215. hudPosXList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2216.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2217.         setting_speed_pos_x = new_index;
  2218.     }
  2219. });
  2220.  
  2221. hudPosYList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2222.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2223.         setting_speed_pos_y = new_index;
  2224.     }
  2225. });
  2226.  
  2227. hudOpacityList_SPEED.OnListChanged.connect(function (sender, new_index) {
  2228.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2229.         setting_speed_opacity = new_index;
  2230.     }
  2231. });
  2232.  
  2233. // END LIST
  2234.  
  2235. hudfontSizeList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2236.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2237.         setting_fuel_font_size = new_index;
  2238.  
  2239.         var _index = (new_index + 1);
  2240.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2241.         setting_fuel_font_size_display = size;
  2242.     }
  2243. });
  2244.  
  2245. hudfontStyleList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2246.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2247.         setting_fuel_font_style = new_index;
  2248.     }
  2249. });
  2250.  
  2251. hudColorRList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2252.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2253.         setting_fuel_color_r = new_index;
  2254.     }
  2255. });
  2256.  
  2257. hudColorGList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2258.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2259.         setting_fuel_color_g = new_index;
  2260.     }
  2261. });
  2262.  
  2263. hudColorBList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2264.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2265.         setting_fuel_color_b = new_index;
  2266.     }
  2267. });
  2268.  
  2269. hudPosXList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2270.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2271.         setting_fuel_pos_x = new_index;
  2272.     }
  2273. });
  2274.  
  2275. hudPosYList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2276.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2277.         setting_fuel_pos_y = new_index;
  2278.     }
  2279. });
  2280.  
  2281. hudOpacityList_FUEL.OnListChanged.connect(function (sender, new_index) {
  2282.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2283.         setting_fuel_opacity = new_index;
  2284.     }
  2285. });
  2286.  
  2287. // END LIST
  2288.  
  2289. hudfontSizeList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2290.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2291.         setting_vehhp_font_size = new_index;
  2292.  
  2293.         var _index = (new_index + 1);
  2294.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2295.         setting_vehhp_font_size_display = size;
  2296.     }
  2297. });
  2298.  
  2299. hudfontStyleList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2300.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2301.         setting_vehhp_font_style = new_index;
  2302.     }
  2303. });
  2304.  
  2305. hudColorRList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2306.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2307.         setting_vehhp_color_r = new_index;
  2308.     }
  2309. });
  2310.  
  2311. hudColorGList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2312.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2313.         setting_vehhp_color_g = new_index;
  2314.     }
  2315. });
  2316.  
  2317. hudColorBList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2318.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2319.         setting_vehhp_color_b = new_index;
  2320.     }
  2321. });
  2322.  
  2323. hudPosXList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2324.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2325.         setting_vehhp_pos_x = new_index;
  2326.     }
  2327. });
  2328.  
  2329. hudPosYList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2330.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2331.         setting_vehhp_pos_y = new_index;
  2332.     }
  2333. });
  2334.  
  2335. hudOpacityList_VEHHP.OnListChanged.connect(function (sender, new_index) {
  2336.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2337.         setting_vehhp_opacity = new_index;
  2338.     }
  2339. });
  2340.  
  2341. // END LIST
  2342.  
  2343. hudfontSizeList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2344.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2345.         setting_counter_font_size = new_index;
  2346.  
  2347.         var _index = (new_index + 1);
  2348.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2349.         setting_counter_font_size_display = size;
  2350.     }
  2351. });
  2352.  
  2353. hudfontStyleList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2354.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2355.         setting_counter_font_style = new_index;
  2356.     }
  2357. });
  2358.  
  2359. hudColorRList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2360.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2361.         setting_counter_color_r = new_index;
  2362.     }
  2363. });
  2364.  
  2365. hudColorGList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2366.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2367.         setting_counter_color_g = new_index;
  2368.     }
  2369. });
  2370.  
  2371. hudColorBList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2372.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2373.         setting_counter_color_b = new_index;
  2374.     }
  2375. });
  2376.  
  2377. hudPosXList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2378.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2379.         setting_counter_pos_x = new_index;
  2380.     }
  2381. });
  2382.  
  2383. hudPosYList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2384.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2385.         setting_counter_pos_y = new_index;
  2386.     }
  2387. });
  2388.  
  2389. hudOpacityList_COUNTER.OnListChanged.connect(function (sender, new_index) {
  2390.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2391.         setting_counter_opacity = new_index;
  2392.     }
  2393. });
  2394.  
  2395. // END LIST
  2396.  
  2397. hudfontSizeList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2398.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2399.         setting_notification_font_size = new_index;
  2400.  
  2401.         var _index = (new_index + 1);
  2402.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2403.         setting_notification_font_size_display = size;
  2404.     }
  2405. });
  2406.  
  2407. hudfontStyleList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2408.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2409.         setting_notification_font_style = new_index;
  2410.     }
  2411. });
  2412.  
  2413. hudColorRList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2414.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2415.         setting_notification_color_r = new_index;
  2416.     }
  2417. });
  2418.  
  2419. hudColorGList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2420.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2421.         setting_notification_color_g = new_index;
  2422.     }
  2423. });
  2424.  
  2425. hudColorBList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2426.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2427.         setting_notification_color_b = new_index;
  2428.     }
  2429. });
  2430.  
  2431. hudPosXList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2432.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2433.         setting_notification_pos_x = new_index;
  2434.     }
  2435. });
  2436.  
  2437. hudPosYList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2438.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2439.         setting_notification_pos_y = new_index;
  2440.     }
  2441. });
  2442.  
  2443. hudOpacityList_NOTIFICATION.OnListChanged.connect(function (sender, new_index) {
  2444.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2445.         setting_notification_opacity = new_index;
  2446.     }
  2447. });
  2448.  
  2449. hudRefreshrateListItem.OnListChanged.connect(function (sender, new_index) {
  2450.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2451.         setting_update_speed = new_index;
  2452.     }
  2453. });
  2454.  
  2455. // END LIST
  2456.  
  2457. hudfontSizeList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2458.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2459.         setting_odometer_font_size = new_index;
  2460.  
  2461.         var _index = (new_index + 1);
  2462.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2463.         setting_odometer_font_size_display = size;
  2464.     }
  2465. });
  2466.  
  2467. hudfontStyleList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2468.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2469.         setting_odometer_font_style = new_index;
  2470.     }
  2471. });
  2472.  
  2473. hudColorRList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2474.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2475.         setting_odometer_color_r = new_index;
  2476.     }
  2477. });
  2478.  
  2479. hudColorGList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2480.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2481.         setting_odometer_color_g = new_index;
  2482.     }
  2483. });
  2484.  
  2485. hudColorBList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2486.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2487.         setting_odometer_color_b = new_index;
  2488.     }
  2489. });
  2490.  
  2491. hudPosXList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2492.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2493.         setting_odometer_pos_x = new_index;
  2494.     }
  2495. });
  2496.  
  2497. hudPosYList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2498.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2499.         setting_odometer_pos_y = new_index;
  2500.     }
  2501. });
  2502.  
  2503. hudOpacityList_ODOMETER.OnListChanged.connect(function (sender, new_index) {
  2504.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2505.         setting_odometer_opacity = new_index;
  2506.     }
  2507. });
  2508.  
  2509. // END LIST
  2510.  
  2511. hudfontSizeList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2512.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2513.         setting_minigame_font_size = new_index;
  2514.  
  2515.         var _index = (new_index + 1);
  2516.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2517.         setting_minigame_font_size_display = size;
  2518.     }
  2519. });
  2520.  
  2521. hudfontStyleList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2522.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2523.         setting_minigame_font_style = new_index;
  2524.     }
  2525. });
  2526.  
  2527. hudColorRList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2528.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2529.         setting_minigame_color_r = new_index;
  2530.     }
  2531. });
  2532.  
  2533. hudColorGList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2534.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2535.         setting_minigame_color_g = new_index;
  2536.     }
  2537. });
  2538.  
  2539. hudColorBList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2540.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2541.         setting_minigame_color_b = new_index;
  2542.     }
  2543. });
  2544.  
  2545. hudPosXList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2546.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2547.         setting_minigame_pos_x = new_index;
  2548.     }
  2549. });
  2550.  
  2551. hudPosYList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2552.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2553.         setting_minigame_pos_y = new_index;
  2554.     }
  2555. });
  2556.  
  2557. hudOpacityList_MINIGAME.OnListChanged.connect(function (sender, new_index) {
  2558.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2559.         setting_minigame_opacity = new_index;
  2560.     }
  2561. });
  2562.  
  2563. // END LIST
  2564.  
  2565. hudfontSizeList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2566.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2567.         setting_compass_font_size = new_index;
  2568.  
  2569.         var _index = (new_index + 1);
  2570.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  2571.         setting_compass_font_size_display = size;
  2572.     }
  2573. });
  2574.  
  2575. hudfontStyleList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2576.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2577.         setting_compass_font_style = new_index;
  2578.     }
  2579. });
  2580.  
  2581. hudColorRList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2582.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2583.         setting_compass_color_r = new_index;
  2584.     }
  2585. });
  2586.  
  2587. hudColorGList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2588.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2589.         setting_compass_color_g = new_index;
  2590.     }
  2591. });
  2592.  
  2593. hudColorBList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2594.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2595.         setting_compass_color_b = new_index;
  2596.     }
  2597. });
  2598.  
  2599. hudPosXList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2600.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2601.         setting_compass_pos_x = new_index;
  2602.     }
  2603. });
  2604.  
  2605. hudPosYList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2606.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2607.         setting_compass_pos_y = new_index;
  2608.     }
  2609. });
  2610.  
  2611. hudOpacityList_COMPASS.OnListChanged.connect(function (sender, new_index) {
  2612.     if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) {
  2613.         setting_compass_opacity = new_index;
  2614.     }
  2615. });
  2616.  
  2617. // Riietepoe esemed
  2618.  
  2619. CLOTH_haircutList.OnListChanged.connect(function (sender, new_index) {
  2620.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2621.         clothHaircut = new_index;
  2622.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_HAIRCUTS, new_index);
  2623.     }
  2624. });
  2625.  
  2626. CLOTH_torsoList.OnListChanged.connect(function (sender, new_index) {
  2627.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2628.         clothTorso = new_index;
  2629.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_TORSO, new_index);
  2630.     }
  2631. });
  2632.  
  2633. CLOTH_legsList.OnListChanged.connect(function (sender, new_index) {
  2634.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2635.         clothLegs = new_index;
  2636.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_LEGS, new_index);
  2637.     }
  2638. });
  2639.  
  2640. CLOTH_bagsList.OnListChanged.connect(function (sender, new_index) {
  2641.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2642.         clothBags = new_index;
  2643.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_BAGS, new_index);
  2644.     }
  2645. });
  2646.  
  2647. CLOTH_feetList.OnListChanged.connect(function (sender, new_index) {
  2648.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2649.         clothFeet = new_index;
  2650.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_FEET, new_index);
  2651.     }
  2652. });
  2653.  
  2654. CLOTH_accessoryList.OnListChanged.connect(function (sender, new_index) {
  2655.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2656.         clothAccessory = new_index;
  2657.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_ACCESSORIES, new_index);
  2658.     }
  2659. });
  2660.  
  2661. CLOTH_undershirtList.OnListChanged.connect(function (sender, new_index) {
  2662.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2663.         clothUndershirt = new_index;
  2664.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_UNDERSHIRT, new_index);
  2665.     }
  2666. });
  2667.  
  2668. CLOTH_decalsList.OnListChanged.connect(function (sender, new_index) {
  2669.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2670.         clothDecals = new_index;
  2671.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_DECALS, new_index);
  2672.     }
  2673. });
  2674.  
  2675. CLOTH_topList.OnListChanged.connect(function (sender, new_index) {
  2676.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2677.         clothTops = new_index;
  2678.         API.triggerServerEvent("setPlayerClothes", CLOTH_COMPONENT_CATEGORY_TOPS, new_index);
  2679.     }
  2680. });
  2681.  
  2682. CLOTH_hatList.OnListChanged.connect(function (sender, new_index) {
  2683.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2684.         clothHats = new_index;
  2685.         API.triggerServerEvent("setPlayerAccessory", CLOTH_COMPONENT_CATEGORY_HATS, new_index);
  2686.     }
  2687. });
  2688.  
  2689. CLOTH_glassesList.OnListChanged.connect(function (sender, new_index) {
  2690.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2691.         clothGlasses = new_index;
  2692.         API.triggerServerEvent("setPlayerAccessory", CLOTH_COMPONENT_CATEGORY_GLASSES, new_index);
  2693.     }
  2694. });
  2695.  
  2696. CLOTH_earsList.OnListChanged.connect(function (sender, new_index) {
  2697.     if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  2698.         clothEars = new_index;
  2699.         API.triggerServerEvent("setPlayerAccessory", CLOTH_COMPONENT_CATEGORY_EARS, new_index);
  2700.     }
  2701. });
  2702.  
  2703. // Riietepoe tekstuurid algavad siit
  2704.  
  2705. TEXTURE_AccessoriesList.OnListChanged.connect(function (sender, new_index) {
  2706.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2707.         textureclothAccessory = new_index;
  2708.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_ACCESSORIES, new_index);
  2709.     }
  2710. });
  2711.  
  2712. TEXTURE_BagsList.OnListChanged.connect(function (sender, new_index) {
  2713.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2714.         textureclothBags = new_index;
  2715.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_BAGS, new_index);
  2716.     }
  2717. });
  2718.  
  2719. TEXTURE_EarsList.OnListChanged.connect(function (sender, new_index) {
  2720.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2721.         textureclothEars = new_index;
  2722.         API.triggerServerEvent("setPlayerAccessoryColor", 2, new_index);
  2723.     }
  2724. });
  2725.  
  2726. TEXTURE_FeetList.OnListChanged.connect(function (sender, new_index) {
  2727.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2728.         textureclothFeet = new_index;
  2729.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_FEET, new_index);
  2730.     }
  2731. });
  2732.  
  2733. TEXTURE_GlassesList.OnListChanged.connect(function (sender, new_index) {
  2734.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2735.         textureclothGlasses = new_index;
  2736.         API.triggerServerEvent("setPlayerAccessoryColor", 1, new_index);
  2737.     }
  2738. });
  2739.  
  2740. TEXTURE_HaircutList.OnListChanged.connect(function (sender, new_index) {
  2741.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2742.         textureclothHaircut = new_index;
  2743.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_HAIRCUTS, new_index);
  2744.     }
  2745. });
  2746.  
  2747. TEXTURE_HatsList.OnListChanged.connect(function (sender, new_index) {
  2748.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2749.         textureclothHats = new_index;
  2750.         API.triggerServerEvent("setPlayerAccessoryColor", 0, new_index);
  2751.     }
  2752. });
  2753.  
  2754. TEXTURE_LegsList.OnListChanged.connect(function (sender, new_index) {
  2755.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2756.         textureclothLegs = new_index;
  2757.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_LEGS, new_index);
  2758.     }
  2759. });
  2760.  
  2761. TEXTURE_MaskList.OnListChanged.connect(function (sender, new_index) {
  2762.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2763.         textureclothMask = new_index;
  2764.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_MASKS, new_index);
  2765.     }
  2766. });
  2767.  
  2768. TEXTURE_TopsList.OnListChanged.connect(function (sender, new_index) {
  2769.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2770.         textureclothTops = new_index;
  2771.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_TOPS, new_index);
  2772.     }
  2773. });
  2774.  
  2775. TEXTURE_UndershirtList.OnListChanged.connect(function (sender, new_index) {
  2776.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2777.         textureclothUndershirt = new_index;
  2778.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_UNDERSHIRT, new_index);
  2779.     }
  2780. });
  2781.  
  2782. TEXTURE_DecalsList.OnListChanged.connect(function (sender, new_index) {
  2783.     if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  2784.         textureclothDecals = new_index;
  2785.         API.triggerServerEvent("setPlayerClothesColor", CLOTH_COLOR_CATEGORY_DECALS, new_index);
  2786.     }
  2787. });
  2788.  
  2789. // Riietepoes näoosade muutmine
  2790.  
  2791. LIST_BODY_FEATURE_SHAPE1.OnListChanged.connect(function (sender, new_index) {
  2792.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2793.         body_feature_shape1 = new_index;
  2794.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_SHAPE1, new_index);
  2795.     }
  2796. });
  2797.  
  2798. LIST_BODY_FEATURE_SHAPE2.OnListChanged.connect(function (sender, new_index) {
  2799.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2800.         body_feature_shape2 = new_index;
  2801.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_SHAPE2, new_index);
  2802.     }
  2803. });
  2804.  
  2805. LIST_BODY_FEATURE_SHAPE_MIX.OnListChanged.connect(function (sender, new_index) {
  2806.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2807.         body_feature_shape_mix = new_index;
  2808.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_SHAPE_MIX, new_index);
  2809.     }
  2810. });
  2811.  
  2812. LIST_BODY_FEATURE_SKIN1.OnListChanged.connect(function (sender, new_index) {
  2813.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2814.         body_feature_skin1 = new_index;
  2815.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_SKIN1, new_index);
  2816.     }
  2817. });
  2818.  
  2819. LIST_BODY_FEATURE_SKIN2.OnListChanged.connect(function (sender, new_index) {
  2820.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2821.         body_feature_skin2 = new_index;
  2822.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_SKIN2, new_index);
  2823.     }
  2824. });
  2825.  
  2826. LIST_BODY_FEATURE_SKIN_MIX.OnListChanged.connect(function (sender, new_index) {
  2827.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2828.         body_feature_skin_mix = new_index;
  2829.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_SKIN_MIX, new_index);
  2830.     }
  2831. });
  2832.  
  2833. LIST_BODY_FEATURE_HAIR_COLOR.OnListChanged.connect(function (sender, new_index) {
  2834.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2835.         body_feature_hair_color = new_index;
  2836.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_HAIR_COLOR, new_index);
  2837.     }
  2838. });
  2839.  
  2840. LIST_BODY_FEATURE_HAIR_HIGHLIGHTCOLOR.OnListChanged.connect(function (sender, new_index) {
  2841.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2842.         body_feature_hair_highlight_color = new_index;
  2843.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_HAIR_HIGHLIGHT_COLOR, new_index);
  2844.     }
  2845. });
  2846.  
  2847. LIST_BODY_FEATURE_EYE_COLOR.OnListChanged.connect(function (sender, new_index) {
  2848.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2849.         body_feature_eye_color = new_index;
  2850.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_EYE_COLOR, new_index);
  2851.     }
  2852. });
  2853.  
  2854. LIST_BODY_FEATURE_EYEBROWS.OnListChanged.connect(function (sender, new_index) {
  2855.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2856.         body_feature_eyebrows = new_index;
  2857.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_EYEBROWS, new_index);
  2858.     }
  2859. });
  2860.  
  2861. LIST_BODY_FEATURE_EYEBROW_COLOR1.OnListChanged.connect(function (sender, new_index) {
  2862.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2863.         body_feature_eyebrow_color1 = new_index;
  2864.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_EYEBROW_COLOR1, new_index);
  2865.     }
  2866. });
  2867.  
  2868. LIST_BODY_FEATURE_EYEBROW_COLOR2.OnListChanged.connect(function (sender, new_index) {
  2869.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2870.         body_feature_eyebrow_color2 = new_index;
  2871.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_EYEBROW_COLOR2, new_index);
  2872.     }
  2873. });
  2874.  
  2875. LIST_BODY_FEATURE_MAKEUP.OnListChanged.connect(function (sender, new_index) {
  2876.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2877.         body_feature_makeup = new_index;
  2878.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_MAKEUP, new_index);
  2879.     }
  2880. });
  2881.  
  2882. LIST_BODY_FEATURE_MAKEUP_COLOR1.OnListChanged.connect(function (sender, new_index) {
  2883.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2884.         body_feature_makeup_color1 = new_index;
  2885.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_MAKEUP_COLOR1, new_index);
  2886.     }
  2887. });
  2888.  
  2889. LIST_BODY_FEATURE_MAKEUP_COLOR2.OnListChanged.connect(function (sender, new_index) {
  2890.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2891.         body_feature_makeup_color2 = new_index;
  2892.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_MAKEUP_COLOR2, new_index);
  2893.     }
  2894. });
  2895.  
  2896. LIST_BODY_FEATURE_LIPSTICK.OnListChanged.connect(function (sender, new_index) {
  2897.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2898.         body_feature_lipstick = new_index;
  2899.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_LIPSTICK, new_index);
  2900.     }
  2901. });
  2902.  
  2903. LIST_BODY_FEATURE_LIPSTICK_COLOR1.OnListChanged.connect(function (sender, new_index) {
  2904.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2905.         body_feature_lipstick_color1 = new_index;
  2906.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_LIPSTICK_COLOR1, new_index);
  2907.     }
  2908. });
  2909.  
  2910. LIST_BODY_FEATURE_LIPSTICK_COLOR2.OnListChanged.connect(function (sender, new_index) {
  2911.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2912.         body_feature_lipstick_color2 = new_index;
  2913.         API.triggerServerEvent("setPlayerBodyFeature", BODY_FEATURE_LIPSTICK_COLOR2, new_index);
  2914.     }
  2915. });
  2916.  
  2917. // Body features 0-20
  2918.  
  2919. LIST_BODY_FEATURE_FACE_0.OnListChanged.connect(function (sender, new_index) {
  2920.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2921.         var featureIdx = 0;
  2922.  
  2923.         body_feature_faceIdx[featureIdx] = new_index;
  2924.         body_feature_face[featureIdx] = new_index;
  2925.         body_feature_face[featureIdx] -= maxBodySettings;
  2926.         if (body_feature_face[featureIdx] != 0) {
  2927.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  2928.         }
  2929.  
  2930.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  2931.     }
  2932. });
  2933.  
  2934. LIST_BODY_FEATURE_FACE_1.OnListChanged.connect(function (sender, new_index) {
  2935.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2936.         var featureIdx = 1;
  2937.  
  2938.         body_feature_faceIdx[featureIdx] = new_index;
  2939.         body_feature_face[featureIdx] = new_index;
  2940.         body_feature_face[featureIdx] -= maxBodySettings;
  2941.         if (body_feature_face[featureIdx] != 0) {
  2942.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  2943.         }
  2944.  
  2945.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  2946.     }
  2947. });
  2948.  
  2949. LIST_BODY_FEATURE_FACE_2.OnListChanged.connect(function (sender, new_index) {
  2950.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2951.         var featureIdx = 2;
  2952.  
  2953.         body_feature_faceIdx[featureIdx] = new_index;
  2954.         body_feature_face[featureIdx] = new_index;
  2955.         body_feature_face[featureIdx] -= maxBodySettings;
  2956.         if (body_feature_face[featureIdx] != 0) {
  2957.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  2958.         }
  2959.  
  2960.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  2961.     }
  2962. });
  2963.  
  2964. LIST_BODY_FEATURE_FACE_3.OnListChanged.connect(function (sender, new_index) {
  2965.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2966.         var featureIdx = 3;
  2967.  
  2968.         body_feature_faceIdx[featureIdx] = new_index;
  2969.         body_feature_face[featureIdx] = new_index;
  2970.         body_feature_face[featureIdx] -= maxBodySettings;
  2971.         if (body_feature_face[featureIdx] != 0) {
  2972.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  2973.         }
  2974.  
  2975.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  2976.     }
  2977. });
  2978.  
  2979. LIST_BODY_FEATURE_FACE_4.OnListChanged.connect(function (sender, new_index) {
  2980.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2981.         var featureIdx = 4;
  2982.  
  2983.         body_feature_faceIdx[featureIdx] = new_index;
  2984.         body_feature_face[featureIdx] = new_index;
  2985.         body_feature_face[featureIdx] -= maxBodySettings;
  2986.         if (body_feature_face[featureIdx] != 0) {
  2987.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  2988.         }
  2989.  
  2990.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  2991.     }
  2992. });
  2993.  
  2994. LIST_BODY_FEATURE_FACE_5.OnListChanged.connect(function (sender, new_index) {
  2995.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  2996.         var featureIdx = 5;
  2997.  
  2998.         body_feature_faceIdx[featureIdx] = new_index;
  2999.         body_feature_face[featureIdx] = new_index;
  3000.         body_feature_face[featureIdx] -= maxBodySettings;
  3001.         if (body_feature_face[featureIdx] != 0) {
  3002.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3003.         }
  3004.  
  3005.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3006.     }
  3007. });
  3008.  
  3009. LIST_BODY_FEATURE_FACE_6.OnListChanged.connect(function (sender, new_index) {
  3010.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3011.         var featureIdx = 6;
  3012.  
  3013.         body_feature_faceIdx[featureIdx] = new_index;
  3014.         body_feature_face[featureIdx] = new_index;
  3015.         body_feature_face[featureIdx] -= maxBodySettings;
  3016.         if (body_feature_face[featureIdx] != 0) {
  3017.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3018.         }
  3019.  
  3020.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3021.     }
  3022. });
  3023.  
  3024. LIST_BODY_FEATURE_FACE_7.OnListChanged.connect(function (sender, new_index) {
  3025.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3026.         var featureIdx = 7;
  3027.  
  3028.         body_feature_faceIdx[featureIdx] = new_index;
  3029.         body_feature_face[featureIdx] = new_index;
  3030.         body_feature_face[featureIdx] -= maxBodySettings;
  3031.         if (body_feature_face[featureIdx] != 0) {
  3032.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3033.         }
  3034.  
  3035.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3036.     }
  3037. });
  3038.  
  3039. LIST_BODY_FEATURE_FACE_8.OnListChanged.connect(function (sender, new_index) {
  3040.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3041.         var featureIdx = 8;
  3042.  
  3043.         body_feature_faceIdx[featureIdx] = new_index;
  3044.         body_feature_face[featureIdx] = new_index;
  3045.         body_feature_face[featureIdx] -= maxBodySettings;
  3046.         if (body_feature_face[featureIdx] != 0) {
  3047.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3048.         }
  3049.  
  3050.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3051.     }
  3052. });
  3053.  
  3054. LIST_BODY_FEATURE_FACE_9.OnListChanged.connect(function (sender, new_index) {
  3055.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3056.         var featureIdx = 9;
  3057.  
  3058.         body_feature_faceIdx[featureIdx] = new_index;
  3059.         body_feature_face[featureIdx] = new_index;
  3060.         body_feature_face[featureIdx] -= maxBodySettings;
  3061.         if (body_feature_face[featureIdx] != 0) {
  3062.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3063.         }
  3064.  
  3065.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3066.     }
  3067. });
  3068.  
  3069. LIST_BODY_FEATURE_FACE_10.OnListChanged.connect(function (sender, new_index) {
  3070.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3071.         var featureIdx = 10;
  3072.  
  3073.         body_feature_faceIdx[featureIdx] = new_index;
  3074.         body_feature_face[featureIdx] = new_index;
  3075.         body_feature_face[featureIdx] -= maxBodySettings;
  3076.         if (body_feature_face[featureIdx] != 0) {
  3077.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3078.         }
  3079.  
  3080.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3081.     }
  3082. });
  3083.  
  3084. LIST_BODY_FEATURE_FACE_11.OnListChanged.connect(function (sender, new_index) {
  3085.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3086.         var featureIdx = 11;
  3087.  
  3088.         body_feature_faceIdx[featureIdx] = new_index;
  3089.         body_feature_face[featureIdx] = new_index;
  3090.         body_feature_face[featureIdx] -= maxBodySettings;
  3091.         if (body_feature_face[featureIdx] != 0) {
  3092.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3093.         }
  3094.  
  3095.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3096.     }
  3097. });
  3098.  
  3099. LIST_BODY_FEATURE_FACE_12.OnListChanged.connect(function (sender, new_index) {
  3100.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3101.         var featureIdx = 12;
  3102.  
  3103.         body_feature_faceIdx[featureIdx] = new_index;
  3104.         body_feature_face[featureIdx] = new_index;
  3105.         body_feature_face[featureIdx] -= maxBodySettings;
  3106.         if (body_feature_face[featureIdx] != 0) {
  3107.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3108.         }
  3109.  
  3110.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3111.     }
  3112. });
  3113.  
  3114. LIST_BODY_FEATURE_FACE_13.OnListChanged.connect(function (sender, new_index) {
  3115.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3116.         var featureIdx = 13;
  3117.  
  3118.         body_feature_faceIdx[featureIdx] = new_index;
  3119.         body_feature_face[featureIdx] = new_index;
  3120.         body_feature_face[featureIdx] -= maxBodySettings;
  3121.         if (body_feature_face[featureIdx] != 0) {
  3122.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3123.         }
  3124.  
  3125.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3126.     }
  3127. });
  3128.  
  3129. LIST_BODY_FEATURE_FACE_14.OnListChanged.connect(function (sender, new_index) {
  3130.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3131.         var featureIdx = 14;
  3132.  
  3133.         body_feature_faceIdx[featureIdx] = new_index;
  3134.         body_feature_face[featureIdx] = new_index;
  3135.         body_feature_face[featureIdx] -= maxBodySettings;
  3136.         if (body_feature_face[featureIdx] != 0) {
  3137.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3138.         }
  3139.  
  3140.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3141.     }
  3142. });
  3143.  
  3144. LIST_BODY_FEATURE_FACE_15.OnListChanged.connect(function (sender, new_index) {
  3145.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3146.         var featureIdx = 15;
  3147.  
  3148.         body_feature_faceIdx[featureIdx] = new_index;
  3149.         body_feature_face[featureIdx] = new_index;
  3150.         body_feature_face[featureIdx] -= maxBodySettings;
  3151.         if (body_feature_face[featureIdx] != 0) {
  3152.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3153.         }
  3154.  
  3155.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3156.     }
  3157. });
  3158.  
  3159. LIST_BODY_FEATURE_FACE_16.OnListChanged.connect(function (sender, new_index) {
  3160.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3161.         var featureIdx = 16;
  3162.  
  3163.         body_feature_faceIdx[featureIdx] = new_index;
  3164.         body_feature_face[featureIdx] = new_index;
  3165.         body_feature_face[featureIdx] -= maxBodySettings;
  3166.         if (body_feature_face[featureIdx] != 0) {
  3167.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3168.         }
  3169.  
  3170.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3171.     }
  3172. });
  3173.  
  3174. LIST_BODY_FEATURE_FACE_17.OnListChanged.connect(function (sender, new_index) {
  3175.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3176.         var featureIdx = 17;
  3177.  
  3178.         body_feature_faceIdx[featureIdx] = new_index;
  3179.         body_feature_face[featureIdx] = new_index;
  3180.         body_feature_face[featureIdx] -= maxBodySettings;
  3181.         if (body_feature_face[featureIdx] != 0) {
  3182.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3183.         }
  3184.  
  3185.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3186.     }
  3187. });
  3188.  
  3189. LIST_BODY_FEATURE_FACE_18.OnListChanged.connect(function (sender, new_index) {
  3190.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3191.         var featureIdx = 18;
  3192.  
  3193.         body_feature_faceIdx[featureIdx] = new_index;
  3194.         body_feature_face[featureIdx] = new_index;
  3195.         body_feature_face[featureIdx] -= maxBodySettings;
  3196.         if (body_feature_face[featureIdx] != 0) {
  3197.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3198.         }
  3199.  
  3200.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3201.     }
  3202. });
  3203.  
  3204. LIST_BODY_FEATURE_FACE_19.OnListChanged.connect(function (sender, new_index) {
  3205.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3206.         var featureIdx = 19;
  3207.  
  3208.         body_feature_faceIdx[featureIdx] = new_index;
  3209.         body_feature_face[featureIdx] = new_index;
  3210.         body_feature_face[featureIdx] -= maxBodySettings;
  3211.         if (body_feature_face[featureIdx] != 0) {
  3212.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3213.         }
  3214.  
  3215.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3216.     }
  3217. });
  3218.  
  3219. LIST_BODY_FEATURE_FACE_20.OnListChanged.connect(function (sender, new_index) {
  3220.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3221.         var featureIdx = 20;
  3222.  
  3223.         body_feature_faceIdx[featureIdx] = new_index;
  3224.         body_feature_face[featureIdx] = new_index;
  3225.         body_feature_face[featureIdx] -= maxBodySettings;
  3226.         if (body_feature_face[featureIdx] != 0) {
  3227.             body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3228.         }
  3229.  
  3230.         API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3231.     }
  3232. });
  3233.  
  3234. TUNING_List.OnListChanged.connect(function (sender, new_index) {
  3235.     API.triggerServerEvent("setNewVehicleTuning", tuningIdx, new_index);
  3236. });
  3237.  
  3238. TUNING_ColorRList.OnListChanged.connect(function (sender, new_index) {
  3239.     if(tuningIdx == TUNING_IDX_TYRE_SMOKE) {
  3240.         tuningTyreColorR = new_index;
  3241.         //API.triggerServerEvent("setTyreSmoke", 1, new_index);
  3242.     }
  3243. });
  3244.  
  3245. TUNING_ColorGList.OnListChanged.connect(function (sender, new_index) {
  3246.     if(tuningIdx == TUNING_IDX_TYRE_SMOKE) {
  3247.         tuningTyreColorG = new_index;
  3248.         //API.triggerServerEvent("setTyreSmoke", 2, new_index);
  3249.     }
  3250. });
  3251.  
  3252. TUNING_ColorBList.OnListChanged.connect(function (sender, new_index) {
  3253.     if(tuningIdx == TUNING_IDX_TYRE_SMOKE) {
  3254.         tuningTyreColorB = new_index;
  3255.         //API.triggerServerEvent("setTyreSmoke", 3, new_index);
  3256.     }
  3257. });
  3258.  
  3259. // NEW CLOTHING SHOP LISTENERS
  3260.  
  3261. var NEW_CLOTH_CATEGORY_IDX_HAIRCUT = 0;
  3262. var NEW_CLOTH_CATEGORY_IDX_LEGS = 1;
  3263. var NEW_CLOTH_CATEGORY_IDX_FEET = 2;
  3264. var NEW_CLOTH_CATEGORY_IDX_ACCESSORY = 3;
  3265. var NEW_CLOTH_CATEGORY_IDX_UNDERSHIRT = 4;
  3266. var NEW_CLOTH_CATEGORY_IDX_DECAL = 5;
  3267. var NEW_CLOTH_CATEGORY_IDX_TOP = 6;
  3268. var NEW_CLOTH_CATEGORY_IDX_HAT = 7;
  3269. var NEW_CLOTH_CATEGORY_IDX_GLASSES = 8;
  3270. var NEW_CLOTH_CATEGORY_IDX_EAR = 9;
  3271. var NEW_CLOTH_CATEGORY_IDX_TORSO = 10;
  3272.  
  3273. NEW_CLOTH_MALE_haircutList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothHaircut = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_HAIRCUT, new_index); } });
  3274. NEW_CLOTH_MALE_legsList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothLegs = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_LEGS, new_index); } });
  3275. NEW_CLOTH_MALE_feetList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothFeet = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_FEET, new_index); } });
  3276. NEW_CLOTH_MALE_accessoryList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothAccessory = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_ACCESSORY, new_index); } });
  3277. NEW_CLOTH_MALE_undershirtList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothUndershirt = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_UNDERSHIRT, new_index); } });
  3278. NEW_CLOTH_MALE_decalsList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothDecals = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_DECAL, new_index); } });
  3279. NEW_CLOTH_MALE_topList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothTops = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_TOP, new_index); } });
  3280. NEW_CLOTH_MALE_hatList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothHats = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_HAT, new_index); } });
  3281. NEW_CLOTH_MALE_glassesList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothGlasses = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_GLASSES, new_index); } });
  3282. NEW_CLOTH_MALE_earsList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothEars = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_EAR, new_index); } });
  3283. NEW_CLOTH_MALE_torsoList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothTorso = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_TORSO, new_index); } });
  3284.  
  3285. NEW_CLOTH_FEMALE_haircutList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothHaircut = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_HAIRCUT, new_index); } });
  3286. NEW_CLOTH_FEMALE_legsList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothLegs = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_LEGS, new_index); } });
  3287. NEW_CLOTH_FEMALE_feetList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothFeet = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_FEET, new_index); } });
  3288. NEW_CLOTH_FEMALE_accessoryList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothAccessory = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_ACCESSORY, new_index); } });
  3289. NEW_CLOTH_FEMALE_undershirtList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothUndershirt = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_UNDERSHIRT, new_index); } });
  3290. NEW_CLOTH_FEMALE_decalsList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothDecals = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_DECAL, new_index); } });
  3291. NEW_CLOTH_FEMALE_topList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothTops = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_TOP, new_index); } });
  3292. NEW_CLOTH_FEMALE_hatList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothHats = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_HAT, new_index); } });
  3293. NEW_CLOTH_FEMALE_glassesList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothGlasses = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_GLASSES, new_index); } });
  3294. NEW_CLOTH_FEMALE_earsList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothEars = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_EAR, new_index); } });
  3295. NEW_CLOTH_FEMALE_torsoList.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) { clothTorso = new_index; API.triggerServerEvent("setPlayerClothesNew", NEW_CLOTH_CATEGORY_IDX_TORSO, new_index); } });
  3296.  
  3297. LIST_TATTOO_1.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo1 = new_index; API.triggerServerEvent("setPlayerTattoo", 1, new_index); } });
  3298. LIST_TATTOO_2.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo2 = new_index; API.triggerServerEvent("setPlayerTattoo", 2, new_index); } });
  3299. LIST_TATTOO_3.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo3 = new_index; API.triggerServerEvent("setPlayerTattoo", 3, new_index); } });
  3300. LIST_TATTOO_4.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo4 = new_index; API.triggerServerEvent("setPlayerTattoo", 4, new_index); } });
  3301. LIST_TATTOO_5.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo5 = new_index; API.triggerServerEvent("setPlayerTattoo", 5, new_index); } });
  3302. LIST_TATTOO_6.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo6 = new_index; API.triggerServerEvent("setPlayerTattoo", 6, new_index); } });
  3303. LIST_TATTOO_7.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo7 = new_index; API.triggerServerEvent("setPlayerTattoo", 7, new_index); } });
  3304. LIST_TATTOO_8.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo8 = new_index; API.triggerServerEvent("setPlayerTattoo", 8, new_index); } });
  3305. LIST_TATTOO_9.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo9 = new_index; API.triggerServerEvent("setPlayerTattoo", 9, new_index); } });
  3306. LIST_TATTOO_10.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_TATTOOSHOP) { tattoo10 = new_index; API.triggerServerEvent("setPlayerTattoo", 10, new_index); } });
  3307.  
  3308. LIST_BEARD.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_BEARDS) { beard = new_index; API.triggerServerEvent("setPlayerBeard", beard, beardColor); } });
  3309. LIST_BEARDCOLOR.OnListChanged.connect(function (sender, new_index) { if (menuIdx == MENU_IDX_BEARDS) { beardColor = new_index; API.triggerServerEvent("setPlayerBeard", beard, beardColor); } });
  3310.  
  3311. /*
  3312. LIST.OnListChanged.connect(function (sender, new_index) {
  3313.     if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3314.         FEATURE_VAR = new_index;
  3315.         API.triggerServerEvent("setPlayerBodyFeature", FEATURE_IDX, new_index);
  3316.     }
  3317. });
  3318. */
  3319.  
  3320. /*testList.OnListChanged.connect(function (sender, new_index) {
  3321.     API.triggerServerEvent("debug", new_index);
  3322. });*/
  3323.  
  3324. menu.OnItemSelect.connect(function (sender, item, index) {
  3325.     afkTimer = 0;
  3326.  
  3327.     if (menuIdx == MENU_IDX_SHOP) {
  3328.         if (actionType == MENU_ACTION_SHOW) {
  3329.             API.triggerServerEvent("buyItem", index);
  3330.         } else if (actionType == MENU_ACTION_EDIT) {
  3331.             menuIdx = MENU_IDX_COMPOSE_MENU_EDIT_OPTIONS;
  3332.             API.triggerServerEvent("editItem", index);
  3333.  
  3334.             API.showCursor(false);
  3335.             menu.Visible = false;
  3336.             menu.Clear();
  3337.  
  3338.             menu.AddItem(API.createMenuItem("Muuda nime", "[ENTER]"));
  3339.             menu.AddItem(API.createMenuItem("Muuda hinda", "[ENTER]"));
  3340.  
  3341.             menu.Visible = true;
  3342.         } else if (actionType == MENU_ACTION_DELETE) {
  3343.             API.triggerServerEvent("deleteItem", index);
  3344.         }
  3345.     } else if (menuIdx == MENU_IDX_ATM) {
  3346.         //API.triggerServerEvent("ATMResponse", index);
  3347.  
  3348.         if (index == ATM_RESPONSE_TO_BANK) {
  3349.             userInputMsg = "Sisesta summa, mida soovid sisestada panka";
  3350.             inputIdx = INPUT_IDX_INSERT_SUM_TO_BANK;
  3351.             userInput = API.getUserInput("", 10);
  3352.             menu.Visible = false;
  3353.             API.showCursor(false);
  3354.             API.triggerServerEvent("ATMToBank", userInput);
  3355.         }
  3356.         if (index == ATM_RESPONSE_FROM_BANK) {
  3357.             userInputMsg = "Sisesta summa, mida soovid pangast võtta";
  3358.             inputIdx = INPUT_IDX_INSERT_SUM_FROM_BANK;
  3359.             userInput = API.getUserInput("", 10);
  3360.             menu.Visible = false;
  3361.             API.showCursor(false);
  3362.             API.triggerServerEvent("ATMFromBank", userInput);
  3363.         }
  3364.         if (index == ATM_RESPONSE_CHANGE_PIN) {
  3365.             userInputMsg = "Sisesta uus PIN";
  3366.             inputIdx = INPUT_IDX_INSERT_NEW_PIN;
  3367.             userInput = API.getUserInput("", 4);
  3368.             API.triggerServerEvent("ATMChangePIN", userInput);
  3369.         }
  3370.         if (index == ATM_RESPONSE_TRANSACTION) {
  3371.             userInputMsg = "Sisesta pangakaardi ID kellele soovid saata:";
  3372.             inputIdx = INPUT_IDX_INSERT_TRANSACTION_NAME;
  3373.             userInput = API.getUserInput("", 25);
  3374.             API.triggerServerEvent("ATMTransactionGetName", userInput);
  3375.         }
  3376.         /*if (index == ATM_RESPONSE_LOGS) { // NOTE (Caupo 26.02.2017): Teen rahalogi kuvamise UCP alla.
  3377.             API.triggerServerEvent("ATMGetTransactionLogs");
  3378.         }*/
  3379.     } else if (menuIdx == MENU_IDX_COMPOSE_MENU_OPTIONS) {
  3380.         API.triggerServerEvent("menuComposeOption", index);
  3381.     } else if (menuIdx == MENU_IDX_COMPOSE_MENU_CHOOSE_ITEM) {
  3382.         userInputMsg = "Sisesta toote nimi";
  3383.         inputIdx = INPUT_IDX_INSERT_PRODUCT_NAME;
  3384.         userInput = API.getUserInput("", 40);
  3385.         API.triggerServerEvent("menuComposeChoseItem", index, userInput);
  3386.  
  3387.         API.showCursor(false);
  3388.         menu.Visible = false;
  3389.     } else if (menuIdx == MENU_IDX_COMPOSE_MENU_EDIT_OPTIONS) {
  3390.         if (index == 0) {
  3391.             userInputMsg = "Sisesta tootele uus nimi";
  3392.             inputIdx = INPUT_IDX_INSERT_PRODUCT_NAME;
  3393.             userInput = API.getUserInput("", 40);
  3394.             API.triggerServerEvent("menuEditName", userInput);
  3395.         } else {
  3396.             userInputMsg = "Sisesta tootele uus hind. Hinnavahemik: $" + productMinPrice + "-" + productMaxPrice;
  3397.             userInput = API.getUserInput("", 8);
  3398.             inputIdx = INPUT_IDX_INSERT_PRODUCT_PRICE;
  3399.             API.triggerServerEvent("menuEditPrice", userInput);
  3400.         }
  3401.     } else if (menuIdx == MENU_IDX_GASSTATION_MENU) {
  3402.         userInputMsg = "Sisesta kogus, palju kütust soovid (MAX " + canFuel + " L)";
  3403.         inputIdx = INPUT_IDX_INSERT_FUEL_AMOUNT;
  3404.         userInput = API.getUserInput("", 3);
  3405.         API.triggerServerEvent("choseFuel", index, userInput);
  3406.     } else if (menuIdx == MENU_IDX_INVENTORY) {
  3407.         menu.Visible = false;
  3408.         API.showCursor(false);
  3409.         if (givingTo || dropping) {
  3410.             userInput = API.getUserInput("", 3);
  3411.             API.triggerServerEvent("choseInventory", index, userInput);
  3412.         } else {
  3413.             API.triggerServerEvent("choseInventory", index, 1);
  3414.         }
  3415.     } else if (menuIdx == MENU_IDX_INVENTORY_SEARCH) {
  3416.         menu.Visible = false;
  3417.         API.showCursor(false);
  3418.     } else if (menuIdx == MENU_IDX_VEHICLE_SELECTION) {
  3419.         menu.Visible = false;
  3420.         API.showCursor(false);
  3421.         API.triggerServerEvent("choseVeh", index);
  3422.     } else if (menuIdx == MENU_IDX_MAKE_VEHICLE_KEYS) {
  3423.         menu.Visible = false;
  3424.         API.showCursor(false);
  3425.         API.triggerServerEvent("choseMakeVeh", index);
  3426.     } else if (menuIdx == MENU_IDX_PHONE_SELECTION) {
  3427.         API.triggerServerEvent("chosePhone", index);
  3428.     } else if (menuIdx == MENU_IDX_PHONE_SELECTION_COMMERCIAL) {
  3429.         API.triggerServerEvent("chosePhoneCommercial", index);
  3430.     } else if (menuIdx == MENU_IDX_PHONE) {
  3431.         if (index == PHONE_ACTION_CALL) { // Helista
  3432.             userInputMsg = "Sisesta number kellele helistada";
  3433.             inputIdx = INPUT_IDX_INSERT_CALL_NUMBER;
  3434.             userInput = API.getUserInput("", 10);
  3435.             API.triggerServerEvent("phoneCalling", userInput);
  3436.         } else if (index == PHONE_ACTION_SMS) { // SMS
  3437.             userInputMsg = "Sisesta number kellele SMS saata";
  3438.             inputIdx = INPUT_IDX_INSERT_NUMBER_TO_SMS;
  3439.             userInput = API.getUserInput("", 10);
  3440.             API.triggerServerEvent("phoneSMS", userInput);
  3441.         } else if (index == PHONE_ACTION_CONTACTS) { // Kontaktid
  3442.             API.triggerServerEvent("getContacts", index);
  3443.         } else if (index == PHONE_ACTION_INCOMING_SMS) { // Sisse tulnud SMSid
  3444.             API.triggerServerEvent("getIncomingSMS", index);
  3445.         } else if (index == PHONE_ACTION_SENT_SMS) { // Saadetud SMSid
  3446.             API.triggerServerEvent("getSentSMS", index);
  3447.         } else if (index == MENU_IDX_SMS_SELECTION) { // Viewing SMS
  3448.             API.triggerServerEvent("showSMS", index);
  3449.         }
  3450.     } else if (menuIdx == MENU_IDX_CONTACT_SELECTION) {
  3451.         userInput = "";
  3452.         if (index == 0) {
  3453.             userInput = API.getUserInput("", 24);
  3454.         }
  3455.         API.triggerServerEvent("selectedContact", index, userInput);
  3456.     } else if (menuIdx == MENU_IDX_CHOOSE_CONTACT_OPTION) {
  3457.         if (index == CONTACT_OPTION_CALL) {
  3458.             API.triggerServerEvent("selectedContactOption", index);
  3459.         } else if (index == CONTACT_OPTION_SEND_SMS) {
  3460.             userInputMsg = "Sisesta SMSi sisu:";
  3461.             inputIdx = INPUT_IDX_INSERT_SMS_CONTENT;
  3462.             userInput = API.getUserInput("", SMS_MAX_LENGTH);
  3463.             API.triggerServerEvent("selectedContactOption", index, userInput);
  3464.         } else if (index == CONTACT_OPTION_EDIT_NAME) {
  3465.             userInputMsg = "Sisesta uus nimi:";
  3466.             inputIdx = INPUT_IDX_INSERT_CONTACT_NAME;
  3467.             userInput = API.getUserInput("", SMS_MAX_LENGTH);
  3468.             API.triggerServerEvent("selectedContactOption", index, userInput);
  3469.         } else if (index == CONTACT_OPTION_EDIT_NUMBER) {
  3470.             userInputMsg = "Sisesta uus number:";
  3471.             inputIdx = INPUT_IDX_INSERT_CONTACT_NUMBER;
  3472.             userInput = API.getUserInput("", SMS_MAX_LENGTH);
  3473.             API.triggerServerEvent("selectedContactOption", index, userInput);
  3474.         } else if (index == CONTACT_OPTION_REMOVE) {
  3475.             menu.Visible = false;
  3476.             API.showCursor(false);
  3477.             API.triggerServerEvent("selectedContactOption", index);
  3478.         }
  3479.     } else if (menuIdx == MENU_IDX_LOCATIONS) {
  3480.         API.playSoundFrontEnd("HUD_MINI_GAME_SOUNDSET", "CHECKPOINT_NORMAL");
  3481.         menu.Visible = false;
  3482.         API.showCursor(false);
  3483.  
  3484.         if ((index >= 10 && index <= 13) || (index >= 16 && index <= 18) || index >= 21) {
  3485.             API.triggerServerEvent("selectedLocation", index);
  3486.         } else {
  3487.             if (mainBlip == null) {
  3488.                 if (locations[index] == null || locations[index] == undefined) {
  3489.                     API.triggerServerEvent("sendMsg", "Asukoht Index ["+index+"] undefined. Teavita bugtrackeri.");
  3490.                     return;
  3491.                 }
  3492.                 mainBlip = API.createBlip(locations[index]);
  3493.                 API.setBlipColor(mainBlip, 2);
  3494.             } else {
  3495.                 if (locations[index] == null || locations[index] == undefined) {
  3496.                     API.triggerServerEvent("sendMsg", "Asukoht Index [" + index + "] undefined. Teavita bugtrackeri.");
  3497.                     return;
  3498.                 }
  3499.                 API.setBlipPosition(mainBlip, locations[index]);
  3500.             }
  3501.             API.setBlipRouteVisible(mainBlip, true);
  3502.             API.setBlipRouteColor(mainBlip, 69);
  3503.  
  3504.             if (locationBlip != null) {
  3505.                 API.deleteEntity(locationBlip);
  3506.             }
  3507.         }
  3508.     } else if (menuIdx == MENU_IDX_SELECT_VEHICLE_COLOR) {
  3509.         API.triggerServerEvent("selectedVehicleColor", index);
  3510.     } else if (menuIdx == MENU_IDX_SELECT_GROUP_VEHICLE) {
  3511.         API.triggerServerEvent("selectedGroupVehicle", index);
  3512.         menu.Visible = false;
  3513.     } else if (menuIdx == MENU_IDX_SELECT_VEHICLE_WHEELS) {
  3514.         API.triggerServerEvent("selectedVehicleWheels", index);
  3515.     } else if (menuIdx == MENU_IDX_FIRST_WARDROBE) {
  3516.         clotheIdx = index;
  3517.  
  3518.         if (clotheIdx == CLOTH_COMPONENT_CATEGORY_SAVE) {
  3519.             menuIdx = MENU_IDX_FIRST_WARDROBE_COLOR;
  3520.  
  3521.             menu.Visible = false;
  3522.             menu.Clear();
  3523.             AddWardrobeColorListItems();
  3524.             menu.RefreshIndex();
  3525.             menu.Visible = true;
  3526.             assignClothColorIdx = true;
  3527.  
  3528.             API.triggerServerEvent("savePlayerClothes", clothHead, clothMask, clothHaircut, clothTorso, clothLegs, clothBags, clothFeet, clothAccessory, clothUndershirt, clothBodyArmour, clothDecals, clothTops, clothHats, clothGlasses, clothEars);
  3529.             return;
  3530.         }
  3531.  
  3532.         if (clotheIdx == CLOTH_COMPONENT_CATEGORY_ACCESSORIES) {
  3533.             clothAccessory = item.Index;
  3534.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3535.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_BAGS) {
  3536.             clothBags = item.Index;
  3537.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3538.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_DECALS) {
  3539.             clothDecals = item.Index;
  3540.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3541.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_EARS) {
  3542.             clothEars = item.Index;
  3543.             API.triggerServerEvent("setPlayerAccessory", clotheIdx, item.Index);
  3544.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_FEET) {
  3545.             clothFeet = item.Index;
  3546.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3547.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_GLASSES) {
  3548.             clothGlasses = item.Index;
  3549.             API.triggerServerEvent("setPlayerAccessory", clotheIdx, item.Index);
  3550.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_HAIRCUTS) {
  3551.             clothHaircut = item.Index;
  3552.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3553.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_HATS) {
  3554.             clothHats = item.Index;
  3555.             API.triggerServerEvent("setPlayerAccessory", clotheIdx, item.Index);
  3556.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_HEAD) {
  3557.             clothHead = item.Index;
  3558.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3559.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_LEGS) {
  3560.             clothLegs = item.Index;
  3561.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3562.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_MASKS) {
  3563.             clothMask = item.Index;
  3564.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3565.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_TOPS) {
  3566.             clothTops = item.Index;
  3567.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3568.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_TORSO) {
  3569.             clothTorso = item.Index;
  3570.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3571.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_UNDERSHIRT) {
  3572.             clothUndershirt = item.Index;
  3573.             API.triggerServerEvent("setPlayerClothes", clotheIdx, item.Index);
  3574.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET) {
  3575.             API.triggerServerEvent("resetPlayerClothes");
  3576.             clothHaircut = 4;
  3577.             clothTorso = 2;
  3578.             clothUndershirt = 15;
  3579.             clothTops = 63;
  3580.             clothFeet = 1;
  3581.             clothLegs = 0;
  3582.             clothBags = 0;
  3583.             clothAccessory = 0;
  3584.             clothDecals = 0;
  3585.             clothTops = 0;
  3586.             clothHats = 8;
  3587.             clothGlasses = 0;
  3588.             clothEars = 33;
  3589.             ShowFirstTimeWardrobe(skinlist);
  3590.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_SKINS) {
  3591.             menuIdx = MENU_IDX_SELECT_SKIN_FROM_CLOTHESHOP;
  3592.             API.triggerServerEvent("sendMsg", "NB!: Tavaskinnidel pole nii palju riietevalikuid kui freemode skinnidel!");
  3593.             API.triggerServerEvent("sendMsg", "Ärge valige skinne enteriga nii kiiresti, et teie arvuti ei jõua neid mängu");
  3594.             API.triggerServerEvent("sendMsg", "laadida. Mäng võib crashida.");
  3595.             menu.Clear();
  3596.  
  3597.             menu.AddItem(API.createMenuItem("~r~Tagasi", "Valimiseks vajuta [ENTER]"));
  3598.             var _color = "~c~";
  3599.             for (var i = 0; i < skinListCount; i++) {
  3600.                 menu.AddItem(API.createMenuItem(_color + skinList[i], "Valimiseks vajuta [ENTER]"));
  3601.                 if (_color == "~c~") {
  3602.                     _color = "";
  3603.                 } else {
  3604.                     _color = "~c~";
  3605.                 }
  3606.             }
  3607.             menu.CurrentSelection = 0;
  3608.             menu.Visible = true;
  3609.  
  3610.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_HAIRCUT) {
  3611.             API.triggerServerEvent("resetPlayerClotheItem", 0);
  3612.             clothHaircut = 0;
  3613.             ShowFirstTimeWardrobe(skinlist);
  3614.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_TORSO) {
  3615.             API.triggerServerEvent("resetPlayerClotheItem", 1);
  3616.             clothTorso = 0;
  3617.             ShowFirstTimeWardrobe(skinlist);
  3618.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_LEGS) {
  3619.             API.triggerServerEvent("resetPlayerClotheItem", 2);
  3620.             clothLegs = 0;
  3621.             ShowFirstTimeWardrobe(skinlist);
  3622.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_BAGS) {
  3623.             API.triggerServerEvent("resetPlayerClotheItem", 3);
  3624.             clothBags = 0;
  3625.             ShowFirstTimeWardrobe(skinlist);
  3626.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_FEET) {
  3627.             API.triggerServerEvent("resetPlayerClotheItem", 4);
  3628.             clothFeet = 1;
  3629.             ShowFirstTimeWardrobe(skinlist);
  3630.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_ACCESSORIES) {
  3631.             API.triggerServerEvent("resetPlayerClotheItem", 5);
  3632.             clothAccessory = 0;
  3633.             ShowFirstTimeWardrobe(skinlist);
  3634.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_UNDERSHIRT) {
  3635.             API.triggerServerEvent("resetPlayerClotheItem", 6);
  3636.             clothUndershirt = 0;
  3637.             ShowFirstTimeWardrobe(skinlist);
  3638.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_DECALS) {
  3639.             API.triggerServerEvent("resetPlayerClotheItem", 7);
  3640.             clothDecals = 0;
  3641.             ShowFirstTimeWardrobe(skinlist);
  3642.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_TOPS) {
  3643.             API.triggerServerEvent("resetPlayerClotheItem", 8);
  3644.             clothTops = 0;
  3645.             ShowFirstTimeWardrobe(skinlist);
  3646.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_HATS) {
  3647.             API.triggerServerEvent("resetPlayerClotheItem", 9);
  3648.             clothHats = 8;
  3649.             ShowFirstTimeWardrobe(skinlist);
  3650.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_GLASSES) {
  3651.             API.triggerServerEvent("resetPlayerClotheItem", 10);
  3652.             clothGlasses = 0;
  3653.             ShowFirstTimeWardrobe(skinlist);
  3654.         } else if (clotheIdx == CLOTH_COMPONENT_CATEGORY_RESET_EARS) {
  3655.             API.triggerServerEvent("resetPlayerClotheItem", 11);
  3656.             clothEars = 33;
  3657.             ShowFirstTimeWardrobe(skinlist);
  3658.         }
  3659.     } else if (menuIdx == MENU_IDX_FIRST_WARDROBE_COLOR) {
  3660.         clotheColorIdx = index;
  3661.         if (assignClothColorIdx) {
  3662.             assignClothColorIdx = false;
  3663.             menu.Visible = false;
  3664.             menu.Clear();
  3665.             AddWardrobeColorListItems();
  3666.             menu.RefreshIndex();
  3667.             menu.Visible = true;
  3668.             menu.CurrentSelection = 0;
  3669.         }
  3670.  
  3671.         clotheColorIdx += 1; // NOTE (Caupo 21.08.2017): Antud asi peaks olema quickfix sellele, et ma eemaldasin maski värvi valiku ära kuna maski ei saa objektina riidepoest peale panna. Ja kuna mask oli idx == 0, siis antud rida peaks skippima indexi vastavalt teistele valikutele.
  3672.         if (clotheColorIdx == CLOTH_COLOR_CATEGORY_ACCESSORIES) {
  3673.             textureclothAccessory = item.Index;
  3674.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3675.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_BAGS) {
  3676.             textureclothBags = item.Index;
  3677.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3678.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_DECALS) {
  3679.             textureclothDecals = item.Index;
  3680.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3681.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_EARS) {
  3682.             textureclothEars = item.Index;
  3683.             API.triggerServerEvent("setPlayerAccessoryColor", 2, item.Index);
  3684.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_FEET) {
  3685.             textureclothFeet = item.Index;
  3686.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3687.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_GLASSES) {
  3688.             textureclothGlasses = item.Index;
  3689.             API.triggerServerEvent("setPlayerAccessoryColor", 1, item.Index);
  3690.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_HAIRCUTS) {
  3691.             textureclothHaircut = item.Index;
  3692.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3693.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_HATS) {
  3694.             textureclothHats = item.Index;
  3695.             API.triggerServerEvent("setPlayerAccessoryColor", 0, item.Index);
  3696.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_LEGS) {
  3697.             textureclothLegs = item.Index;
  3698.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3699.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_MASKS) {
  3700.             textureclothMask = item.Index;
  3701.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3702.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_TOPS) {
  3703.             textureclothTops = item.Index;
  3704.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3705.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_UNDERSHIRT) {
  3706.             textureclothUndershirt = item.Index;
  3707.             API.triggerServerEvent("setPlayerClothesColor", clotheColorIdx, item.Index);
  3708.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_SAVE) {
  3709.  
  3710.             menuIdx = MENU_IDX_FACE_FEATURES;
  3711.  
  3712.             menu.Visible = false;
  3713.             menu.Clear();
  3714.             AddWardrobeBodyItems();
  3715.             menu.RefreshIndex();
  3716.             menu.Visible = true;
  3717.             assignClothColorIdx = true;
  3718.  
  3719.             API.triggerServerEvent("savePlayerClothesTextures", textureclothHead, textureclothMask, textureclothHaircut, textureclothTorso, textureclothLegs, textureclothBags, textureclothFeet, textureclothAccessory, textureclothUndershirt, textureclothBodyArmour, textureclothDecals, textureclothTops, textureclothHats, textureclothGlasses, textureclothEars);
  3720.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_RESET) {
  3721.             API.triggerServerEvent("resetPlayerTextures");
  3722.         } else if (clotheColorIdx == CLOTH_COLOR_CATEGORY_BACK) {
  3723.             ShowFirstTimeWardrobe(skinList);
  3724.         }
  3725.     }
  3726.     else if (menuIdx == MENU_IDX_FACE_FEATURES) {
  3727.         bodyIdx = index;
  3728.  
  3729.         if (bodyIdx == BODY_FEATURE_SHAPE1) {
  3730.             body_feature_shape1 = item.Index;
  3731.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3732.         } else if (bodyIdx == BODY_FEATURE_SHAPE2) {
  3733.             body_feature_shape2 = item.Index;
  3734.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3735.         } else if (bodyIdx == BODY_FEATURE_SHAPE_MIX) {
  3736.             body_feature_shape_mix = item.Index;
  3737.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3738.         } else if (bodyIdx == BODY_FEATURE_SKIN1) {
  3739.             body_feature_skin1 = item.Index;
  3740.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3741.         } else if (bodyIdx == BODY_FEATURE_SKIN2) {
  3742.             body_feature_skin2 = item.Index;
  3743.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3744.         } else if (bodyIdx == BODY_FEATURE_SKIN_MIX) {
  3745.             body_feature_skin_mix = item.Index;
  3746.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3747.         } else if (bodyIdx == BODY_FEATURE_HAIR_COLOR) {
  3748.             body_feature_hair_color = item.Index;
  3749.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3750.         } else if (bodyIdx == BODY_FEATURE_HAIR_HIGHLIGHT_COLOR) {
  3751.             body_feature_hair_highlight_color = item.Index;
  3752.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3753.         } else if (bodyIdx == BODY_FEATURE_EYE_COLOR) {
  3754.             body_feature_eye_color = item.Index;
  3755.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3756.         } else if (bodyIdx == BODY_FEATURE_EYEBROWS) {
  3757.             body_feature_eyebrows = item.Index;
  3758.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3759.         } else if (bodyIdx == BODY_FEATURE_EYEBROW_COLOR1) {
  3760.             body_feature_eyebrow_color1 = item.Index;
  3761.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3762.         } else if (bodyIdx == BODY_FEATURE_EYEBROW_COLOR2) {
  3763.             body_feature_eyebrow_color2 = item.Index;
  3764.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3765.         } else if (bodyIdx == BODY_FEATURE_MAKEUP) {
  3766.             body_feature_makeup = item.Index;
  3767.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3768.         } else if (bodyIdx == BODY_FEATURE_MAKEUP_COLOR1) {
  3769.             body_feature_makeup_color1 = item.Index;
  3770.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3771.         } else if (bodyIdx == BODY_FEATURE_MAKEUP_COLOR2) {
  3772.             body_feature_makeup_color2 = item.Index;
  3773.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3774.         } else if (bodyIdx == BODY_FEATURE_LIPSTICK) {
  3775.             body_feature_lipstick = item.Index;
  3776.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3777.         } else if (bodyIdx == BODY_FEATURE_LIPSTICK_COLOR1) {
  3778.             body_feature_lipstick_color1 = item.Index;
  3779.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3780.         } else if (bodyIdx == BODY_FEATURE_LIPSTICK_COLOR2) {
  3781.             body_feature_lipstick_color2 = item.Index;
  3782.             API.triggerServerEvent("setPlayerBodyFeature", bodyIdx, item.Index);
  3783.         } else if (bodyIdx >= BODY_FEATURE_FACE_MIN && bodyIdx <= BODY_FEATURE_FACE_MAX) {
  3784.             var featureIdx = bodyIdx - BODY_FEATURE_FACE_MIN;
  3785.             body_feature_faceIdx[featureIdx] = item.Index;
  3786.             body_feature_face[featureIdx] = item.Index;
  3787.             body_feature_face[featureIdx] -= maxBodySettings;
  3788.             if (body_feature_face[featureIdx] != 0) {
  3789.                 body_feature_face[featureIdx] = (body_feature_face[featureIdx] * 0.1);
  3790.             }
  3791.             /*if (body_feature_faceIdx[featureIdx] != maxBodySettings) {
  3792.                 body_feature_face[featureIdx] = (body_feature_faceIdx[featureIdx] * 0.1);
  3793.             } else {
  3794.                 body_feature_face[featureIdx] = 0;
  3795.             }*/
  3796.             API.triggerServerEvent("setPlayerBodyFeatureEx", featureIdx, body_feature_face[featureIdx]);
  3797.         } else if (bodyIdx == BODY_FEATURE_SAVE) {
  3798.             menu.Visible = false;
  3799.             API.detachCamera(camera);
  3800.             API.triggerServerEvent("savePlayerBodyFeatures", body_feature_shape1, body_feature_shape2, body_feature_shape_mix, body_feature_skin1, body_feature_skin2, body_feature_skin_mix, body_feature_hair_color, body_feature_hair_highlight_color, body_feature_eye_color, body_feature_eyebrows, body_feature_eyebrow_color1, body_feature_eyebrow_color2, body_feature_makeup, body_feature_makeup_color1, body_feature_makeup_color2, body_feature_lipstick, body_feature_lipstick_color1, body_feature_lipstick_color2,
  3801.                 body_feature_face[0],
  3802.                 body_feature_face[1],
  3803.                 body_feature_face[2],
  3804.                 body_feature_face[3],
  3805.                 body_feature_face[4],
  3806.                 body_feature_face[5],
  3807.                 body_feature_face[6],
  3808.                 body_feature_face[7],
  3809.                 body_feature_face[8],
  3810.                 body_feature_face[9],
  3811.                 body_feature_face[10],
  3812.                 body_feature_face[11],
  3813.                 body_feature_face[12],
  3814.                 body_feature_face[13],
  3815.                 body_feature_face[14],
  3816.                 body_feature_face[15],
  3817.                 body_feature_face[16],
  3818.                 body_feature_face[17],
  3819.                 body_feature_face[18],
  3820.                 body_feature_face[19],
  3821.                 body_feature_face[20]);
  3822.  
  3823.             API.setGameplayCameraActive();
  3824.             API.setChatVisible(true);
  3825.             API.setHudVisible(true);
  3826.             freewill = false;
  3827.         } else if (bodyIdx == BODY_FEATURE_RESET) {
  3828.             API.triggerServerEvent("resetPlayerBodyFeatures");
  3829.         } else if (bodyIdx == BODY_FEATURE_BACK) {
  3830.             if(chosenClothMenu == "male") {
  3831.                 ShowClothingShopMale();
  3832.             } else if(chosenClothMenu == "female") {
  3833.                 ShowClothingShopFemale();
  3834.             }
  3835.         }
  3836.     }
  3837.     else if (menuIdx == MENU_IDX_PAWNSHOP) {
  3838.         menu.Visible = false;
  3839.         API.showCursor(false);
  3840.         userInput = API.getUserInput("", INV_AMOUNT_MAX_LENGTH);
  3841.         API.triggerServerEvent("sellToPawnshop", index, userInput);
  3842.     }
  3843.     else if (menuIdx == MENU_IDX_BANK) {
  3844.         if (index == 1) {
  3845.             API.triggerServerEvent("cancelBankcard", index);
  3846.         }
  3847.         else if (index == 0) {
  3848.             userInput = API.getUserInput("", INV_AMOUNT_MAX_LENGTH);
  3849.             API.triggerServerEvent("createNewBankcard", userInput);
  3850.         } else {
  3851.             API.triggerServerEvent("checkDepositBox");
  3852.             menu.Visible = false;
  3853.             API.showCursor(false);
  3854.         }
  3855.     }
  3856.     else if (menuIdx == MENU_IDX_SELECT_BANKCARD) {
  3857.         API.triggerServerEvent("selectedBankcard", index);
  3858.     }
  3859.     else if (menuIdx == MENU_IDX_SELECT_BANKCARD_FOR_CANCEL) {
  3860.         API.triggerServerEvent("selectedBankcardForCancel", index);
  3861.         menu.Visible = false;
  3862.         API.showCursor(false);
  3863.     }
  3864.     else if (menuIdx == MENU_IDX_SETTINGS) {
  3865.         var _settingFontSize = setting_font_size_input;
  3866.  
  3867.         if (index == 0) {   // Update speed
  3868.             setting_update_speed = API.getUserInput("", 4);
  3869.         } else if (index == 1) { // show speed
  3870.             setting_show_speed = item.Index;
  3871.         } else if (index == 2) { // show hp
  3872.             setting_show_vehicle_health = item.Index;
  3873.         } else if (index == 3) { // show fuel
  3874.             setting_show_vehicle_fuel = item.Index;
  3875.         } else if (index == 4) { // hud width
  3876.             setting_hud_width = parseInt(API.getUserInput("", 4));
  3877.         } else if (index == 5) { // hud height
  3878.             setting_hud_height = parseInt(API.getUserInput("", 4));
  3879.         } else if (index == 6) { // font size
  3880.             var _index = item.Index;
  3881.             setting_font_size_input = _index;
  3882.             _index += 1;
  3883.             var size = (_index * 0.5);
  3884.             setting_font_size = size;
  3885.         } else if (index == 7) { // font style
  3886.             var fontStyle = 0;
  3887.  
  3888.             if (item.Index == 1) {
  3889.                 fontStyle = 1;
  3890.             } else if (item.Index == 2) {
  3891.                 fontStyle = 2;
  3892.             } else if (item.Index == 3) {
  3893.                 fontStyle = 4;
  3894.             } else if (item.Index == 4) {
  3895.                 fontStyle = 7;
  3896.             }
  3897.             setting_font = fontStyle;
  3898.         } else if (index == 8) {
  3899.             API.triggerServerEvent("recieveSettings",
  3900.                 setting_font,
  3901.                 setting_font_size_input,
  3902.                 setting_hud_height,
  3903.                 setting_hud_width,
  3904.                 setting_show_speed,
  3905.                 setting_show_vehicle_fuel,
  3906.                 setting_show_vehicle_health,
  3907.                 setting_speedometer_in_lower_hud,
  3908.                 setting_update_speed
  3909.             );
  3910.         }
  3911.     }
  3912.     else if (menuIdx == MENU_IDX_CONFISCATED_VEHICLES) {
  3913.         API.triggerServerEvent("selectedVehicleFromConfiscation", index);
  3914.     }
  3915.     else if (menuIdx == MENU_IDX_FISHMARKET) {
  3916.         API.triggerServerEvent("sellToFishmarket", index, 1);
  3917.         menu.Visible = false;
  3918.         API.showCursor(false);
  3919.     } else if (menuIdx == MENU_IDX_TELEPORT_TO_LOCATION) {
  3920.         API.playSoundFrontEnd("HUD_MINI_GAME_SOUNDSET", "CHECKPOINT_NORMAL");
  3921.         API.triggerServerEvent("selectedteleportLocation", index);
  3922.         menu.Visible = false;
  3923.     } else if (menuIdx == MENU_IDX_RECIPES) {
  3924.         API.triggerServerEvent("selectedRecipe", index);
  3925.     } else if (menuIdx == MENU_IDX_EQUIPTMENT) {
  3926.         API.triggerServerEvent("selectedGroupEquiptment", index);
  3927.     } else if (menuIdx == MENU_IDX_EQUIPTMENT_COP) {
  3928.         if(index == 27) {
  3929.             menuIdx = MENU_IDX_EQUIPTMENT_COP_MALE;
  3930.             menu.Visible = false;
  3931.             menu.Clear();
  3932.            
  3933.             menu.AddItem(API.createMenuItem("~b~Riietusese: 1", "Toimib ainult freemode skinnidel!"));
  3934.             menu.AddItem(API.createMenuItem("~b~Riietusese: 2", "Toimib ainult freemode skinnidel!"));
  3935.             menu.AddItem(API.createMenuItem("~b~Riietusese: 3", "Valimiseks vajuta [ENTER]"));
  3936.             menu.AddItem(API.createMenuItem("~b~Riietusese: 4", "Valimiseks vajuta [ENTER]"));
  3937.             menu.AddItem(API.createMenuItem("~b~Riietusese: 5", "Valimiseks vajuta [ENTER]"));
  3938.  
  3939.             menu.AddItem(API.createMenuItem("~b~Aksessuaar: 1", "Valimiseks vajuta [ENTER]"));
  3940.             menu.AddItem(API.createMenuItem("~b~Aksessuaar: 2", "Valimiseks vajuta [ENTER]"));
  3941.             menu.AddItem(API.createMenuItem("~b~Aksessuaar: 3", "Valimiseks vajuta [ENTER]"));
  3942.  
  3943.             menu.AddItem(API.createMenuItem("~y~Tagasi", "Valimiseks vajuta ~g~[ENTER]"));
  3944.             menu.Visible = true;
  3945.         }
  3946.         else if(index == 28) {
  3947.             menuIdx = MENU_IDX_EQUIPTMENT_COP_FEMALE;
  3948.             menu.Visible = false;
  3949.             menu.Clear();
  3950.            
  3951.             menu.AddItem(API.createMenuItem("~b~Riietusese: 1", "Toimib ainult freemode skinnidel!"));
  3952.             menu.AddItem(API.createMenuItem("~b~Riietusese: 2", "Toimib ainult freemode skinnidel!"));
  3953.             menu.AddItem(API.createMenuItem("~b~Riietusese: 3", "Valimiseks vajuta [ENTER]"));
  3954.             menu.AddItem(API.createMenuItem("~b~Riietusese: 4", "Valimiseks vajuta [ENTER]"));
  3955.             menu.AddItem(API.createMenuItem("~b~Riietusese: 5", "Valimiseks vajuta [ENTER]"));
  3956.             menu.AddItem(API.createMenuItem("~b~Riietusese: 6", "Valimiseks vajuta [ENTER]"));
  3957.             menu.AddItem(API.createMenuItem("~b~Riietusese: 7", "Valimiseks vajuta [ENTER]"));
  3958.             menu.AddItem(API.createMenuItem("~b~Riietusese: 8", "Valimiseks vajuta [ENTER]"));
  3959.             menu.AddItem(API.createMenuItem("~b~Riietusese: 9", "Valimiseks vajuta [ENTER]"));
  3960.             menu.AddItem(API.createMenuItem("~b~Riietusese: 10", "Valimiseks vajuta [ENTER]"));
  3961.             menu.AddItem(API.createMenuItem("~b~Riietusese: 11", "Valimiseks vajuta [ENTER]"));
  3962.             menu.AddItem(API.createMenuItem("~b~Riietusese: 12", "Valimiseks vajuta [ENTER]"));
  3963.  
  3964.             menu.AddItem(API.createMenuItem("~b~Aksessuaar: 1", "Valimiseks vajuta [ENTER]"));
  3965.             menu.AddItem(API.createMenuItem("~b~Aksessuaar: 2", "Valimiseks vajuta [ENTER]"));
  3966.             menu.AddItem(API.createMenuItem("~b~Aksessuaar: 3", "Valimiseks vajuta [ENTER]"));
  3967.  
  3968.             menu.AddItem(API.createMenuItem("~y~Tagasi", "Valimiseks vajuta ~g~[ENTER]"));
  3969.             menu.Visible = true;
  3970.         }
  3971.         else {
  3972.             API.triggerServerEvent("selectedGroupEquiptment", index);
  3973.         }
  3974.     } else if (menuIdx == MENU_IDX_DRIVING_EXAM) {
  3975.         API.triggerServerEvent("selectedDrivingCar", index);
  3976.         menu.Visible = false;
  3977.     } else if (menuIdx == MENU_IDX_EQUIPTMENT_COP_MALE) {
  3978.         if(index == 8) {
  3979.             ShowCopEquiptment();
  3980.         } else {
  3981.             API.triggerServerEvent("selectedCopClothesMale", index);
  3982.             menu.Visible = false;
  3983.         }
  3984.     } else if (menuIdx == MENU_IDX_EQUIPTMENT_COP_FEMALE) {
  3985.         if(index == 15) {
  3986.             ShowCopEquiptment();
  3987.         } else {
  3988.             API.triggerServerEvent("selectedCopClothesFemale", index);
  3989.             menu.Visible = false;
  3990.         }
  3991.     } else if (menuIdx == MENU_IDX_SETTINGS_NEW) {
  3992.         chosenSetting = index;
  3993.         menuIdx = MENU_IDX_SETTINGS_NEW_CHOSED;
  3994.         menu.Visible = false;
  3995.         menu.Clear();
  3996.  
  3997.         hudfontSizeList_MONEY.Index = setting_money_font_size;
  3998.         hudfontStyleList_MONEY.Index = setting_money_font_style;
  3999.         hudColorRList_MONEY.Index = setting_money_color_r;
  4000.         hudColorGList_MONEY.Index = setting_money_color_g;
  4001.         hudColorBList_MONEY.Index = setting_money_color_b;
  4002.         hudPosXList_MONEY.Index = setting_money_pos_x;
  4003.         hudPosYList_MONEY.Index = setting_money_pos_y;
  4004.  
  4005.         hudfontSizeList_FOOD.Index = setting_food_font_size;
  4006.         hudfontStyleListFOOD_.Index = setting_food_font_style;
  4007.         hudColorRList_FOOD.Index = setting_food_color_r;
  4008.         hudColorGList_FOOD.Index = setting_food_color_g;
  4009.         hudColorBList_FOOD.Index = setting_food_color_b;
  4010.         hudPosXList_FOOD.Index = setting_food_pos_x;
  4011.         hudPosYList_FOOD.Index = setting_food_pos_y;
  4012.  
  4013.         hudfontSizeList_SPEED.Index = setting_speed_font_size;
  4014.         hudfontStyleList_SPEED.Index = setting_speed_font_style;
  4015.         hudColorRList_SPEED.Index = setting_speed_color_r;
  4016.         hudColorGList_SPEED.Index = setting_speed_color_g;
  4017.         hudColorBList_SPEED.Index = setting_speed_color_b;
  4018.         hudPosXList_SPEED.Index = setting_speed_pos_x;
  4019.         hudPosYList_SPEED.Index = setting_speed_pos_y;
  4020.  
  4021.         hudfontSizeList_FUEL.Index = setting_fuel_font_size;
  4022.         hudfontStyleList_FUEL.Index = setting_fuel_font_style;
  4023.         hudColorRList_FUEL.Index = setting_fuel_color_r;
  4024.         hudColorGList_FUEL.Index = setting_fuel_color_g;
  4025.         hudColorBList_FUEL.Index = setting_fuel_color_b;
  4026.         hudPosXList_FUEL.Index = setting_fuel_pos_x;
  4027.         hudPosYList_FUEL.Index = setting_fuel_pos_y;
  4028.  
  4029.         hudfontSizeList_VEHHP.Index = setting_vehhp_font_size;
  4030.         hudfontStyleList_VEHHP.Index = setting_vehhp_font_style;
  4031.         hudColorRList_VEHHP.Index = setting_vehhp_color_r;
  4032.         hudColorGList_VEHHP.Index = setting_vehhp_color_g;
  4033.         hudColorBList_VEHHP.Index = setting_vehhp_color_b;
  4034.         hudPosXList_VEHHP.Index = setting_vehhp_pos_x;
  4035.         hudPosYList_VEHHP.Index = setting_vehhp_pos_y;
  4036.  
  4037.         hudfontSizeList_COUNTER.Index = setting_counter_font_size;
  4038.         hudfontStyleList_COUNTER.Index = setting_counter_font_style;
  4039.         hudColorRList_COUNTER.Index = setting_counter_color_r;
  4040.         hudColorGList_COUNTER.Index = setting_counter_color_g;
  4041.         hudColorBList_COUNTER.Index = setting_counter_color_b;
  4042.         hudPosXList_COUNTER.Index = setting_counter_pos_x;
  4043.         hudPosYList_COUNTER.Index = setting_counter_pos_y;
  4044.  
  4045.         hudfontSizeList_NOTIFICATION.Index = setting_notification_font_size;
  4046.         hudfontStyleList_NOTIFICATION.Index = setting_notification_font_style;
  4047.         hudColorRList_NOTIFICATION.Index = setting_notification_color_r;
  4048.         hudColorGList_NOTIFICATION.Index = setting_notification_color_g;
  4049.         hudColorBList_NOTIFICATION.Index = setting_notification_color_b;
  4050.         hudPosXList_NOTIFICATION.Index = setting_notification_pos_x;
  4051.         hudPosYList_NOTIFICATION.Index = setting_notification_pos_y;
  4052.  
  4053.         hudfontSizeList_ODOMETER.Index = setting_odometer_font_size;
  4054.         hudfontStyleList_ODOMETER.Index = setting_odometer_font_style;
  4055.         hudColorRList_ODOMETER.Index = setting_odometer_color_r;
  4056.         hudColorGList_ODOMETER.Index = setting_odometer_color_g;
  4057.         hudColorBList_ODOMETER.Index = setting_odometer_color_b;
  4058.         hudPosXList_ODOMETER.Index = setting_odometer_pos_x;
  4059.         hudPosYList_ODOMETER.Index = setting_odometer_pos_y;
  4060.  
  4061.         hudRefreshrateListItem.Index = setting_update_speed;
  4062.  
  4063.         hudfontSizeList_MINIGAME.Index = setting_minigame_font_size;
  4064.         hudfontStyleList_MINIGAME.Index = setting_minigame_font_style;
  4065.         hudColorRList_MINIGAME.Index = setting_minigame_color_r;
  4066.         hudColorGList_MINIGAME.Index = setting_minigame_color_g;
  4067.         hudColorBList_MINIGAME.Index = setting_minigame_color_b;
  4068.         hudPosXList_MINIGAME.Index = setting_minigame_pos_x;
  4069.         hudPosYList_MINIGAME.Index = setting_minigame_pos_y;
  4070.  
  4071.         hudfontSizeList_COMPASS.Index = setting_compass_font_size;
  4072.         hudfontStyleList_COMPASS.Index = setting_compass_font_style;
  4073.         hudColorRList_COMPASS.Index = setting_compass_color_r;
  4074.         hudColorGList_COMPASS.Index = setting_compass_color_g;
  4075.         hudColorBList_COMPASS.Index = setting_compass_color_b;
  4076.         hudPosXList_COMPASS.Index = setting_compass_pos_x;
  4077.         hudPosYList_COMPASS.Index = setting_compass_pos_y;
  4078.  
  4079.         hudOpacityList_MONEY.Index = setting_money_opacity;
  4080.         hudOpacityList_FOOD.Index = setting_food_opacity;
  4081.         hudOpacityList_SPEED.Index = setting_speed_opacity;
  4082.         hudOpacityList_FUEL.Index = setting_fuel_opacity;
  4083.         hudOpacityList_VEHHP.Index = setting_vehhp_opacity;
  4084.         hudOpacityList_COUNTER.Index = setting_counter_opacity;
  4085.         hudOpacityList_NOTIFICATION.Index = setting_notification_opacity;
  4086.         hudOpacityList_ODOMETER.Index = setting_odometer_opacity;
  4087.         hudOpacityList_MINIGAME.Index = setting_minigame_opacity;
  4088.         hudOpacityList_COMPASS.Index = setting_compass_opacity;
  4089.  
  4090.         if (index == 0) {
  4091.             menu.AddItem(hudfontSizeList_MONEY);
  4092.             menu.AddItem(hudfontStyleList_MONEY);
  4093.             menu.AddItem(hudColorRList_MONEY);
  4094.             menu.AddItem(hudColorGList_MONEY);
  4095.             menu.AddItem(hudColorBList_MONEY);
  4096.             menu.AddItem(hudPosXList_MONEY);
  4097.             menu.AddItem(hudPosYList_MONEY);
  4098.             menu.AddItem(hudOpacityList_MONEY);
  4099.             chosenSetting = CHOSEN_SETTING_IDX_MONEY;
  4100.         } else if (index == 1) {
  4101.             menu.AddItem(hudfontSizeList_FOOD);
  4102.             menu.AddItem(hudfontStyleListFOOD_);
  4103.             menu.AddItem(hudColorRList_FOOD);
  4104.             menu.AddItem(hudColorGList_FOOD);
  4105.             menu.AddItem(hudColorBList_FOOD);
  4106.             menu.AddItem(hudPosXList_FOOD);
  4107.             menu.AddItem(hudPosYList_FOOD);
  4108.             menu.AddItem(hudOpacityList_FOOD);
  4109.             chosenSetting = CHOSEN_SETTING_IDX_FOOD;
  4110.         } else if (index == 2) {
  4111.             menu.AddItem(hudfontSizeList_SPEED);
  4112.             menu.AddItem(hudfontStyleList_SPEED);
  4113.             menu.AddItem(hudColorRList_SPEED);
  4114.             menu.AddItem(hudColorGList_SPEED);
  4115.             menu.AddItem(hudColorBList_SPEED);
  4116.             menu.AddItem(hudPosXList_SPEED);
  4117.             menu.AddItem(hudPosYList_SPEED);
  4118.             menu.AddItem(hudOpacityList_SPEED);
  4119.             chosenSetting = CHOSEN_SETTING_IDX_SPEED;
  4120.         } else if (index == 3) {
  4121.             menu.AddItem(hudfontSizeList_FUEL);
  4122.             menu.AddItem(hudfontStyleList_FUEL);
  4123.             menu.AddItem(hudColorRList_FUEL);
  4124.             menu.AddItem(hudColorGList_FUEL);
  4125.             menu.AddItem(hudColorBList_FUEL);
  4126.             menu.AddItem(hudPosXList_FUEL);
  4127.             menu.AddItem(hudPosYList_FUEL);
  4128.             menu.AddItem(hudOpacityList_FUEL);
  4129.             chosenSetting = CHOSEN_SETTING_IDX_FUEL;
  4130.         } else if (index == 4) {
  4131.             menu.AddItem(hudfontSizeList_VEHHP);
  4132.             menu.AddItem(hudfontStyleList_VEHHP);
  4133.             menu.AddItem(hudColorRList_VEHHP);
  4134.             menu.AddItem(hudColorGList_VEHHP);
  4135.             menu.AddItem(hudColorBList_VEHHP);
  4136.             menu.AddItem(hudPosXList_VEHHP);
  4137.             menu.AddItem(hudPosYList_VEHHP);
  4138.             menu.AddItem(hudOpacityList_VEHHP);
  4139.             chosenSetting = CHOSEN_SETTING_IDX_VEHHP;
  4140.         } else if (index == 5) {
  4141.             menu.AddItem(hudfontSizeList_COUNTER);
  4142.             menu.AddItem(hudfontStyleList_COUNTER);
  4143.             menu.AddItem(hudColorRList_COUNTER);
  4144.             menu.AddItem(hudColorGList_COUNTER);
  4145.             menu.AddItem(hudColorBList_COUNTER);
  4146.             menu.AddItem(hudPosXList_COUNTER);
  4147.             menu.AddItem(hudPosYList_COUNTER);
  4148.             menu.AddItem(hudOpacityList_COUNTER);
  4149.             chosenSetting = CHOSEN_SETTING_IDX_COUNTER;
  4150.         } else if (index == 6) {
  4151.             menu.AddItem(hudfontSizeList_NOTIFICATION);
  4152.             menu.AddItem(hudfontStyleList_NOTIFICATION);
  4153.             menu.AddItem(hudColorRList_NOTIFICATION);
  4154.             menu.AddItem(hudColorGList_NOTIFICATION);
  4155.             menu.AddItem(hudColorBList_NOTIFICATION);
  4156.             menu.AddItem(hudPosXList_NOTIFICATION);
  4157.             menu.AddItem(hudPosYList_NOTIFICATION);
  4158.             menu.AddItem(hudOpacityList_NOTIFICATION);
  4159.             chosenSetting = CHOSEN_SETTING_IDX_NOTIFICATION;
  4160.         } else if (index == 7) {
  4161.             menu.AddItem(hudRefreshrateListItem);
  4162.         } else if (index == 8) {
  4163.             menu.AddItem(hudfontSizeList_ODOMETER);
  4164.             menu.AddItem(hudfontStyleList_ODOMETER);
  4165.             menu.AddItem(hudColorRList_ODOMETER);
  4166.             menu.AddItem(hudColorGList_ODOMETER);
  4167.             menu.AddItem(hudColorBList_ODOMETER);
  4168.             menu.AddItem(hudPosXList_ODOMETER);
  4169.             menu.AddItem(hudPosYList_ODOMETER);
  4170.             menu.AddItem(hudOpacityList_ODOMETER);
  4171.             chosenSetting = CHOSEN_SETTING_IDX_ODOMETER;
  4172.         } else if (index == 9) {
  4173.             menu.AddItem(hudfontSizeList_MINIGAME);
  4174.             menu.AddItem(hudfontStyleList_MINIGAME);
  4175.             menu.AddItem(hudColorRList_MINIGAME);
  4176.             menu.AddItem(hudColorGList_MINIGAME);
  4177.             menu.AddItem(hudColorBList_MINIGAME);
  4178.             menu.AddItem(hudPosXList_MINIGAME);
  4179.             menu.AddItem(hudPosYList_MINIGAME);
  4180.             menu.AddItem(hudOpacityList_MINIGAME);
  4181.             chosenSetting = CHOSEN_SETTING_IDX_MINIGAME;
  4182.         } else if (index == 10) {
  4183.             menu.AddItem(hudfontSizeList_COMPASS);
  4184.             menu.AddItem(hudfontStyleList_COMPASS);
  4185.             menu.AddItem(hudColorRList_COMPASS);
  4186.             menu.AddItem(hudColorGList_COMPASS);
  4187.             menu.AddItem(hudColorBList_COMPASS);
  4188.             menu.AddItem(hudPosXList_COMPASS);
  4189.             menu.AddItem(hudPosYList_COMPASS);
  4190.             menu.AddItem(hudOpacityList_COMPASS);
  4191.             chosenSetting = CHOSEN_SETTING_IDX_COMPASS;
  4192.         }
  4193.        
  4194.         menu.AddItem(API.createMenuItem("~g~Salvesta ~s~& ~g~Tagasi", "Valimiseks vajuta [ENTER]"));
  4195.         menu.Visible = true;
  4196.     }
  4197.     else if (menuIdx == MENU_IDX_SETTINGS_NEW_CHOSED) { // NOTE (Caupo 07.07.2017): Peaks ainult töötama selle tõttu kuna ainuke asi, mis on tavaline menu item on  Tagasi nupp
  4198.         if (index != 0 && index != 1 && index != 8) { // Font size ja style ei saa muuta sellega, ei viitsi re calcerit siia teha... kuigi tegelt see vähe aga pohh
  4199.             userInput = API.getUserInput("", 4);
  4200.  
  4201.             if(userInput.length <= 0 || userInput.length > 5) {
  4202.                 API.displaySubtitle("Sisestatud arvu ei suudetud teha täisarvuks. (1)");
  4203.                 return;
  4204.             }
  4205.  
  4206.             var _input = parseInt(userInput);
  4207.             if(_input == "NaN" || _input == "nan" || _input == "Nan" || _input == null) {
  4208.                 API.displaySubtitle("Sisestatud arvu ei suudetud teha täisarvuks. (2)");
  4209.                 return;
  4210.             }
  4211.  
  4212.             if (chosenSetting == CHOSEN_SETTING_IDX_MONEY) {
  4213.                 if (index == 0) { setting_money_font_size = _input; }
  4214.                 else if (index == 2) { setting_money_color_r = _input; }
  4215.                 else if (index == 3) { setting_money_color_g = _input; }
  4216.                 else if (index == 4) { setting_money_color_b = _input; }
  4217.                 else if (index == 5) { setting_money_pos_x = _input; }
  4218.                 else if (index == 6) { setting_money_pos_y = _input; }
  4219.                 else if (index == 7) { setting_money_opacity = _input; }
  4220.             } else if (chosenSetting == CHOSEN_SETTING_IDX_FOOD) {
  4221.                 if (index == 0) { setting_food_font_size = _input; }
  4222.                 else if (index == 2) { setting_food_color_r = _input; }
  4223.                 else if (index == 3) { setting_food_color_g = _input; }
  4224.                 else if (index == 4) { setting_food_color_b = _input; }
  4225.                 else if (index == 5) { setting_food_pos_x = _input; }
  4226.                 else if (index == 6) { setting_food_pos_y = _input; }
  4227.                 else if (index == 7) { setting_food_opacity = _input; }
  4228.             } else if (chosenSetting == CHOSEN_SETTING_IDX_SPEED) {
  4229.                 if (index == 0) { setting_speed_font_size = _input; }
  4230.                 else if (index == 2) { setting_speed_color_r = _input; }
  4231.                 else if (index == 3) { setting_speed_color_g = _input; }
  4232.                 else if (index == 4) { setting_speed_color_b = _input; }
  4233.                 else if (index == 5) { setting_speed_pos_x = _input; }
  4234.                 else if (index == 6) { setting_speed_pos_y = _input; }
  4235.                 else if (index == 7) { setting_speed_opacity = _input; }
  4236.             } else if (chosenSetting == CHOSEN_SETTING_IDX_FUEL) {
  4237.                 if (index == 0) { setting_fuel_font_size = _input; }
  4238.                 else if (index == 2) { setting_fuel_color_r = _input; }
  4239.                 else if (index == 3) { setting_fuel_color_g = _input; }
  4240.                 else if (index == 4) { setting_fuel_color_b = _input; }
  4241.                 else if (index == 5) { setting_fuel_pos_x = _input; }
  4242.                 else if (index == 6) { setting_fuel_pos_y = _input; }
  4243.                 else if (index == 7) { setting_fuel_opacity = _input; }
  4244.             } else if (chosenSetting == CHOSEN_SETTING_IDX_VEHHP) {
  4245.                 if (index == 0) { setting_vehhp_font_size = _input; }
  4246.                 else if (index == 2) { setting_vehhp_color_r = _input; }
  4247.                 else if (index == 3) { setting_vehhp_color_g = _input; }
  4248.                 else if (index == 4) { setting_vehhp_color_b = _input; }
  4249.                 else if (index == 5) { setting_vehhp_pos_x = _input; }
  4250.                 else if (index == 6) { setting_vehhp_pos_y = _input; }
  4251.                 else if (index == 7) { setting_vehhp_opacity = _input; }
  4252.             } else if (chosenSetting == CHOSEN_SETTING_IDX_COUNTER) {
  4253.                 if (index == 0) { setting_counter_font_size = _input; }
  4254.                 else if (index == 2) { setting_counter_color_r = _input; }
  4255.                 else if (index == 3) { setting_counter_color_g = _input; }
  4256.                 else if (index == 4) { setting_counter_color_b = _input; }
  4257.                 else if (index == 5) { setting_counter_pos_x = _input; }
  4258.                 else if (index == 6) { setting_counter_pos_y = _input; }
  4259.                 else if (index == 7) { setting_counter_opacity = _input; }
  4260.             } else if (chosenSetting == CHOSEN_SETTING_IDX_NOTIFICATION) {
  4261.                 if (index == 0) { setting_notification_font_size = _input; }
  4262.                 else if (index == 2) { setting_notification_color_r = _input; }
  4263.                 else if (index == 3) { setting_notification_color_g = _input; }
  4264.                 else if (index == 4) { setting_notification_color_b = _input; }
  4265.                 else if (index == 5) { setting_notification_pos_x = _input; }
  4266.                 else if (index == 6) { setting_notification_pos_y = _input; }
  4267.                 else if (index == 7) { setting_notification_opacity = _input; }
  4268.             } else if (chosenSetting == CHOSEN_SETTING_IDX_ODOMETER) {
  4269.                 if (index == 0) { setting_odometer_font_size = _input; }
  4270.                 else if (index == 2) { setting_odometer_color_r = _input; }
  4271.                 else if (index == 3) { setting_odometer_color_g = _input; }
  4272.                 else if (index == 4) { setting_odometer_color_b = _input; }
  4273.                 else if (index == 5) { setting_odometer_pos_x = _input; }
  4274.                 else if (index == 6) { setting_odometer_pos_y = _input; }
  4275.                 else if (index == 7) { setting_odometer_opacity = _input; }
  4276.             } else if (chosenSetting == CHOSEN_SETTING_IDX_MINIGAME) {
  4277.                 if (index == 0) { setting_minigame_font_size = _input; }
  4278.                 else if (index == 2) { setting_minigame_color_r = _input; }
  4279.                 else if (index == 3) { setting_minigame_color_g = _input; }
  4280.                 else if (index == 4) { setting_minigame_color_b = _input; }
  4281.                 else if (index == 5) { setting_minigame_pos_x = _input; }
  4282.                 else if (index == 6) { setting_minigame_pos_y = _input; }
  4283.                 else if (index == 7) { setting_minigame_opacity = _input; }
  4284.             } else if (chosenSetting == CHOSEN_SETTING_IDX_COMPASS) {
  4285.                 if (index == 0) { setting_compass_font_size = _input; }
  4286.                 else if (index == 2) { setting_compass_color_r = _input; }
  4287.                 else if (index == 3) { setting_compass_color_g = _input; }
  4288.                 else if (index == 4) { setting_compass_color_b = _input; }
  4289.                 else if (index == 5) { setting_compass_pos_x = _input; }
  4290.                 else if (index == 6) { setting_compass_pos_y = _input; }
  4291.                 else if (index == 7) { setting_compass_opacity = _input; }
  4292.             }
  4293.  
  4294.             updateSettingsIndexes = 1;
  4295.         }
  4296.  
  4297.         API.triggerServerEvent("saveSettingsNew",
  4298.             setting_money_font_size,
  4299.             setting_money_font_style,
  4300.             setting_money_color_r,
  4301.             setting_money_color_g,
  4302.             setting_money_color_b,
  4303.             setting_money_pos_x,
  4304.             setting_money_pos_y,
  4305.             setting_food_font_size,
  4306.             setting_food_font_style,
  4307.             setting_food_color_r,
  4308.             setting_food_color_g,
  4309.             setting_food_color_b,
  4310.             setting_food_pos_x,
  4311.             setting_food_pos_y,
  4312.             setting_speed_font_size,
  4313.             setting_speed_font_style,
  4314.             setting_speed_color_r,
  4315.             setting_speed_color_g,
  4316.             setting_speed_color_b,
  4317.             setting_speed_pos_x,
  4318.             setting_speed_pos_y,
  4319.             setting_fuel_font_size,
  4320.             setting_fuel_font_style,
  4321.             setting_fuel_color_r,
  4322.             setting_fuel_color_g,
  4323.             setting_fuel_color_b,
  4324.             setting_fuel_pos_x,
  4325.             setting_fuel_pos_y,
  4326.             setting_vehhp_font_size,
  4327.             setting_vehhp_font_style,
  4328.             setting_vehhp_color_r,
  4329.             setting_vehhp_color_g,
  4330.             setting_vehhp_color_b,
  4331.             setting_vehhp_pos_x,
  4332.             setting_vehhp_pos_y,
  4333.             setting_counter_font_size,
  4334.             setting_counter_font_style,
  4335.             setting_counter_color_r,
  4336.             setting_counter_color_g,
  4337.             setting_counter_color_b,
  4338.             setting_counter_pos_x,
  4339.             setting_counter_pos_y,
  4340.             setting_notification_font_size,
  4341.             setting_notification_font_style,
  4342.             setting_notification_color_r,
  4343.             setting_notification_color_g,
  4344.             setting_notification_color_b,
  4345.             setting_notification_pos_x,
  4346.             setting_notification_pos_y,
  4347.             setting_update_speed,
  4348.  
  4349.             setting_odometer_font_size,
  4350.             setting_odometer_font_style,
  4351.             setting_odometer_color_r,
  4352.             setting_odometer_color_g,
  4353.             setting_odometer_color_b,
  4354.             setting_odometer_pos_x,
  4355.             setting_odometer_pos_y,
  4356.  
  4357.             setting_minigame_font_size,
  4358.             setting_minigame_font_style,
  4359.             setting_minigame_color_r,
  4360.             setting_minigame_color_g,
  4361.             setting_minigame_color_b,
  4362.             setting_minigame_pos_x,
  4363.             setting_minigame_pos_y,
  4364.  
  4365.             setting_compass_font_size,
  4366.             setting_compass_font_style,
  4367.             setting_compass_color_r,
  4368.             setting_compass_color_g,
  4369.             setting_compass_color_b,
  4370.             setting_compass_pos_x,
  4371.             setting_compass_pos_y,
  4372.  
  4373.             setting_money_opacity,
  4374.             setting_food_opacity,
  4375.             setting_speed_opacity,
  4376.             setting_fuel_opacity,
  4377.             setting_vehhp_opacity,
  4378.             setting_counter_opacity,
  4379.             setting_notification_opacity,
  4380.             setting_odometer_opacity,
  4381.             setting_minigame_opacity,
  4382.             setting_compass_opacity
  4383.             );
  4384.         if (index == 8) {
  4385.             ShowSettingsNew();
  4386.         }
  4387.     }
  4388.     else if (menuIdx == MENU_IDX_SELECT_SKIN_FROM_CLOTHESHOP) {
  4389.         if (index == 0) {
  4390.             if(chosenClothMenu == "male") {
  4391.                 ShowClothingShopMale();
  4392.             } else if(chosenClothMenu == "female") {
  4393.                 ShowClothingShopFemale();
  4394.             }
  4395.             API.triggerServerEvent("resetSkin");
  4396.         } else {
  4397.             API.triggerServerEvent("setPlayerClotheshopSkin", (index - 1));
  4398.         }
  4399.     }
  4400.     else if (menuIdx == MENU_IDX_OBJ_CATEGORYS) {
  4401.         if (index == 0) {
  4402.             var _categoryName = API.getUserInput("", 32);
  4403.             API.triggerServerEvent("addCategory", _categoryName);
  4404.         } else {
  4405.             menuIdx = MENU_IDX_OBJ_SELECTION;
  4406.             menu.Clear();
  4407.             selectedCategory = (index-1);
  4408.  
  4409.             menu.AddItem(API.createMenuItem("~y~Muuda kategooria nime", "Valides sisesta objekti nimi ja seej2rel model ID"));
  4410.             menu.AddItem(API.createMenuItem("~r~Eemalda kategooria", "Valides eemaldab ka k6ik objektid selle all"));
  4411.             menu.AddItem(API.createMenuItem("~g~Lisa objekt", "Valides sisesta objekti nimi ja seej2rel model ID"));
  4412.             for (var i = 0; i < objectPresetCounts[selectedCategory]; i++) {
  4413.                 menu.AddItem(API.createMenuItem(objectPresets[selectedCategory][i], "Valimiseks vajuta [ENTER]"));
  4414.             }
  4415.  
  4416.             menu.CurrentSelection = 0;
  4417.             menu.Visible = true;
  4418.         }
  4419.     }
  4420.     else if (menuIdx == MENU_IDX_OBJ_SELECTION) {
  4421.         if (index == 0) {
  4422.             var catName = API.getUserInput("", 32);
  4423.             API.triggerServerEvent("changeCategoryName", catName, selectedCategory);
  4424.         } else if (index == 1) {
  4425.             API.triggerServerEvent("removeCategory", selectedCategory);
  4426.         } else if (index == 2) {
  4427.             var objectName = API.getUserInput("", 32);
  4428.             var objectModel = API.getUserInput("", 16);
  4429.             API.triggerServerEvent("addObjectToCategory", objectName, objectModel, selectedCategory);
  4430.         } else {
  4431.             selectedObjIdx = (index - 3);
  4432.            
  4433.             menuIdx = MENU_IDX_OBJ_OPTIONS;
  4434.             menu.Clear();
  4435.  
  4436.             menu.AddItem(API.createMenuItem("~g~Spawni objekt", "Valides tekib objekt teie ette"));
  4437.             menu.AddItem(API.createMenuItem("~y~Muuda objekti nime", "Valides sisestage objektile uus nimi"));
  4438.             menu.AddItem(API.createMenuItem("~y~Muuda objekti model ID", "Valides sisestage objektile uus Model ID"));
  4439.             menu.AddItem(API.createMenuItem("~r~Eemalda objekt", "Valides eemaldub objekt nimekirjast"));
  4440.  
  4441.             menu.CurrentSelection = 0;
  4442.             menu.Visible = true;
  4443.         }
  4444.     }
  4445.     else if (menuIdx == MENU_IDX_OBJ_OPTIONS) {
  4446.         if (index == 0) {
  4447.             API.triggerServerEvent("createObject", selectedCategory, selectedObjIdx);
  4448.             menu.Visible = false;
  4449.             API.showCursor(false);
  4450.         } else if (index == 1) {
  4451.             var objectName = API.getUserInput("", 32);
  4452.             API.triggerServerEvent("changeObjName", selectedCategory, selectedObjIdx, objectName);
  4453.         } else if (index == 2) {
  4454.             var objectModel = API.getUserInput("", 16);
  4455.             API.triggerServerEvent("changeObjModel", selectedCategory, selectedObjIdx, objectModel);
  4456.         } else if (index == 3) {
  4457.             API.triggerServerEvent("removeObj", selectedCategory, selectedObjIdx);
  4458.         }
  4459.     }
  4460.     else if (menuIdx == MENU_IDX_STATIC_SHOP) {
  4461.         if (index == 8) { // Telefoni index
  4462.             API.triggerServerEvent("buyItemFromStaticShop", index, 1);
  4463.         } else {
  4464.             var amount = API.getUserInput("", 16);
  4465.             API.triggerServerEvent("buyItemFromStaticShop", index, amount);
  4466.         }
  4467.     }
  4468.     else if (menuIdx == MENU_IDX_PREVIEW_OBJ) {
  4469.         API.triggerServerEvent("previewObj", index);
  4470.     }
  4471.     else if (menuIdx == MENU_IDX_PUTTING_ITEMS) {
  4472.         menu.Visible = false;
  4473.         API.showCursor(false);
  4474.         userInput = API.getUserInput("", 3);
  4475.         API.triggerServerEvent("transferInventory", index, userInput);
  4476.     }
  4477.     else if (menuIdx == MENU_IDX_TAKING_ITEMS) {
  4478.         menu.Visible = false;
  4479.         API.showCursor(false);
  4480.         userInput = API.getUserInput("", 3);
  4481.         API.triggerServerEvent("transferInventory", index, userInput);
  4482.     }
  4483.     else if (menuIdx == MENU_IDX_GUNSTORE) {
  4484.         menu.Visible = false;
  4485.         API.showCursor(false);
  4486.         userInput = API.getUserInput("", 4);
  4487.         API.triggerServerEvent("buyFromGunstore", index, userInput);
  4488.     }
  4489.     else if (menuIdx == MENU_IDX_MELEESTORE) {
  4490.         menu.Visible = false;
  4491.         API.showCursor(false);
  4492.         userInput = API.getUserInput("", 3);
  4493.         API.triggerServerEvent("buyFromMeleeStore", index, userInput);
  4494.     }
  4495.     else if (menuIdx == MENU_IDX_SELECT_CHAR) {
  4496.         selectingChar = false;
  4497.         menu.Visible = false;
  4498.         API.showCursor(false);
  4499.         API.triggerServerEvent("selectLoginChar", index, uid, username);
  4500.     }
  4501.     else if (menuIdx == MENU_IDX_YES_OR_NO_SELL_VEHICLE) {
  4502.         selectingChar = false;
  4503.         menu.Visible = false;
  4504.         API.showCursor(false);
  4505.         if (index == 0) {
  4506.             API.triggerServerEvent("sellVehicleToScrap");
  4507.         }
  4508.     }
  4509.     else if (menuIdx == MENU_IDX_AROUND_OBJECTS) {
  4510.         menu.Visible = false;
  4511.         API.showCursor(false);
  4512.         API.triggerServerEvent("selectedAroundObject", index);
  4513.     }
  4514.     else if (menuIdx == MENU_IDX_SELECTED_VEHICLE_MENU) {
  4515.         menu.Visible = false;
  4516.         API.showCursor(false);
  4517.         API.triggerServerEvent("selectedVehicleMenu", index);
  4518.     }
  4519.     else if (menuIdx == MENU_IDX_TUNING) {
  4520.         if(tuningIdx == TUNING_IDX_TYRE_SMOKE) {
  4521.             if(index == 3) {
  4522.                 API.triggerServerEvent("setTyreSmoke", tuningTyreColorR, tuningTyreColorG, tuningTyreColorB);
  4523.             }
  4524.         }
  4525.     }
  4526.     else if (menuIdx == MENU_IDX_NEW_CLOTHINGSHOP) {
  4527.         if(index == 11) {
  4528.             menuIdx = MENU_IDX_FACE_FEATURES;
  4529.             menu.Visible = false;
  4530.             menu.Clear();
  4531.             AddWardrobeBodyItems();
  4532.             menu.RefreshIndex();
  4533.             menu.Visible = true;
  4534.             assignClothColorIdx = true;
  4535.  
  4536.  
  4537.             API.triggerServerEvent("savePlayerClothes", clothHead, clothMask, clothHaircut, clothTorso, clothLegs, clothBags, clothFeet, clothAccessory, clothUndershirt, clothBodyArmour, clothDecals, clothTops, clothHats, clothGlasses, clothEars);
  4538.             return;
  4539.         }
  4540.         else if(index == 12) {
  4541.             API.triggerServerEvent("resetPlayerClothes");
  4542.             clothHaircut = 0;
  4543.             clothTorso = 0;
  4544.             clothUndershirt = 0;
  4545.             clothTops = 0;
  4546.             clothFeet = 0;
  4547.             clothLegs = 0;
  4548.             clothBags = 0;
  4549.             clothAccessory = 0;
  4550.             clothDecals = 0;
  4551.             clothTops = 0;
  4552.             clothHats = 0;
  4553.             clothGlasses = 0;
  4554.             clothEars = 0;
  4555.  
  4556.             if(chosenClothMenu == "male") {
  4557.                 ShowClothingShopMale();
  4558.             } else if(chosenClothMenu == "female") {
  4559.                 ShowClothingShopFemale();
  4560.             }
  4561.         }
  4562.         else if(index == 13) {
  4563.             menuIdx = MENU_IDX_SELECT_SKIN_FROM_CLOTHESHOP;
  4564.             API.triggerServerEvent("sendMsg", "~r~NB!: ~w~Tavaskinnidel pole nii palju riietevalikuid kui freemode skinnidel!");
  4565.             API.triggerServerEvent("sendMsg", "~w~Ärge valige skinne enteriga nii kiiresti, et teie arvuti ei jõua neid mängu");
  4566.             API.triggerServerEvent("sendMsg", "~w~laadida. ~r~Mäng võib crashida.");
  4567.             menu.Clear();
  4568.  
  4569.             menu.AddItem(API.createMenuItem("~r~Tagasi", "Valimiseks vajuta [ENTER]"));
  4570.             var _color = "~c~";
  4571.             for (var i = 0; i < skinListCount; i++) {
  4572.                 menu.AddItem(API.createMenuItem(_color + skinList[i], "Valimiseks vajuta [ENTER]"));
  4573.                 if (_color == "~c~") {
  4574.                     _color = "";
  4575.                 } else {
  4576.                     _color = "~c~";
  4577.                 }
  4578.             }
  4579.             menu.CurrentSelection = 0;
  4580.             menu.Visible = true;
  4581.         }
  4582.         else if(index >= 14 && index <= 24) {
  4583.             if(index == 14) {
  4584.                 clothHaircut = 0;
  4585.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4586.             } else if(index == 15) {
  4587.                 clothHats = 0;
  4588.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4589.             } else if(index == 16) {
  4590.                 clothGlasses = 0;
  4591.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4592.             } else if(index == 17) {
  4593.                 clothEars = 0;
  4594.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4595.             } else if(index == 18) {
  4596.                 clothAccessory = 0;
  4597.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4598.             } else if(index == 19) {
  4599.                 clothTorso = 0;
  4600.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4601.             } else if(index == 20) {
  4602.                 clothTops = 0;
  4603.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4604.             } else if(index == 21) {
  4605.                 clothUndershirt = 0;
  4606.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4607.             } else if(index == 22) {
  4608.                 clothLegs = 0;
  4609.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4610.             } else if(index == 23) {
  4611.                 clothFeet = 0;
  4612.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4613.             } else if(index == 24) {
  4614.                 clothDecals = 0;
  4615.                 API.triggerServerEvent("resetPlayerClotheItem", index);
  4616.             }
  4617.         }
  4618.     }
  4619.     else if (menuIdx == MENU_IDX_TATTOOSHOP) {
  4620.         if(index == 10) {
  4621.             API.triggerServerEvent("savePlayerTattoos");
  4622.             menu.Visible = false;
  4623.             API.showCursor(false);
  4624.  
  4625.             API.detachCamera(camera);
  4626.             API.setGameplayCameraActive();
  4627.             API.setChatVisible(true);
  4628.             API.setHudVisible(true);
  4629.             freewill = false;
  4630.         }
  4631.     }
  4632.     else if (menuIdx == MENU_IDX_BEARDS) {
  4633.         if(index == 2) {
  4634.             API.triggerServerEvent("savePlayerBeard");
  4635.             menu.Visible = false;
  4636.             API.showCursor(false);
  4637.         }
  4638.     }
  4639. });
  4640.  
  4641. function UpdatePullingFishStr() {
  4642.     fishPullingStr = "~h~~g~";
  4643.  
  4644.     for (var i = 0; i < fishBtnCount; i++) {
  4645.         if (i == fishPullingCounter) {
  4646.             fishPullingStr += "~w~"
  4647.         }
  4648.  
  4649.         if (fishBtnArray[i] !== null) {
  4650.             var btnName = "W";
  4651.             if (fishBtnArray[i] == 1) {
  4652.                 btnName = "A";
  4653.             } else if (fishBtnArray[i] == 2) {
  4654.                 btnName = "S";
  4655.             } else if (fishBtnArray[i] == 3) {
  4656.                 btnName = "D";
  4657.             }
  4658.             fishPullingStr += btnName;
  4659.         }
  4660.     }
  4661. }
  4662.  
  4663. function UpdatePullingAfkStr() {
  4664.     afkPullingStr = "AFK: ~h~~g~";
  4665.  
  4666.     for (var i = 0; i < afkBtnCount; i++) {
  4667.         if (i == afkPullingCounter) {
  4668.             afkPullingStr += "~w~"
  4669.         }
  4670.  
  4671.         if (afkBtnArray[i] !== null) {
  4672.             var btnName = "W";
  4673.             if (afkBtnArray[i] == 1) {
  4674.                 btnName = "A";
  4675.             } else if (afkBtnArray[i] == 2) {
  4676.                 btnName = "S";
  4677.             } else if (afkBtnArray[i] == 3) {
  4678.                 btnName = "D";
  4679.             }
  4680.             afkPullingStr += btnName;
  4681.         }
  4682.     }
  4683. }
  4684.  
  4685. function isObject(val) {
  4686.     return val instanceof CefHelper;
  4687. }
  4688. function isObjectEx(val) {
  4689.     return val instanceof Cef;
  4690. }
  4691.  
  4692. function CloseBrowser() {
  4693.     if (browser != null) {
  4694.         if (isObject(browser) || isObjectEx(browser)) {
  4695.             API.triggerServerEvent("closedBrowser");
  4696.             browser.destroy();
  4697.         } else {
  4698.             API.triggerServerEvent("closedBrowser");
  4699.             API.destroyCefBrowser(browser);
  4700.         }
  4701.         browser = null;
  4702.     }
  4703. }
  4704.  
  4705. //https://msdn.microsoft.com/en-us/library/system.windows.forms.keys(v=vs.110).aspx
  4706. API.onKeyDown.connect(function (sender, key) {
  4707.     if (key.KeyCode === Keys.Space) {
  4708.         isSpaceBeingPressed = true;
  4709.     }
  4710.     if (key.KeyCode === Keys.ShiftKey) {
  4711.         isShiftBeingPressed = true;
  4712.     }
  4713.  
  4714.     var currentTime = API.getGlobalTime();
  4715.     if (currentTime <= (keyTimePressed + keyTime)) {
  4716.         return;
  4717.     }
  4718.  
  4719.     afkTimer = 0;
  4720.     if (!loggedIn || API.isChatOpen()) { // If login box is on screen
  4721.         if (!loggedIn) {
  4722.             var _starttime = resourceStartedTime;
  4723.             if (API.getGlobalTime() > (_starttime + 10000)) {
  4724.                 if (key.KeyCode == Keys.F1) {
  4725.                     API.showCursor(false);
  4726.                     API.setChatVisible(true);
  4727.                     CloseBrowser();
  4728.                     cefShown = false;
  4729.                     SpamProt();
  4730.                 }
  4731.             }
  4732.         }
  4733.  
  4734.         return;
  4735.     }
  4736.  
  4737.     if (key.KeyCode === Keys.Q) {
  4738.         if (!freewill) {
  4739.  
  4740.             if (!g_menu.Visible && !menu.Visible && browser == null) {
  4741.                 API.triggerServerEvent("keyQ");
  4742.             }
  4743.  
  4744.             if(menuIdx == MENU_IDX_PHONE) {
  4745.                 API.triggerServerEvent("deletePhoneObj");
  4746.             }
  4747.  
  4748.             if(menuIdx == MENU_IDX_TUNING) {
  4749.                 API.triggerServerEvent("tuningClosed");
  4750.             }
  4751.            
  4752.             chosenSetting = 0;
  4753.             g_menu.Clear();
  4754.             g_menu.Visible = false;
  4755.             menu.Clear();
  4756.             menu.Visible = false;
  4757.             API.showCursor(false);
  4758.             API.setChatVisible(true);
  4759.             CloseBrowser();
  4760.             SpamProt();
  4761.         } else {
  4762.             if (menuIdx == MENU_IDX_SELECT_SKIN_FROM_CLOTHESHOP) {
  4763.                 ShowFirstTimeWardrobe(skinList);
  4764.                 API.triggerServerEvent("resetSkin");
  4765.             }
  4766.         }
  4767.     }
  4768.  
  4769.     if (menu.Visible) { // If menu is on screen
  4770.         return;
  4771.     }
  4772.  
  4773.     if (pullingFish) {
  4774.         var _fishCounter = fishPullingCounter;
  4775.  
  4776.         if (key.KeyCode === Keys.W) {
  4777.             if (fishBtnArray[fishPullingCounter] == 0) {
  4778.                 fishPullingCounter++;
  4779.             }
  4780.         } else if (key.KeyCode === Keys.A) {
  4781.             if (fishBtnArray[fishPullingCounter] == 1) {
  4782.                 fishPullingCounter++;
  4783.             }
  4784.         } else if (key.KeyCode === Keys.S) {
  4785.             if (fishBtnArray[fishPullingCounter] == 2) {
  4786.                 fishPullingCounter++;
  4787.             }
  4788.         } else if (key.KeyCode === Keys.D) {
  4789.             if (fishBtnArray[fishPullingCounter] == 3) {
  4790.                 fishPullingCounter++;
  4791.             }
  4792.         }
  4793.  
  4794.         if (_fishCounter == fishPullingCounter) {
  4795.             pullingFish = false;
  4796.             fishPullingCounter = 0;
  4797.             fishPullingStr = "";
  4798.             fishTimeLeft = 0;
  4799.             API.triggerServerEvent("fishGotAWay");
  4800.         } else {
  4801.             if (fishPullingCounter >= fishBtnCount) {
  4802.                 pullingFish = false;
  4803.                 fishPullingCounter = 0;
  4804.                 fishPullingStr = "";
  4805.                 fishTimeLeft = 0;
  4806.                 API.triggerServerEvent("catchedFish");
  4807.             } else {
  4808.                 UpdatePullingFishStr();
  4809.             }
  4810.         }
  4811.     }
  4812.  
  4813.     if (pullingAfk) {
  4814.         var _afkCounter = afkPullingCounter;
  4815.  
  4816.         if (key.KeyCode === Keys.W) {
  4817.             if (afkBtnArray[afkPullingCounter] == 0) {
  4818.                 afkPullingCounter++;
  4819.             }
  4820.         } else if (key.KeyCode === Keys.A) {
  4821.             if (afkBtnArray[afkPullingCounter] == 1) {
  4822.                 afkPullingCounter++;
  4823.             }
  4824.         } else if (key.KeyCode === Keys.S) {
  4825.             if (afkBtnArray[afkPullingCounter] == 2) {
  4826.                 afkPullingCounter++;
  4827.             }
  4828.         } else if (key.KeyCode === Keys.D) {
  4829.             if (afkBtnArray[afkPullingCounter] == 3) {
  4830.                 afkPullingCounter++;
  4831.             }
  4832.         }
  4833.  
  4834.         if (_afkCounter == afkPullingCounter) {
  4835.             pullingAfk = false;
  4836.             afkPullingCounter = 0;
  4837.             afkPullingStr = "";
  4838.             afkTimeLeft = 0;
  4839.             API.displaySubtitle("~r~Kirjutasid valesti AFKi.~w~ Proovi uuesti ~g~/kinnitaafk~w~.");
  4840.         } else {
  4841.             if (afkPullingCounter >= afkBtnCount) {
  4842.                 pullingAfk = false;
  4843.                 afkPullingCounter = 0;
  4844.                 afkPullingStr = "";
  4845.                 afkTimeLeft = 0;
  4846.                 API.triggerServerEvent("afkSuccessMinigame");
  4847.             } else {
  4848.                 UpdatePullingAfkStr();
  4849.             }
  4850.         }
  4851.     }
  4852.  
  4853.     if (key.KeyCode === Keys.F1) {
  4854.         API.triggerServerEvent("keyNumber1");
  4855.         SpamProt();
  4856.     } else if (key.KeyCode === Keys.F2) {
  4857.         API.triggerServerEvent("keyNumber2");
  4858.         SpamProt();
  4859.     } else if (key.KeyCode === Keys.F3) {
  4860.         API.triggerServerEvent("keyNumber3");
  4861.         SpamProt();
  4862.     } else if (key.KeyCode === Keys.F4) {
  4863.         API.triggerServerEvent("keyNumber4");
  4864.         SpamProt();
  4865.     } else if (key.KeyCode === Keys.F5) {
  4866.         API.triggerServerEvent("keyNumber5");
  4867.         SpamProt();
  4868.     } else if (key.KeyCode === Keys.F6) {
  4869.         API.triggerServerEvent("keyNumber6");
  4870.         SpamProt();
  4871.     } else if (key.KeyCode === Keys.R) {
  4872.         var currentWep = API.getPlayerCurrentWeapon();
  4873.         if (currentWep != null && currentWep !== undefined) {
  4874.             if (currentWep == fists) {
  4875.                 // NOTE (Caupo 10.05.207): Kunagi hiljem teha sellest, et avab UI muude hotkeydega, hetkel paneme ainult kalastuse selle alla.
  4876.                 API.triggerServerEvent("keyOnFootR");
  4877.             }
  4878.         } else {
  4879.             API.triggerServerEvent("keyOnFootR");
  4880.         }
  4881.     }
  4882.  
  4883.     player = API.getLocalPlayer();
  4884.     if (API.isPlayerInAnyVehicle(player) && API.getPlayerVehicleSeat(player) == -1) {
  4885.         if (key.KeyCode === Keys.E) {
  4886.             API.triggerServerEvent("keyEVehicle");
  4887.             SpamProt();
  4888.         } else if (key.KeyCode === Keys.Left) {
  4889.             API.triggerServerEvent("inVehicleKeyLeft");
  4890.             SpamProt();
  4891.         } else if (key.KeyCode === Keys.Right) {
  4892.             API.triggerServerEvent("inVehicleKeyRight");
  4893.             SpamProt();
  4894.         } else if (key.KeyCode === Keys.R) {
  4895.             API.triggerServerEvent("keyRVehicle");
  4896.             SpamProt();
  4897.         }
  4898.     }
  4899.     else // Kui mängija on jala või siis ei istu juhikohale
  4900.     {
  4901.         if (key.KeyCode === Keys.E) {
  4902.             if (g_menu.Visible || menu.Visible) {
  4903.                 API.showCursor(false);
  4904.                 g_menu.Visible = false;
  4905.                 menu.Visible = false;
  4906.             } else {
  4907.                 API.triggerServerEvent("keyE");
  4908.             }
  4909.             SpamProt();
  4910.         } else if (key.KeyCode === Keys.Q) {
  4911.             /*if (g_menu.Visible || menu.Visible) {
  4912.                 API.showCursor(false);
  4913.                 g_menu.Clear();
  4914.                 g_menu.Visible = false;
  4915.                 menu.Clear();
  4916.                 menu.Visible = false;
  4917.             } else {
  4918.                 API.triggerServerEvent("keyQ");
  4919.             }
  4920.            
  4921.             CloseBrowser();
  4922.             SpamProt();*/
  4923.         } else if (key.KeyCode === Keys.Down) {
  4924.         }
  4925.     }
  4926.  
  4927.     if (movingObj) {
  4928.  
  4929.         if (key.KeyCode === Keys.X) {
  4930.             if (objRotValue < 10) {
  4931.                 objRotValue += 0.01;
  4932.                 objRotValue = Math.round(objRotValue * 100) / 100;
  4933.             }
  4934.         }
  4935.         else if (key.KeyCode === Keys.Z) {
  4936.             if (objRotValue > 0.02) {
  4937.                 objRotValue -= 0.01;
  4938.                 objRotValue = Math.round(objRotValue * 100) / 100;
  4939.             }
  4940.         }
  4941.         else if (key.KeyCode === Keys.C) {
  4942.             if (objPosValue > 0.02) {
  4943.                 objPosValue -= 0.01;
  4944.                 objPosValue = Math.round(objPosValue * 100) / 100;
  4945.             }
  4946.         }
  4947.         else if (key.KeyCode === Keys.V) {
  4948.             if (objPosValue < 10) {
  4949.                 objPosValue += 0.01;
  4950.                 objPosValue = Math.round(objPosValue * 100) / 100;
  4951.             }
  4952.         }
  4953.  
  4954.         if (isSpaceBeingPressed) {
  4955.             var _rot = API.getEntityRotation(selectedObj);
  4956.  
  4957.             if (key.KeyCode === Keys.Up) {
  4958.                 _rot.Y += objRotValue;
  4959.             }
  4960.             else if (key.KeyCode === Keys.Down) {
  4961.                 _rot.Y -= objRotValue;
  4962.             }
  4963.  
  4964.             if (key.KeyCode === Keys.Left) {
  4965.                 _rot.Z -= objRotValue;
  4966.             }
  4967.             else if (key.KeyCode === Keys.Right) {
  4968.                 _rot.Z += objRotValue;
  4969.             }
  4970.  
  4971.             if (key.KeyCode === Keys.ControlKey) {
  4972.                 _rot.X -= objRotValue;
  4973.             }
  4974.             else if (key.KeyCode === Keys.ShiftKey) {
  4975.                 _rot.X += objRotValue;
  4976.             }
  4977.  
  4978.             API.setEntityRotation(selectedObj, _rot);
  4979.         } else {
  4980.             var _pos = API.getEntityPosition(selectedObj);
  4981.  
  4982.             if (key.KeyCode === Keys.Up) {
  4983.                 _pos.Y += objPosValue;
  4984.             }
  4985.             else if (key.KeyCode === Keys.Down) {
  4986.                 _pos.Y -= objPosValue;
  4987.             }
  4988.  
  4989.             if (key.KeyCode === Keys.Left) {
  4990.                 _pos.X -= objPosValue;
  4991.             }
  4992.             else if (key.KeyCode === Keys.Right) {
  4993.                 _pos.X += objPosValue;
  4994.             }
  4995.  
  4996.             if (key.KeyCode === Keys.ControlKey) {
  4997.                 _pos.Z -= objPosValue;
  4998.             }
  4999.             else if (key.KeyCode === Keys.ShiftKey) {
  5000.                 _pos.Z += objPosValue;
  5001.             }
  5002.             if (key.KeyCode === Keys.E) {
  5003.                 movingObj = false;
  5004.                 var _rot = API.getEntityRotation(selectedObj);
  5005.                 API.triggerServerEvent("saveObjectPosition", _pos.X, _pos.Y, _pos.Z, _rot.X, _rot.Y, _rot.Z);
  5006.                 return;
  5007.             }
  5008.             else if (key.KeyCode === Keys.F) {
  5009.                 var _rot = API.getEntityRotation(selectedObj);
  5010.                 API.triggerServerEvent("duplicateObj", _pos.X, _pos.Y, _pos.Z, _rot.X, _rot.Y, _rot.Z, selectedObj);
  5011.             }
  5012.             else if (key.KeyCode === Keys.Delete) {
  5013.                 movingObj = false;
  5014.                 API.triggerServerEvent("removeObject", selectedObj);
  5015.                 return;
  5016.             }
  5017.  
  5018.             API.setEntityPosition(selectedObj, _pos);
  5019.         }
  5020.     }
  5021. });
  5022.  
  5023.  
  5024. API.onKeyUp.connect(function (sender, key) {
  5025.     if (key.KeyCode === Keys.Space) {
  5026.         isSpaceBeingPressed = false;
  5027.     }
  5028.     if (key.KeyCode === Keys.ShiftKey) {
  5029.         isShiftBeingPressed = false;
  5030.     }
  5031. });
  5032.  
  5033. function getEntityData(entity, data) {
  5034.     if (API.hasEntitySyncedData(entity, data)) {
  5035.         return API.getEntitySyncedData(entity, data);
  5036.     } else {
  5037.         return false;
  5038.     }
  5039. }
  5040.  
  5041. function setVehicleIndicatorState(ent, indicator, state) {
  5042.     if (API.isVehicle(ent)) {
  5043.         API.callNative("0xB5D45264751B7DF0", ent, indicator, state);
  5044.     }
  5045. }
  5046.  
  5047. function SpamProt() {
  5048.     keyTimePressed = API.getGlobalTime();
  5049. }
  5050.  
  5051. function pickedColor(r, g, b) {
  5052.     API.showCursor(false);
  5053.     if (menuIdx == MENU_IDX_SHOW_VEHICLE_SHOP) {
  5054.         API.triggerServerEvent("selectedBuyVehicleColor", r, g, b);
  5055.     } else {
  5056.         API.triggerServerEvent("selectedNeonColor", r, g, b);
  5057.     }
  5058.  
  5059.     CloseBrowser();
  5060. }
  5061.  
  5062. function closeBrowser(r, g, b) {
  5063.     CloseBrowser();
  5064. }
  5065.  
  5066. function pickedVehicle(vehicle) {
  5067.     API.triggerServerEvent("selectedVehicleFromShop", vehicle);
  5068.     CloseBrowser();
  5069.     browser = new Cef("colorpicker", colorpickerUrl);
  5070.     browser.load();
  5071.     API.showCursor(true);
  5072.     API.setChatVisible(true);
  5073. }
  5074.  
  5075. function Login(user, pass) {
  5076.     API.triggerServerEvent("authenticatePlayer", user, pass);
  5077. }
  5078. function CommitQuestions(answers, count) {
  5079.     CloseBrowser();
  5080.     API.setChatVisible(true);
  5081.     API.triggerServerEvent("commitedQuestions", answers, count);
  5082. }
  5083.  
  5084. function debugBrowser(param1) {
  5085.     API.displaySubtitle(param1);
  5086.     API.triggerServerEvent("debug", param1);
  5087. }
  5088.  
  5089. API.onEntityStreamIn.connect(function (entity, entType) {
  5090.     if (entType == 1) {
  5091.         if (getEntityData(entity, "indicator_left")) {
  5092.             setVehicleIndicatorState(entity, 1, true);
  5093.         }
  5094.  
  5095.         if (getEntityData(entity, "indicator_right")) {
  5096.             setVehicleIndicatorState(entity, 0, true);
  5097.         }
  5098.  
  5099.         if (entType == 6 || entType == 8) {// Player or ped
  5100.             setPedCharacter(ent);
  5101.         }
  5102.     }
  5103. });
  5104.  
  5105. function unfreezeBus() {
  5106.     API.triggerServerEvent("unfreezeBus");
  5107. }
  5108.  
  5109. API.onServerEventTrigger.connect(function (eventName, args) {
  5110.     if (eventName === "unfreezeBus") {
  5111.         API.triggerServerEvent("unfreezeBus");
  5112.     }
  5113.     else if (eventName == "UPDATE_CHARACTER") {
  5114.         setPedCharacter(args[0]);
  5115.     }
  5116.     else if (eventName === "playerConnect") {
  5117.         if (!connected) {
  5118.             var dashound = args[0];
  5119.             var markers = args[1];
  5120.             var markerNames = args[2];
  5121.             var markerCount = args[3];
  5122.             var dir = new Vector3(0, 0, 0);
  5123.             var rot = new Vector3(0, 0, 0);
  5124.             var scale = new Vector3(1, 1, 1);
  5125.  
  5126.             //API.triggerServerEvent("debug", markerCount);
  5127.  
  5128.             /* NOTE (Caupo 02.01.2017): Testimiseks loodud code snippet, mis tekitab dollari ikooni Grove streedi ringi sisse.
  5129.        
  5130.             var pos = new Vector3(103.8651, -1940.405, 20.8037);
  5131.             var dir = new Vector3(0, 0, 0);
  5132.             var rot = new Vector3(0, 0, 0);
  5133.             var scale = new Vector3(1, 1, 1);
  5134.             API.createMarker(29, pos, dir, rot, scale, 0, 187, 21, 59);
  5135.             */
  5136.  
  5137.             // Markeri tüübid: https://wiki.gtanet.work/index.php?title=Marker
  5138.             //API.createMarker(29, dashound, dir, rot, scale, 255, 59, 187, 128);
  5139.             //API.triggerServerEvent("debug", markerCount);
  5140.  
  5141.             for (var i = 0; i < markerCount; i++) {
  5142.                 if (markers[i] !== undefined && markers[i] !== null) {
  5143.                     if (markerNames[i] !== undefined) {
  5144.                         var seeThrough = false;
  5145.                         var fontsize = 0.75;
  5146.                         if (markerNames[i] != "Keegi ketamiini ei taha osta?") {
  5147.                             seeThrough = true;
  5148.                             fontsize = 1;
  5149.                             API.createMarker(0, markers[i], dir, rot, scale, 71, 104, 44, 128);
  5150.                             API.createTextLabel(markerNames[i], markers[i], 20.0, fontsize, seeThrough);
  5151.                         }
  5152.                         else if (markerNames[i] != "") {
  5153.                             API.createTextLabel(markerNames[i], markers[i], 20.0, fontsize, seeThrough);
  5154.                         }
  5155.                     }
  5156.                 }
  5157.             }
  5158.             API.triggerServerEvent("playerGotConnected");
  5159.         }
  5160.         connected = true;
  5161.     }
  5162.     else if (eventName === "setNextCheckpoint") {
  5163.         var newPos = args[0];
  5164.         var isFinishLine = args[1];
  5165.         var newDir;
  5166.         var playSound = args[2];
  5167.         var secondNextBlip;
  5168.  
  5169.         if (!isFinishLine) {
  5170.             newDir = args[3];
  5171.             secondNextBlip = args[4];
  5172.         }
  5173.  
  5174.         if (playSound) {
  5175.             API.playSoundFrontEnd("HUD_MINI_GAME_SOUNDSET", "CHECKPOINT_NORMAL");
  5176.         }
  5177.  
  5178.         if (primaryBlip == null) {
  5179.             primaryBlip = API.createBlip(newPos);
  5180.             API.setBlipColor(primaryBlip, 66);
  5181.         } else {
  5182.             API.setBlipPosition(primaryBlip, newPos);
  5183.         }
  5184.         if (locationBlip != null) {
  5185.             API.deleteEntity(locationBlip);
  5186.         }
  5187.         API.setBlipRouteVisible(primaryBlip, true);
  5188.         API.setBlipRouteColor(primaryBlip, 81);
  5189.  
  5190.         if (nextCheckpointMarker == null) {
  5191.             nextCheckpointMarker = API.createMarker(1, newPos, new Vector3(), new Vector3(), new Vector3(5, 5, 2), 239, 189, 7, 180);
  5192.         } else {
  5193.             API.deleteEntity(nextCheckpointMarker);
  5194.             nextCheckpointMarker = API.createMarker(1, newPos, new Vector3(), new Vector3(), new Vector3(5, 5, 2), 239, 189, 7, 180);
  5195.         }
  5196.  
  5197.         if (!isFinishLine) {
  5198.             /*if (nextCheckpointDir == null) {
  5199.                 nextCheckpointDir = API.createMarker(20, new Vector3(newPos.X, newPos.Y, newPos.Z + 2), newDir, new Vector3(0, 0, 0), new Vector3(0, 0, 0), 87, 193, 250, 100);
  5200.             } else {
  5201.                 API.deleteEntity(nextCheckpointDir);
  5202.                 nextCheckpointDir = API.createMarker(20, new Vector3(newPos.X, newPos.Y, newPos.Z + 2), newDir, new Vector3(0, 0, 0), new Vector3(0, 0, 0), 87, 193, 250, 100);
  5203.             }*/
  5204.  
  5205.             if (secondBlip == null) {
  5206.                 secondBlip = API.createBlip(secondNextBlip);
  5207.                 API.setBlipColor(secondBlip, 66);
  5208.                 API.setBlipScale(secondBlip, 0.6);
  5209.             } else {
  5210.                 API.setBlipPosition(secondBlip, secondNextBlip);
  5211.             }
  5212.         }
  5213.  
  5214.         if (isFinishLine && nextCheckpointDir != null) {
  5215.             API.deleteEntity(nextCheckpointDir);
  5216.             nextCheckpointDir = null;
  5217.         }
  5218.  
  5219.         if (isFinishLine && secondBlip != null) {
  5220.             API.deleteEntity(secondBlip);
  5221.             secondBlip = null;
  5222.         }
  5223.     }
  5224.     else if (eventName === "finishRace") {
  5225.         API.playSoundFrontEnd("HUD_MINI_GAME_SOUNDSET", "CHECKPOINT_NORMAL");
  5226.         if (args[0].length > 0) {
  5227.             API.showShard(args[0]);
  5228.         }
  5229.         noAccelereationPos = null;
  5230.  
  5231.         if (primaryBlip != null) {
  5232.             API.deleteEntity(primaryBlip);
  5233.             primaryBlip = null;
  5234.         }
  5235.  
  5236.         if (secondBlip != null) {
  5237.             API.deleteEntity(secondBlip);
  5238.             secondBlip = null;
  5239.         }
  5240.  
  5241.         if (nextCheckpointMarker != null) {
  5242.             API.deleteEntity(nextCheckpointMarker);
  5243.             nextCheckpointMarker = null;
  5244.         }
  5245.  
  5246.         if (nextCheckpointDir != null) {
  5247.             API.deleteEntity(nextCheckpointDir);
  5248.             nextCheckpointDir = null;
  5249.         }
  5250.         racePosition = null;
  5251.     }
  5252.     else if (eventName == "openMenu") {
  5253.         API.showCursor(true);
  5254.         g_menu.Visible = true;
  5255.     }
  5256.     else if (eventName == "UpdateMoneyLabel") {
  5257.         currentMoney = args[0];
  5258.         food = args[1];
  5259.     }
  5260.     else if (eventName == "UpdateFuelLabel") {
  5261.         currentFuel = args[0];
  5262.         currentFuel = Math.round(currentFuel);
  5263.         vehicleOctane = args[1];
  5264.         currentOctane = args[2];
  5265.     }
  5266.     else if (eventName == "UpdateFoodLabel") {
  5267.         food = args[0];
  5268.     }
  5269.     else if (eventName == "showBuildingMenu") {
  5270.         menuIdx = MENU_IDX_SHOP;
  5271.         menu.Clear();
  5272.  
  5273.         var itemNames = args[0];
  5274.         var itemPrices = args[1];
  5275.         var itemCount = args[2];
  5276.         actionType = args[3];
  5277.  
  5278.         for (var i = 0; i < itemCount; i++) {
  5279.             menu.AddItem(API.createMenuItem(itemNames[i], "$ " + itemPrices[i]));
  5280.         }
  5281.  
  5282.         menu.Visible = true;
  5283.     }
  5284.     else if (eventName == "showATM") {
  5285.         var moneyOnBankaccount = args[0];
  5286.         menuIdx = MENU_IDX_ATM;
  5287.         menu.Clear();
  5288.  
  5289.         menu.AddItem(API.createMenuItem("Raha kontol: $" + moneyOnBankaccount, ""));
  5290.         menu.AddItem(API.createMenuItem("Sisesta raha panka", "Valides, sisesta summa, mida soovid panka panna"));
  5291.         menu.AddItem(API.createMenuItem("Võta raha pangast", "Valides, sisesta summa, mida soovid pangast võtta"));
  5292.         menu.AddItem(API.createMenuItem("Vaheta PIN kood", "Valides, sisesta uus PIN"));
  5293.         menu.AddItem(API.createMenuItem("Ülekanne", "Valides, sisesta isiku nimi, seejärel summa"));
  5294.         //menu.AddItem(API.createMenuItem("Konto väljavõte", "[ENTER]")); // NOTE (Caupo 26.02.2017): Rahalogide vaatamine hakkab olema UCPs.
  5295.  
  5296.         menu.Visible = true;
  5297.     }
  5298.     else if (eventName == "showMenuComposeOptions") {
  5299.         menuIdx = MENU_IDX_COMPOSE_MENU_OPTIONS;
  5300.         menu.Clear();
  5301.  
  5302.         menu.AddItem(API.createMenuItem("~g~Lisa", "[ENTER]"));
  5303.         menu.AddItem(API.createMenuItem("~y~Muuda", "[ENTER]"));
  5304.         menu.AddItem(API.createMenuItem("~r~Eemalda", "[ENTER]"));
  5305.         menu.Visible = true;
  5306.     }
  5307.     else if (eventName == "showMenuComposeChooseItem") {
  5308.         menuIdx = MENU_IDX_COMPOSE_MENU_CHOOSE_ITEM;
  5309.         menu.Clear();
  5310.  
  5311.         var itemNames = args[0];
  5312.         var itemCount = args[1];
  5313.  
  5314.         for (var i = 0; i < itemCount; i++) {
  5315.             menu.AddItem(API.createMenuItem(itemNames[i], "Valimiseks vajuta ~g~[ENTER]"));
  5316.         }
  5317.  
  5318.         menu.Visible = true;
  5319.     }
  5320.     else if (eventName == "askItemPrice") {
  5321.         var minPrice = args[0];
  5322.         var maxPrice = args[1];
  5323.  
  5324.         userInputMsg = "Hinnavahemik $" + minPrice + "-" + maxPrice;
  5325.         inputIdx = INPUT_IDX_INSERT_PRODUCT_PRICE;
  5326.         userInput = API.getUserInput("", 8);
  5327.         API.triggerServerEvent("menuItemPrice", userInput);
  5328.     }
  5329.     else if (eventName == "setMinAndMaxPrice") {
  5330.         productMinPrice = args[0];
  5331.         productMaxPrice = args[1];
  5332.     }
  5333.     else if (eventName == "showGasstationMenu") {
  5334.         menuIdx = MENU_IDX_GASSTATION_MENU;
  5335.         menu.Clear();
  5336.         canFuel = args[0];
  5337.  
  5338.         menu.AddItem(API.createMenuItem("87 ~b~Regular ~y~$3", "Valides sisesta kütuse kogus"));
  5339.         menu.AddItem(API.createMenuItem("90 ~b~Midgrade ~y~$4", "Valides sisesta kütuse kogus"));
  5340.         menu.AddItem(API.createMenuItem("94 ~b~Premium ~y~$5", "Valides sisesta kütuse kogus"));
  5341.         menu.AddItem(API.createMenuItem("D ~b~Diisel ~y~$4", "Valides sisesta kütuse kogus"));
  5342.  
  5343.         menu.Visible = true;
  5344.     }
  5345.     else if (eventName == "showPlayerInventory") {
  5346.         menuIdx = MENU_IDX_INVENTORY;
  5347.         menu.Clear();
  5348.  
  5349.         var itemNames = args[0];
  5350.         var itemAmounts = args[1];
  5351.         var itemWeights = args[5];
  5352.         var itemCount = args[2];
  5353.         givingTo = args[3];
  5354.         dropping = args[4];
  5355.  
  5356.         for (var i = 0; i < itemCount; i++) {
  5357.             menu.AddItem(API.createMenuItem(itemNames[i] + "~b~(" + itemAmounts[i] + "tk / ~g~" + itemWeights[i] + "~b~)", "Valimiseks vajuta ~g~[ENTER]"));
  5358.         }
  5359.  
  5360.         menu.Visible = true;
  5361.     }
  5362.     else if (eventName == "showOtherPlayerInventory") {
  5363.         menuIdx = MENU_IDX_INVENTORY_SEARCH;
  5364.         menu.Clear();
  5365.  
  5366.         var itemNames = args[0];
  5367.         var itemAmounts = args[1];
  5368.         var itemWeights = args[5];
  5369.         var itemCount = args[2];
  5370.         givingTo = args[3];
  5371.         dropping = args[4];
  5372.  
  5373.         for (var i = 0; i < itemCount; i++) {
  5374.             menu.AddItem(API.createMenuItem(itemNames[i] + "~b~(" + itemAmounts[i] + "tk / ~g~" + itemWeights[i] + "~b~)", "Valimiseks vajuta ~g~[ENTER]"));
  5375.         }
  5376.  
  5377.         menu.Visible = true;
  5378.     }
  5379.     else if (eventName == "ATMTransactionGetSum") {
  5380.         var sumInBank = args[0];
  5381.         userInputMsg = "Sisesta summa, mida soovid saata. Sul on: $" + sumInBank;
  5382.         inputIdx = INPUT_IDX_INSERT_TRANSACTION_SUM;
  5383.         userInput = API.getUserInput("", 8);
  5384.         API.triggerServerEvent("ATMTransactionSendSum", userInput);
  5385.     }
  5386.     else if (eventName == "vehMenu") {
  5387.         var IDs = args[0];
  5388.         var modelNames = args[1];
  5389.         var registrantNames = args[2];
  5390.         var count = args[3];
  5391.         menuIdx = MENU_IDX_VEHICLE_SELECTION;
  5392.         menu.Clear();
  5393.  
  5394.         for (var i = 0; i < count; i++) {
  5395.             menu.AddItem(API.createMenuItem(IDs[i] + " " + modelNames[i] + registrantNames[i], "Valimiseks vajuta ~g~[ENTER]"));
  5396.         }
  5397.         menu.Visible = true;
  5398.     }
  5399.     else if (eventName == "makeVehKeysMenu") {
  5400.         var IDs = args[0];
  5401.         var modelNames = args[1];
  5402.         var count = args[2];
  5403.         menuIdx = MENU_IDX_MAKE_VEHICLE_KEYS;
  5404.         menu.Clear();
  5405.  
  5406.         for (var i = 0; i < count; i++) {
  5407.             menu.AddItem(API.createMenuItem(IDs[i] + " " + modelNames[i], "Valimiseks vajuta ~g~[ENTER]"));
  5408.         }
  5409.         menu.Visible = true;
  5410.     }
  5411.     else if (eventName == "showPhoneMenu") {
  5412.         menuIdx = MENU_IDX_PHONE;
  5413.         menu.Clear();
  5414.  
  5415.         menu.AddItem(API.createMenuItem("~g~Helista", "Valides sisesta number"));
  5416.         menu.AddItem(API.createMenuItem("~y~SMS", "Valides sisesta number seejärel sõnum"));
  5417.         menu.AddItem(API.createMenuItem("~b~Kontaktid", "Valimiseks vajuta ~g~[ENTER]"));
  5418.         menu.AddItem(API.createMenuItem("~q~Sissetulnud SMSid", "Valimiseks vajuta ~g~[ENTER]"));
  5419.         menu.AddItem(API.createMenuItem("~q~Saadetud SMSid", "Valimiseks vajuta ~g~[ENTER]"));
  5420.         menu.AddItem(API.createMenuItem("Sinu number: " + args[0], "Valimiseks vajuta ~g~[ENTER]"));
  5421.  
  5422.         menu.Visible = true;
  5423.     }
  5424.     else if (eventName == "showPhoneSelectionMenu") {
  5425.         var phonenumbers = args[0];
  5426.         var count = args[1];
  5427.  
  5428.         menuIdx = MENU_IDX_PHONE_SELECTION;
  5429.         menu.Clear();
  5430.  
  5431.         for (var i = 0; i < count; i++) {
  5432.             menu.AddItem(API.createMenuItem(phonenumbers[i], "Valimiseks vajuta ~g~[ENTER]"));
  5433.         }
  5434.         menu.Visible = true;
  5435.     }
  5436.     else if (eventName == "showPhoneSelectionMenuCommercial") {
  5437.         var phonenumbers = args[0];
  5438.         var count = args[1];
  5439.  
  5440.         menuIdx = MENU_IDX_PHONE_SELECTION_COMMERCIAL;
  5441.         menu.Clear();
  5442.  
  5443.         for (var i = 0; i < count; i++) {
  5444.             menu.AddItem(API.createMenuItem(phonenumbers[i], "Valimiseks vajuta ~g~[ENTER]"));
  5445.         }
  5446.         menu.Visible = true;
  5447.     }
  5448.     else if (eventName == "showContacts") {
  5449.         var numbers = args[0];
  5450.         var names = args[1];
  5451.         var count = args[2];
  5452.  
  5453.         menuIdx = MENU_IDX_CONTACT_SELECTION;
  5454.         menu.Clear();
  5455.  
  5456.         menu.AddItem(API.createMenuItem("~g~Lisa kontakt", "Esimesse lahtri sisesta nimi, teisse number"));
  5457.         for (var i = 0; i < count; i++) {
  5458.             menu.AddItem(API.createMenuItem(names[i] + " ~b~(" + numbers[i] + ")", "Valimiseks vajuta ~g~[ENTER]"));
  5459.         }
  5460.         menu.Visible = true;
  5461.     }
  5462.     else if (eventName == "showIncomingSMS" || eventName == "showSentSMS") {
  5463.         var numbers = args[0];
  5464.         var content = args[1];
  5465.         var count = args[2];
  5466.  
  5467.         menuIdx = MENU_IDX_SMS_SELECTION;
  5468.         menu.Clear();
  5469.  
  5470.         for (var i = 0; i < count; i++) {
  5471.             menu.AddItem(API.createMenuItem(numbers[i] + " ~b~(" + content[i] + ")", "Valimiseks vajuta ~g~[ENTER]"));
  5472.         }
  5473.         menu.Visible = true;
  5474.     }
  5475.     else if (eventName == "getSMSContent") {
  5476.         userInputMsg = "Sisesta SMSi sisu:";
  5477.         inputIdx = INPUT_IDX_INSERT_SMS_CONTENT;
  5478.         userInput = API.getUserInput("", SMS_MAX_LENGTH);
  5479.         API.triggerServerEvent("sendSMS", userInput);
  5480.     }
  5481.     else if (eventName == "insertPhonenumber") {
  5482.         userInputMsg = "Sisesta number kellele helistada";
  5483.         inputIdx = INPUT_IDX_INSERT_CALL_NUMBER;
  5484.         userInput = API.getUserInput("", 10);
  5485.         API.triggerServerEvent("phoneCalling", userInput);
  5486.     }
  5487.     else if (eventName == "insertSMSPhonenumber") {
  5488.         userInputMsg = "Sisesta number kellele SMS saata";
  5489.         inputIdx = INPUT_IDX_INSERT_SMS_NUMBER_TO_SEND;
  5490.         userInput = API.getUserInput("", 10);
  5491.         API.triggerServerEvent("phoneSMS", userInput);
  5492.     }
  5493.     else if (eventName == "chooseContactOption") {
  5494.         var name = args[0];
  5495.         var number = args[1];
  5496.  
  5497.         menuIdx = MENU_IDX_CHOOSE_CONTACT_OPTION;
  5498.         menu.Clear();
  5499.  
  5500.         menu.AddItem(API.createMenuItem("~g~Helista", "Valimiseks vajuta ~g~[ENTER]"));
  5501.         menu.AddItem(API.createMenuItem("~b~SMS", "Valimiseks vajuta ~g~[ENTER]"));
  5502.         menu.AddItem(API.createMenuItem("~y~Muuda nime", "Valimiseks vajuta ~g~[ENTER]"));
  5503.         menu.AddItem(API.createMenuItem("~y~Muuda number", "Valimiseks vajuta ~g~[ENTER]"));
  5504.         menu.AddItem(API.createMenuItem("~y~Kustuta kontakt", "Valimiseks vajuta ~g~[ENTER]"));
  5505.         menu.Visible = true;
  5506.     }
  5507.     else if (eventName == "askNewContactNumber") {
  5508.         userInputMsg = "Sisesta number uuele kontaktile:";
  5509.         inputIdx = INPUT_IDX_INSERT_CONTACT_NUMBER;
  5510.         userInput = API.getUserInput("", CONTACT_MAX_LENGTH);
  5511.         API.triggerServerEvent("newContactNumberSelected", userInput);
  5512.     }
  5513.     else if (eventName == "locationMenu") {
  5514.         menuIdx = MENU_IDX_LOCATIONS;
  5515.         locations = args[0];
  5516.         if (menu == null) {
  5517.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  5518.         }
  5519.         menu.Clear();
  5520.  
  5521.         menu.AddItem(API.createMenuItem("~b~Politsei", "Valimiseks vajuta ~g~[ENTER]"));
  5522.         menu.AddItem(API.createMenuItem("~r~Haigla", "Valimiseks vajuta ~g~[ENTER]"));
  5523.         menu.AddItem(API.createMenuItem("~y~Taksopark", "Valimiseks vajuta ~g~[ENTER]"));
  5524.         menu.AddItem(API.createMenuItem("~g~Mehaanikud", "Valimiseks vajuta ~g~[ENTER]"));
  5525.         menu.AddItem(API.createMenuItem("Sõiduki mustturg (drop)", "Valimiseks vajuta ~g~[ENTER]"));
  5526.  
  5527.         menu.AddItem(API.createMenuItem("~g~Meedia", "Valimiseks vajuta ~g~[ENTER]"));
  5528.         menu.AddItem(API.createMenuItem("~b~Sõidukipood", "Valimiseks vajuta ~g~[ENTER]"));
  5529.         menu.AddItem(API.createMenuItem("~o~Kulleri töö", "Valimiseks vajuta ~g~[ENTER]"));
  5530.         menu.AddItem(API.createMenuItem("~o~Bussijuhi töö", "Valimiseks vajuta ~g~[ENTER]"));
  5531.         menu.AddItem(API.createMenuItem("~o~Autovarga töö", "Valimiseks vajuta ~g~[ENTER]"));
  5532.  
  5533.         menu.AddItem(API.createMenuItem("~y~Lähim ATM", "Valimiseks vajuta ~g~[ENTER]"));
  5534.         menu.AddItem(API.createMenuItem("~y~Lähim pood", "Valimiseks vajuta ~g~[ENTER]"));
  5535.         menu.AddItem(API.createMenuItem("~y~Lähim ehitusmarket", "Valimiseks vajuta ~g~[ENTER]"));
  5536.         menu.AddItem(API.createMenuItem("~y~Lähim tankla", "Valimiseks vajuta ~g~[ENTER]"));
  5537.         menu.AddItem(API.createMenuItem("Pank", "Valimiseks vajuta [ENTER]"));
  5538.         menu.AddItem(API.createMenuItem("~o~Prügivedaja töö", "Valimiseks vajuta ~g~[ENTER]"));
  5539.         menu.AddItem(API.createMenuItem("~y~Lähim pandimaja", "Valimiseks vajuta ~g~[ENTER]"));
  5540.         menu.AddItem(API.createMenuItem("~y~Lähim riidepood", "Valimiseks vajuta ~g~[ENTER]"));
  5541.         menu.AddItem(API.createMenuItem("~y~Lähim kalastuskoht", "Valimiseks vajuta ~g~[ENTER]"));
  5542.         menu.AddItem(API.createMenuItem("~b~ARK", "Valimiseks vajuta [ENTER]"));
  5543.         menu.AddItem(API.createMenuItem("~g~Kalaturg", "Valimiseks vajuta ~g~[ENTER]"));
  5544.         menu.AddItem(API.createMenuItem("~r~Lähim romula", "Valimiseks vajuta ~g~[ENTER]"));
  5545.         menu.AddItem(API.createMenuItem("~y~Lähim bussipeatus", "Valimiseks vajuta ~g~[ENTER]"));
  5546.  
  5547.         menu.CurrentSelection = 0;
  5548.         menu.Visible = true;
  5549.     }
  5550.     else if (eventName == "selectVehicleColor") {
  5551.         menuIdx = MENU_IDX_SELECT_VEHICLE_COLOR;
  5552.         menu.Clear();
  5553.         var colorNames = args[0];
  5554.         var colorCount = args[1];
  5555.  
  5556.         for (var i = 0; i < colorCount; i++) {
  5557.             menu.AddItem(API.createMenuItem(colorNames[i], "Valimiseks vajuta ~g~[ENTER]"));
  5558.         }
  5559.         menu.CurrentSelection = 0;
  5560.         menu.Visible = true;
  5561.     }
  5562.     else if (eventName == "selectGroupVehicle") {
  5563.         menuIdx = MENU_IDX_SELECT_GROUP_VEHICLE;
  5564.         menu.Clear();
  5565.         var vehicleNames = args[0];
  5566.         var vehicleCount = args[1];
  5567.  
  5568.         for (var i = 0; i < vehicleCount; i++) {
  5569.             menu.AddItem(API.createMenuItem(vehicleNames[i], "Valimiseks vajuta ~g~[ENTER]"));
  5570.         }
  5571.         menu.Visible = true;
  5572.     }
  5573.     else if (eventName == "selectVehicleWheels") {
  5574.         menuIdx = MENU_IDX_SELECT_VEHICLE_WHEELS;
  5575.         menu.Clear();
  5576.         var wheelNames = args[0];
  5577.         var wheelCount = args[1];
  5578.  
  5579.         for (var i = 0; i < wheelCount; i++) {
  5580.             menu.AddItem(API.createMenuItem(wheelNames[i], "Valimiseks vajuta ~g~[ENTER]"));
  5581.         }
  5582.         menu.Visible = true;
  5583.     }
  5584.     else if (eventName == "selectVehicleNeonColor") {
  5585.         menuIdx = MENU_IDX_SELECT_VEHICLE_NEON_COLOR;
  5586.  
  5587.         res = API.getScreenResolution();
  5588.         browser = API.createCefBrowser(res.Width, res.Height, true);
  5589.         API.waitUntilCefBrowserInit(browser);
  5590.         API.setCefBrowserPosition(browser, 0, 0);
  5591.         API.loadPageCefBrowser(browser, colorpickerUrl);
  5592.         API.showCursor(true);
  5593.     }
  5594.     else if (eventName == "showBlip") {
  5595.         var _location = args[0];
  5596.         if (locationBlip != null) {
  5597.             API.deleteEntity(locationBlip);
  5598.         }
  5599.         if (mainBlip != null) {
  5600.             API.deleteEntity(mainBlip);
  5601.             mainBlip = null;
  5602.         }
  5603.         locationBlip = API.createBlip(_location);
  5604.         API.setBlipRouteVisible(locationBlip, true);
  5605.         API.setBlipRouteColor(locationBlip, 69);
  5606.         API.setBlipColor(locationBlip, 2);
  5607.     }
  5608.     else if (eventName == "showVehicleShop") {
  5609.         var resolution = API.getScreenResolution();
  5610.         browser = API.createCefBrowser(resolution.Width, resolution.Height, true);
  5611.         API.waitUntilCefBrowserInit(browser);
  5612.  
  5613.         API.setChatVisible(false);
  5614.         API.setCefBrowserPosition(browser, 0, 0);
  5615.         API.loadPageCefBrowser(browser, vehicleshopUrl);
  5616.         API.showCursor(true);
  5617.  
  5618.         //API.triggerServerEvent("debug", args[0].length+" asd");
  5619.         browser.call("replacePrices", args[0], args[1], args[2], args[3], args[4]);
  5620.         menuIdx = MENU_IDX_SHOW_VEHICLE_SHOP;
  5621.     }
  5622.     else if (eventName == "loginResponse") {
  5623.         loginMsg = args[0];
  5624.         loginState = args[1];
  5625.  
  5626.         if (loginState == LOGIN_STATE_SUCCESS) {
  5627.             CloseBrowser();
  5628.             API.setChatVisible(true);
  5629.             loggedIn = true;
  5630.         }
  5631.         else if (loginState != LOGIN_STATE_WRONG_USERNAME_OR_PASSWORD) {
  5632.             CloseBrowser();
  5633.             kickMeDelayed = true;
  5634.         }
  5635.  
  5636.         loginMsgTimeAppeared = API.getGlobalTime();
  5637.     }
  5638.     else if (eventName == "playConfirmSound") {
  5639.         API.playSoundFrontEnd("OK", "HUD_FRONTEND_DEFAULT_SOUNDSET");
  5640.     }
  5641.     else if (eventName == "firstTimeWardrobe") {
  5642.         ShowFirstTimeWardrobe(skinList);
  5643.     }
  5644.     else if (eventName == "firstTimeWardrobeTexture") {
  5645.         ShowFirstTimeWardrobeTextures();
  5646.     }
  5647.     else if (eventName == "setCameraTo") {
  5648.         var cameraPos = args[0];
  5649.         var cameraRot = args[1];
  5650.         globalCameraRot = cameraRot;
  5651.  
  5652.         var cameraOffset = null;
  5653.  
  5654.         if (camera == null) {
  5655.             camera = API.createCamera(cameraPos, cameraRot);
  5656.         }
  5657.  
  5658.         API.setCameraPosition(camera, cameraPos);
  5659.         API.setCameraRotation(camera, cameraRot);
  5660.  
  5661.         freewill = args[2];
  5662.  
  5663.         if (freewill) {
  5664.             skinList = args[6];
  5665.             skinListCount = args[7];
  5666.             debugCefLoading = 0;
  5667.             cameraOffset = args[3];
  5668.             customizationCharOriginalPos = args[4];
  5669.             isInClotheShop = args[5];
  5670.             //API.pointCameraAtEntity(camera, player, cameraOffset);
  5671.  
  5672.             if(isInClotheShop == 0 || isInClotheShop == 1) {
  5673.                 if(args[8] == "mees") {
  5674.                     ShowClothingShopMale();
  5675.                 } else {
  5676.                     ShowClothingShopFemale();
  5677.                 }
  5678.                 //ShowFirstTimeWardrobe(skinList);
  5679.             } else if(isInClotheShop == 2) {
  5680.                 ShowTattooMenu();
  5681.                 //ShowFirstTimeWardrobe(skinList);
  5682.             }
  5683.         }
  5684.         API.setActiveCamera(camera);
  5685.     }
  5686.     else if (eventName == "enableChat") {
  5687.         API.setChatVisible(true);
  5688.         API.setHudVisible(true);
  5689.         API.setActiveCamera(null);
  5690.         debugCefLoading = 0;
  5691.         API.setGameplayCameraActive();
  5692.  
  5693.         if (browser != null) {
  5694.             CloseBrowser();
  5695.         }
  5696.     }
  5697.     else if (eventName == "sellPlayerInventory") {
  5698.         menuIdx = MENU_IDX_PAWNSHOP;
  5699.         menu.Clear();
  5700.  
  5701.         var itemNames = args[0];
  5702.         var itemAmounts = args[1];
  5703.         var itemCount = args[2];
  5704.  
  5705.         for (var i = 0; i < itemCount; i++) {
  5706.             menu.AddItem(API.createMenuItem(itemNames[i] + "(" + itemAmounts[i] + ")", "Valimiseks vajuta [ENTER]"));
  5707.         }
  5708.  
  5709.         menu.Visible = true;
  5710.     }
  5711.     else if (eventName == "showGroupGPS") {
  5712.         var positions = args[0];
  5713.         var positionCount = args[1];
  5714.  
  5715.         groupGpsMarkerColorIDX++;
  5716.         if (groupGpsMarkerColorIDX >= 3) {
  5717.             groupGpsMarkerColorIDX = 0;
  5718.         }
  5719.  
  5720.         for (var i = 0; i < MAX_GPS_MARKERS; i++) {
  5721.             if (typeof groupGpsMarkers[i] !== 'undefined') {
  5722.                 API.deleteEntity(groupGpsMarkers[i]);
  5723.             }
  5724.         }
  5725.         groupGpsMarkers = [];
  5726.  
  5727.         for (var i = 0; i < positionCount; i++) {
  5728.             var groupBlip = API.createBlip(positions[i]);
  5729.             var color = 59;
  5730.             if (groupGpsMarkerColorIDX == 1) {
  5731.                 color = 45;
  5732.             } else if (groupGpsMarkerColorIDX == 2) {
  5733.                 color = 38;
  5734.             }
  5735.             API.setBlipColor(groupBlip, color);
  5736.             groupGpsMarkers.push(groupBlip);
  5737.         }
  5738.     }
  5739.     else if (eventName == "removeGroupGPS") {
  5740.         for (var i = 0; i < MAX_GPS_MARKERS; i++) {
  5741.             if (typeof groupGpsMarkers[i] !== 'undefined') {
  5742.                 API.deleteEntity(groupGpsMarkers[i]);
  5743.             }
  5744.         }
  5745.     }
  5746.     else if (eventName == "showBankOptions") {
  5747.         menuIdx = MENU_IDX_BANK;
  5748.         menu.Clear();
  5749.  
  5750.         menu.AddItem(API.createMenuItem("~g~Loo uus pangakaart", "Valides sisesta lahtri PIN kood"));
  5751.         menu.AddItem(API.createMenuItem("~r~Tühista pangakaart", "Valimiseks vajuta [ENTER]"));
  5752.         menu.AddItem(API.createMenuItem("~y~Vaata hoiulaekasse", "Valimiseks vajuta [ENTER]"));
  5753.  
  5754.         menu.Visible = true;
  5755.     }
  5756.     else if (eventName == "askBankcardPIN") {
  5757.         userInput = API.getUserInput("", 10);
  5758.         API.triggerServerEvent("checkBankcardPIN", userInput);
  5759.     }
  5760.     else if (eventName == "selectBankcard") {
  5761.         menuIdx = MENU_IDX_SELECT_BANKCARD;
  5762.         menu.Clear();
  5763.  
  5764.         var cards = args[0];
  5765.         var cardCount = args[1];
  5766.  
  5767.         for (var i = 0; i < cardCount; i++) {
  5768.             menu.AddItem(API.createMenuItem(cards[i], "Valimiseks vajuta [ENTER]"));
  5769.         }
  5770.  
  5771.         menu.Visible = true;
  5772.     }
  5773.     else if (eventName == "selectBankcardForCancel") {
  5774.         menuIdx = MENU_IDX_SELECT_BANKCARD_FOR_CANCEL;
  5775.         menu.Clear();
  5776.  
  5777.         var cards = args[0];
  5778.         var cardCount = args[1];
  5779.  
  5780.         for (var i = 0; i < cardCount; i++) {
  5781.             menu.AddItem(API.createMenuItem(cards[i], "Valimiseks vajuta [ENTER]"));
  5782.         }
  5783.  
  5784.         menu.Visible = true;
  5785.     }
  5786.     else if (eventName == "setBlipTo") {
  5787.         if (args[0] != null && args[0] !== null) {
  5788.             if (mainBlip == null) {
  5789.                 mainBlip = API.createBlip(args[0]);
  5790.                 API.setBlipColor(mainBlip, 2);
  5791.             } else {
  5792.                 API.setBlipPosition(mainBlip, args[0]);
  5793.             }
  5794.             if (locationBlip != null) {
  5795.                 API.deleteEntity(locationBlip);
  5796.             }
  5797.             API.setBlipRouteVisible(mainBlip, true);
  5798.             API.setBlipRouteColor(mainBlip, 69);
  5799.         }
  5800.     }
  5801.     else if (eventName == "setFishNetBlipTo") {
  5802.         if(args[1]) {
  5803.             if (args[0] != null && args[0] !== null) {
  5804.                 if (fishNetBlip1 == null) {
  5805.                     fishNetBlip1 = API.createBlip(args[0]);
  5806.                     API.setBlipColor(fishNetBlip1, 38);
  5807.                 } else {
  5808.                     API.setBlipPosition(fishNetBlip1, args[0]);
  5809.                 }
  5810.                 API.setBlipRouteVisible(fishNetBlip1, true);
  5811.                 API.setBlipRouteColor(fishNetBlip1, 38);
  5812.             }
  5813.         } else {
  5814.             if (args[0] != null && args[0] !== null) {
  5815.                 if (fishNetBlip2 == null) {
  5816.                     fishNetBlip2 = API.createBlip(args[0]);
  5817.                     API.setBlipColor(fishNetBlip2, 38);
  5818.                 } else {
  5819.                     API.setBlipPosition(fishNetBlip2, args[0]);
  5820.                 }
  5821.                 API.setBlipRouteVisible(fishNetBlip2, true);
  5822.                 API.setBlipRouteColor(fishNetBlip2, 38);
  5823.             }
  5824.         }
  5825.     }
  5826.     else if (eventName == "recieveSettings") {
  5827.         setting_font = args[0];
  5828.         setting_font_size_input = args[1];
  5829.         setting_hud_height = args[2];
  5830.         setting_hud_width = args[3];
  5831.         setting_show_speed = args[4];
  5832.         setting_show_vehicle_fuel = args[5];
  5833.         setting_show_vehicle_health = args[6];
  5834.         setting_speedometer_in_lower_hud = args[7];
  5835.         setting_update_speed = args[8];
  5836.  
  5837.         var _tempFontSize = setting_font_size_input;
  5838.         if (_tempFontSize == 0) {
  5839.             _tempFontSize = 1;
  5840.         }
  5841.         setting_font_size = (_tempFontSize * 0.5);
  5842.     }
  5843.     else if (eventName == "showSettings") {
  5844.         ShowSettings();
  5845.     }
  5846.     else if (eventName == "showSettingsNew") {
  5847.         ShowSettingsNew();
  5848.     }
  5849.     else if (eventName == "gotKilled") {
  5850.         //                    HASH                  player          dno  time   kuidagi seotud kas jalad vabad @ viimased 4
  5851.         deathTime = args[0];
  5852.         deathPos = args[1];
  5853.         hospitalCamPos = args[2];
  5854.         hospitalCamLookAt = args[3];
  5855.         hospitalRespawnPos = args[4];
  5856.         gotDead = true;
  5857.         API.after(5000, "AFTER_setToRagDoll", API.getLocalPlayer(), deathTime);
  5858.     }
  5859.     else if (eventName == "setToRagdoll") {
  5860.         //                    HASH                  player          dno  time   kuidagi seotud kas jalad vabad @ viimased 4
  5861.         API.callNative("SET_PED_TO_RAGDOLL", API.getLocalPlayer(), 4000, 6000, 0, 0, 0, 0);
  5862.     }
  5863.     else if (eventName == "setPlayerToRagdoll") {
  5864.         //                    HASH                  player          dno  time   kuidagi seotud kas jalad vabad @ viimased 4
  5865.         API.callNative("SET_PED_TO_RAGDOLL", args[0], 4000, 6000, 0, 0, 0, 0);
  5866.     }
  5867.     else if (eventName == "acceptedDeath") {
  5868.         acceptedDeath = true;
  5869.         pointAtHospital = true;
  5870.  
  5871.         if (camera == null) {
  5872.             camera = API.createCamera(hospitalCamPos, hospitalCamLookAt);
  5873.         }
  5874.  
  5875.         API.setCameraPosition(camera, hospitalCamPos);
  5876.         API.pointCameraAtPosition(camera, hospitalCamLookAt);
  5877.         API.setActiveCamera(camera);
  5878.     }
  5879.     else if (eventName == "setCameraToHospital") {
  5880.         hospitalCamPos = args[0];
  5881.         hospitalCamLookAt = args[1];
  5882.         acceptedDeath = true;
  5883.         pointAtHospital = true;
  5884.         gotDead = true;
  5885.  
  5886.         if (camera == null) {
  5887.             camera = API.createCamera(hospitalCamPos, hospitalCamLookAt);
  5888.         }
  5889.  
  5890.         API.setCameraPosition(camera, hospitalCamPos);
  5891.         API.pointCameraAtPosition(camera, hospitalCamLookAt);
  5892.         API.setActiveCamera(camera);
  5893.     }
  5894.     else if (eventName == "gotOutFromHospital") {
  5895.         acceptedDeath = null;
  5896.         pointAtHospital = null;
  5897.         gotDead = false;
  5898.         API.setGameplayCameraActive();
  5899.         currentHospitalTime = 0;
  5900.     }
  5901.     else if (eventName == "updateHospital") {
  5902.         currentHospitalTime = args[0];
  5903.     }
  5904.     else if (eventName == "updateJail") {
  5905.         currentJailTime = args[0];
  5906.     }
  5907.     else if (eventName == "updateAJail") {
  5908.         currentAJailTime = args[0];
  5909.     }
  5910.     else if (eventName == "askForConfiscationReason") {
  5911.         userInput = API.getUserInput("", 10);
  5912.         API.triggerServerEvent("confiscationReason", userInput);
  5913.     }
  5914.     else if (eventName == "gotCured") {
  5915.         acceptedDeath = null;
  5916.         pointAtHospital = null;
  5917.         gotDead = false;
  5918.         currentHospitalTime = 0;
  5919.         API.setGameplayCameraActive();
  5920.     }
  5921.     else if (eventName == "showConfiscatedVehicles") {
  5922.         menuIdx = MENU_IDX_CONFISCATED_VEHICLES;
  5923.         menu.Clear();
  5924.  
  5925.         var vehicleNames = args[0];
  5926.         var vehCount = args[1];
  5927.  
  5928.         for (var i = 0; i < vehCount; i++) {
  5929.             menu.AddItem(API.createMenuItem(vehicleNames[i], "Valimiseks vajuta [ENTER]"));
  5930.         }
  5931.  
  5932.         menu.Visible = true;
  5933.     }
  5934.     else if (eventName == "pullFish") {
  5935.         fishBtnArray = args[0];
  5936.         fishBtnCount = args[1];
  5937.         pullingFish = true;
  5938.         fishPullingCounter = 0;
  5939.         fishPullingStr = "~h~ ~w~";
  5940.         fishTimeLeft = 5;
  5941.  
  5942.         for (var i = 0; i < fishBtnCount; i++) {
  5943.             if (fishBtnArray[i] !== null) {
  5944.                 var btnName = "W";
  5945.                 if (fishBtnArray[i] == 1) {
  5946.                     btnName = "A";
  5947.                 } else if (fishBtnArray[i] == 2) {
  5948.                     btnName = "S";
  5949.                 } else if (fishBtnArray[i] == 3) {
  5950.                     btnName = "D";
  5951.                 }
  5952.                 fishPullingStr += btnName;
  5953.             }
  5954.         }
  5955.     }
  5956.     else if (eventName == "showFishMarket") {
  5957.         var fishNames = args[0];
  5958.         var fishCount = args[1];
  5959.  
  5960.         menuIdx = MENU_IDX_FISHMARKET;
  5961.         menu.Clear();
  5962.  
  5963.         for (var i = 0; i < fishCount; i++) {
  5964.             menu.AddItem(API.createMenuItem(fishNames[i], "Valimiseks vajuta [ENTER]"));
  5965.         }
  5966.  
  5967.         menu.Visible = true;
  5968.     }
  5969.     else if (eventName == "teleportlocationMenu") {
  5970.         menuIdx = MENU_IDX_TELEPORT_TO_LOCATION;
  5971.         tplocations = args[0];
  5972.         menu.Clear();
  5973.  
  5974.         menu.AddItem(API.createMenuItem("~b~Politsei", "Valimiseks vajuta [ENTER]"));
  5975.         menu.AddItem(API.createMenuItem("~r~Haigla", "Valimiseks vajuta [ENTER]"));
  5976.         menu.AddItem(API.createMenuItem("~y~Taksopark", "Valimiseks vajuta [ENTER]"));
  5977.         menu.AddItem(API.createMenuItem("~g~Mehaanikud", "Valimiseks vajuta [ENTER]"));
  5978.  
  5979.         menu.AddItem(API.createMenuItem("~g~Meedia", "Valimiseks vajuta [ENTER]"));
  5980.         menu.AddItem(API.createMenuItem("~b~Sõidukipood", "Valimiseks vajuta [ENTER]"));
  5981.         menu.AddItem(API.createMenuItem("~o~Kulleri töö", "Valimiseks vajuta [ENTER]"));
  5982.         menu.AddItem(API.createMenuItem("~o~Bussijuhi töö", "Valimiseks vajuta [ENTER]"));
  5983.         menu.AddItem(API.createMenuItem("~o~Autovarga töö", "Valimiseks vajuta [ENTER]"));
  5984.  
  5985.         menu.AddItem(API.createMenuItem("~y~Lähim ATM", "Valimiseks vajuta [ENTER]"));
  5986.         menu.AddItem(API.createMenuItem("~y~Lähim pood", "Valimiseks vajuta [ENTER]"));
  5987.         menu.AddItem(API.createMenuItem("~y~Lähim ehitusmarket", "Valimiseks vajuta [ENTER]"));
  5988.         menu.AddItem(API.createMenuItem("~y~Lähim tankla", "Valimiseks vajuta [ENTER]"));
  5989.         menu.AddItem(API.createMenuItem("Pank", "Valimiseks vajuta [ENTER]"));
  5990.         menu.AddItem(API.createMenuItem("~o~Prügivedaja töö", "Valimiseks vajuta [ENTER]"));
  5991.         menu.AddItem(API.createMenuItem("~b~ARK", "Valimiseks vajuta [ENTER]"));
  5992.         menu.AddItem(API.createMenuItem("~g~Kalaturg", "Valimiseks vajuta [ENTER]"));
  5993.         menu.AddItem(API.createMenuItem("~r~Lähim romula", "Valimiseks vajuta [ENTER]"));
  5994.         menu.CurrentSelection = 0;
  5995.         menu.Visible = true;
  5996.     }
  5997.     else if (eventName == "setClothCustomizationData") {
  5998.         clothHead = args[0];
  5999.         clothMask = args[1];
  6000.         clothHaircut = args[2];
  6001.         clothTorso = args[3];
  6002.         clothLegs = args[4];
  6003.         clothBags = args[5];
  6004.         clothFeet = args[6];
  6005.         clothAccessory = args[7];
  6006.         clothUndershirt = args[8];
  6007.         clothBodyArmour = args[9];
  6008.         clothDecals = args[10];
  6009.         clothTops = args[11];
  6010.         clothHats = args[12];
  6011.         clothGlasses = args[13];
  6012.         clothEars = args[14];
  6013.     }
  6014.     else if (eventName == "setTextureCustomizationData") {
  6015.         textureclothHead = args[0];
  6016.         textureclothMask = args[1];
  6017.         textureclothHaircut = args[2];
  6018.         textureclothTorso = args[3];
  6019.         textureclothLegs = args[4];
  6020.         textureclothBags = args[5];
  6021.         textureclothFeet = args[6];
  6022.         textureclothAccessory = args[7];
  6023.         textureclothUndershirt = args[8];
  6024.         textureclothBodyArmour = args[9];
  6025.         textureclothDecals = args[10];
  6026.         textureclothTops = args[11];
  6027.         textureclothHats = args[12];
  6028.         textureclothGlasses = args[13];
  6029.         textureclothEars = args[14];
  6030.     }
  6031.     else if (eventName == "setCustomizationData") {
  6032.         clothHead = args[0];
  6033.         clothMask = args[1];
  6034.         clothHaircut = args[2];
  6035.         clothTorso = args[3];
  6036.         clothLegs = args[4];
  6037.         clothBags = args[5];
  6038.         clothFeet = args[6];
  6039.         clothAccessory = args[7];
  6040.         clothUndershirt = args[8];
  6041.         clothBodyArmour = args[9];
  6042.         clothDecals = args[10];
  6043.         clothTops = args[11];
  6044.         clothHats = args[12];
  6045.         clothGlasses = args[13];
  6046.         clothEars = args[14];
  6047.  
  6048.         textureclothHead = args[15];
  6049.         textureclothMask = args[16];
  6050.         textureclothHaircut = args[17];
  6051.         textureclothTorso = args[18];
  6052.         textureclothLegs = args[19];
  6053.         textureclothBags = args[20];
  6054.         textureclothFeet = args[21];
  6055.         textureclothAccessory = args[22];
  6056.         textureclothUndershirt = args[23];
  6057.         textureclothBodyArmour = args[24];
  6058.         textureclothDecals = args[25];
  6059.         textureclothTops = args[26];
  6060.         textureclothHats = args[27];
  6061.         textureclothGlasses = args[28];
  6062.         textureclothEars = args[29];
  6063.  
  6064.         body_feature_shape1 = args[30];
  6065.         body_feature_shape2 = args[31];
  6066.         body_feature_shape_mix = args[32];
  6067.         body_feature_skin1 = args[33];
  6068.         body_feature_skin2 = args[34];
  6069.         body_feature_skin_mix = args[35];
  6070.         body_feature_hair_color = args[36];
  6071.         body_feature_hair_highlight_color = args[37];
  6072.         body_feature_eye_color = args[38];
  6073.         body_feature_eyebrows = args[39];
  6074.         body_feature_eyebrow_color1 = args[40];
  6075.         body_feature_eyebrow_color2 = args[41];
  6076.         body_feature_makeup = args[42];
  6077.         body_feature_makeup_color1 = args[43];
  6078.         body_feature_makeup_color2 = args[44];
  6079.         body_feature_lipstick = args[45];
  6080.         body_feature_lipstick_color1 = args[46];
  6081.         body_feature_lipstick_color2 = args[47];
  6082.         body_feature_face = [args[48], args[49], args[50], args[51], args[52], args[53], args[54], args[55], args[56], args[57], args[58], args[59], args[60], args[61], args[62], args[63], args[64], args[65], args[66], args[67], args[68]];
  6083.  
  6084.         for (var i = 0; i < 21; i++) {
  6085.             if (body_feature_face[i] == 0 || body_feature_face[i] == 0.0) {
  6086.                 body_feature_faceIdx[i] = maxBodySettings;
  6087.             } else {
  6088.                 body_feature_faceIdx[i] = Math.round((body_feature_face[i] * 10) + maxBodySettings);
  6089.             }
  6090.         }
  6091.     }
  6092.     else if (eventName == "showShard") {
  6093.         API.showShard(args[0]);
  6094.     }
  6095.     else if (eventName == "playerlist") {
  6096.         g_players = [];
  6097.         var list = args[0];
  6098.         for (var i = 0; i < list.Count; i++) {
  6099.             var obj = JSON.parse(list[i]);
  6100.             var newPlayer = new PlayerInfo();
  6101.             newPlayer.id = obj.id;
  6102.             newPlayer.socialClubName = obj.socialClubName;
  6103.             newPlayer.name = obj.name;
  6104.             newPlayer.color = parseColor(obj.color);
  6105.             newPlayer.gh = obj.gh;
  6106.             g_players.push(newPlayer);
  6107.         }
  6108.     }
  6109.     else if (eventName == "playerlist_join") {
  6110.         // This can happen in certain situations, so we handle this as an update
  6111.         var existingPlayer = getPlayer(args[0]);
  6112.         if (existingPlayer != null) {
  6113.             existingPlayer.socialClubName = args[0];
  6114.             existingPlayer.name = args[1];
  6115.             existingPlayer.color = parseColor(args[2]);
  6116.         }
  6117.         else {
  6118.             var newPlayer = new PlayerInfo();
  6119.             newPlayer.id = args[0];
  6120.             newPlayer.socialClubName = args[1];
  6121.             newPlayer.name = args[2];
  6122.             newPlayer.color = parseColor(args[3]);
  6123.             newPlayer.gh = 0;
  6124.             g_players.push(newPlayer);
  6125.         }
  6126.     }
  6127.     else if (eventName == "playerlist_leave") {
  6128.         for (var i = 0; i < g_players.length; i++) {
  6129.             if (g_players[i].socialClubName == args[0]) {
  6130.                 g_players.splice(i, 1);
  6131.             }
  6132.         }
  6133.     }
  6134.     else if (eventName == "playerlist_pings") {
  6135.         var list = args[0];
  6136.         for (var i = 0; i < list.Count; i++) {
  6137.             var obj = JSON.parse(list[i]);
  6138.             var player = getPlayer(obj.socialClubName);
  6139.             if (player != null) {
  6140.                 player.ping = obj.ping;
  6141.             }
  6142.         }
  6143.     }
  6144.     else if (eventName == "playerlist_changednames") {
  6145.         var list = args[0];
  6146.         for (var i = 0; i < list.Count; i++) {
  6147.             var obj = JSON.parse(list[i]);
  6148.             var player = getPlayer(obj.socialClubName);
  6149.             if (player != null) {
  6150.                 player.name = obj.newName;
  6151.             }
  6152.         }
  6153.     }
  6154.     else if (eventName == "ShowRecipes") {
  6155.         menuIdx = MENU_IDX_RECIPES;
  6156.         var _names = args[0];
  6157.         var _count = args[1];
  6158.         menu.Clear();
  6159.  
  6160.         for (var i = 0; i < _count; i++) {
  6161.             menu.AddItem(API.createMenuItem(_names[i], "Valimiseks vajuta [ENTER]"));
  6162.         }
  6163.         menu.Visible = true;
  6164.     }
  6165.     else if (eventName == "getLocationName") {
  6166.         var streetName = API.getStreetName(new Vector3(args[0], args[1], args[2]));
  6167.         API.triggerServerEvent("sendLocationName", streetName);
  6168.     }
  6169.     else if (eventName == "showDMV") {
  6170.         var resolution = API.getScreenResolution();
  6171.         browser = API.createCefBrowser(resolution.Width, resolution.Height, true);
  6172.         API.waitUntilCefBrowserInit(browser);
  6173.  
  6174.         API.setChatVisible(false);
  6175.         API.setCefBrowserPosition(browser, 0, 0);
  6176.         API.loadPageCefBrowser(browser, dmvUrl);
  6177.         API.showCursor(true);
  6178.  
  6179.         browser.call("onLoad", args[0], args[1], args[2], args[3]);
  6180.     }
  6181.     else if (eventName == "addQuestionToDMV") {
  6182.         browser.call("AppendQuestion", args[0], args[1]);
  6183.     }
  6184.     else if (eventName == "addVehicleToDMV") {
  6185.         var _imgstr = "<img src=\"/RPGM/vehshop/images/vehicles/" + args[1] + ".jpg\" alt=\"" + args[1] + "\" />";
  6186.         var _modelHashName = args[1];
  6187.         var _numberPlate = args[2];
  6188.  
  6189.         browser.call("AddVehicle", args[0], _modelHashName, _numberPlate, args[3], args[4], args[5], args[6], args[7], args[8], args[9], args[10], args[11], args[12], args[13], args[14], args[15], args[16], _imgstr);
  6190.     }
  6191.     else if (eventName == "removeBlips") {
  6192.         if (mainBlip != null) {
  6193.             API.deleteEntity(mainBlip);
  6194.             mainBlip = null;
  6195.         }
  6196.         if (locationBlip != null) {
  6197.             API.deleteEntity(locationBlip);
  6198.             locationBlip = null;
  6199.         }
  6200.         if (fishNetBlip1 != null) {
  6201.             API.deleteEntity(fishNetBlip1);
  6202.             fishNetBlip1 = null;
  6203.         }
  6204.         if (fishNetBlip2 != null) {
  6205.             API.deleteEntity(fishNetBlip2);
  6206.             fishNetBlip2 = null;
  6207.         }
  6208.  
  6209.         for (var i = 0; i < carStealingMarkersSupportUpTo; i++) {
  6210.             if (carStealingMarkers[i] !== null && carStealingMarkers[i] !== undefined) {
  6211.                 API.deleteEntity(carStealingMarkers[i]);
  6212.             }
  6213.         }
  6214.     }
  6215.     else if (eventName == "removeFishBlip") {
  6216.         if(args[0]) {
  6217.             if (fishNetBlip1 != null) {
  6218.                 API.deleteEntity(fishNetBlip1);
  6219.                 fishNetBlip1 = null;
  6220.             }
  6221.         } else {
  6222.             if (fishNetBlip2 != null) {
  6223.                 API.deleteEntity(fishNetBlip2);
  6224.                 fishNetBlip2 = null;
  6225.             }
  6226.         }
  6227.     }
  6228.     else if (eventName == "testing") {
  6229.         blockKey = args[0];
  6230.     }
  6231.     else if (eventName == "setCruiseSpeed") {
  6232.         cruiseSpeed = args[0];
  6233.     }
  6234.     else if (eventName == "setIsInTrash") {
  6235.         speedlimited = args[0];
  6236.         speedlimitvalue = 75;
  6237.     }
  6238.     else if (eventName == "playerIsInCar") {
  6239.         isInCar = 1;
  6240.     }
  6241.     else if (eventName == "playerIsNotInCar") {
  6242.         isInCar = 0;
  6243.     }
  6244.     else if (eventName == "copEquiptment") {
  6245.         ShowCopEquiptment();
  6246.     }
  6247.     else if (eventName == "medicEquiptment") {
  6248.         menuIdx = MENU_IDX_EQUIPTMENT;
  6249.         menu.Clear();
  6250.  
  6251.         menu.AddItem(API.createMenuItem("Flashlight", "Valimiseks vajuta [ENTER]"));
  6252.         menu.AddItem(API.createMenuItem("FireExtinguisher", "Valimiseks vajuta [ENTER]"));
  6253.         menu.AddItem(API.createMenuItem("StunGun", "Valimiseks vajuta [ENTER]"));
  6254.         menu.AddItem(API.createMenuItem("~y~Skin: Autopsy01SMY", "Valimiseks vajuta [ENTER]"));
  6255.         menu.AddItem(API.createMenuItem("~y~Skin: Paramedic01SMM", "Valimiseks vajuta [ENTER]"));
  6256.         menu.AddItem(API.createMenuItem("~y~Skin: Doctor01SMM", "Valimiseks vajuta [ENTER]"));
  6257.         menu.AddItem(API.createMenuItem("~y~Skin: Fireman01SMY", "Valimiseks vajuta [ENTER]"));
  6258.         menu.AddItem(API.createMenuItem("~y~Skin: Scrubs01SFY", "Valimiseks vajuta [ENTER]"));
  6259.         menu.AddItem(API.createMenuItem("~y~Skin: Andreas", "Valimiseks vajuta [ENTER]"));
  6260.         menu.AddItem(API.createMenuItem("~y~Skin: Tavariietus", "Valimiseks vajuta [ENTER]"));
  6261.         menu.CurrentSelection = 0;
  6262.         menu.Visible = true;
  6263.     }
  6264.     else if (eventName == "showDMVDrivingExamMenu") {
  6265.         menuIdx = MENU_IDX_DRIVING_EXAM;
  6266.         menu.Clear();
  6267.  
  6268.         menu.AddItem(API.createMenuItem("A - Mootorrattad", "Valimiseks vajuta [ENTER]"));
  6269.         menu.AddItem(API.createMenuItem("B - Auto", "Valimiseks vajuta [ENTER]"));
  6270.         menu.AddItem(API.createMenuItem("C/CE - Kaubik", "Valimiseks vajuta [ENTER]"));
  6271.         menu.AddItem(API.createMenuItem("D - Buss", "Valimiseks vajuta [ENTER]"));
  6272.         menu.CurrentSelection = 0;
  6273.         menu.Visible = true;
  6274.     }
  6275.     else if (eventName == "isInDrivingExam") {
  6276.         inDrivingExam = args[0];
  6277.     }
  6278.     else if (eventName == "setPlayerFreeze") {
  6279.         freezed = args[0];
  6280.     }
  6281.     else if (eventName == "setPlayerFreezeTime") {
  6282.         freezedTime = API.getGlobalTime();
  6283.     }
  6284.     else if (eventName == "getTazed") {
  6285.         /*var _bool = API.returnNative("IS_PED_BEING_STUNNED", 8, API.getLocalPlayer(), 1);
  6286.         API.triggerServerEvent("debug", _bool);
  6287.         if (_bool) {
  6288.             API.callNative("SET_PED_MIN_GROUND_TIME_FOR_STUNGUN", API.getLocalPlayer(), 60000);
  6289.         }*/
  6290.     }
  6291.     else if (eventName == "setTazed") {
  6292.         API.callNative("SET_PED_MIN_GROUND_TIME_FOR_STUNGUN", API.getLocalPlayer(), 60000);
  6293.     }
  6294.     else if (eventName == "createDeathMarker") {
  6295.         if (deathMarkers[deathMarkerIdx] !== null && deathMarkers[deathMarkerIdx] !== undefined ) {
  6296.             API.deleteEntity(deathMarkers[deathMarkerIdx]);
  6297.         }
  6298.  
  6299.         deathMarkers[deathMarkerIdx] = API.createTextLabel(args[0], args[1], 20.0, 0.5, false);
  6300.         deathMarkersTime[deathMarkerIdx] = API.getGlobalTime();
  6301.         deathMarkerIdx += 1;
  6302.  
  6303.         if (deathMarkerIdx >= deathMarkersSupportUpTo) {
  6304.             deathMarkerIdx = 0;
  6305.         }
  6306.     }
  6307.     else if (eventName == "recieveSettingsNew") {
  6308.         setting_money_font_size = args[0];
  6309.         setting_money_font_style = args[1];
  6310.         setting_money_color_r = args[2];
  6311.         setting_money_color_g = args[3];
  6312.         setting_money_color_b = args[4];
  6313.         setting_money_pos_x = args[5];
  6314.         setting_money_pos_y = args[6];
  6315.  
  6316.         setting_food_font_size = args[7];
  6317.         setting_food_font_style = args[8];
  6318.         setting_food_color_r = args[9];
  6319.         setting_food_color_g = args[10];
  6320.         setting_food_color_b = args[11];
  6321.         setting_food_pos_x = args[12];
  6322.         setting_food_pos_y = args[13];
  6323.  
  6324.         setting_speed_font_size = args[14];
  6325.         setting_speed_font_style = args[15];
  6326.         setting_speed_color_r = args[16];
  6327.         setting_speed_color_g = args[17];
  6328.         setting_speed_color_b = args[18];
  6329.         setting_speed_pos_x = args[19];
  6330.         setting_speed_pos_y = args[20];
  6331.  
  6332.         setting_fuel_font_size = args[21];
  6333.         setting_fuel_font_style = args[22];
  6334.         setting_fuel_color_r = args[23];
  6335.         setting_fuel_color_g = args[24];
  6336.         setting_fuel_color_b = args[25];
  6337.         setting_fuel_pos_x = args[26];
  6338.         setting_fuel_pos_y = args[27];
  6339.  
  6340.         setting_vehhp_font_size = args[28];
  6341.         setting_vehhp_font_style = args[29];
  6342.         setting_vehhp_color_r = args[30];
  6343.         setting_vehhp_color_g = args[31];
  6344.         setting_vehhp_color_b = args[32];
  6345.         setting_vehhp_pos_x = args[33];
  6346.         setting_vehhp_pos_y = args[34];
  6347.  
  6348.         setting_counter_font_size = args[35];
  6349.         setting_counter_font_style = args[36];
  6350.         setting_counter_color_r = args[37];
  6351.         setting_counter_color_g = args[38];
  6352.         setting_counter_color_b = args[39];
  6353.         setting_counter_pos_x = args[40];
  6354.         setting_counter_pos_y = args[41];
  6355.  
  6356.         setting_notification_font_size = args[42];
  6357.         setting_notification_font_style = args[43];
  6358.         setting_notification_color_r = args[44];
  6359.         setting_notification_color_g = args[45];
  6360.         setting_notification_color_b = args[46];
  6361.         setting_notification_pos_x = args[47];
  6362.         setting_notification_pos_y = args[48];
  6363.  
  6364.         setting_update_speed = args[49];
  6365.  
  6366.         setting_odometer_font_size = args[50];
  6367.         setting_odometer_font_style = args[51];
  6368.         setting_odometer_color_r = args[52];
  6369.         setting_odometer_color_g = args[53];
  6370.         setting_odometer_color_b = args[54];
  6371.         setting_odometer_pos_x = args[55];
  6372.         setting_odometer_pos_y = args[56];
  6373.  
  6374.         setting_minigame_font_size = args[57];
  6375.         setting_minigame_font_style = args[58];
  6376.         setting_minigame_color_r = args[59];
  6377.         setting_minigame_color_g = args[60];
  6378.         setting_minigame_color_b = args[61];
  6379.         setting_minigame_pos_x = args[62];
  6380.         setting_minigame_pos_y = args[63];
  6381.  
  6382.         setting_compass_font_size = args[64];
  6383.         setting_compass_font_style = args[65];
  6384.         setting_compass_color_r = args[66];
  6385.         setting_compass_color_g = args[67];
  6386.         setting_compass_color_b = args[68];
  6387.         setting_compass_pos_x = args[69];
  6388.         setting_compass_pos_y = args[70];
  6389.  
  6390.         setting_money_opacity = args[71];
  6391.         setting_food_opacity = args[72];
  6392.         setting_speed_opacity = args[73];
  6393.         setting_fuel_opacity = args[74];
  6394.         setting_vehhp_opacity = args[75];
  6395.         setting_counter_opacity = args[76];
  6396.         setting_notification_opacity = args[77];
  6397.         setting_odometer_opacity = args[78];
  6398.         setting_minigame_opacity = args[79];
  6399.         setting_compass_opacity = args[80];
  6400.  
  6401.         var _index = (setting_money_font_size + 1);
  6402.         var size = (_index * ACCURATION_OF_FONT_SIZE);
  6403.         setting_money_font_size_display = size;
  6404.  
  6405.         _index = (setting_food_font_size + 1);
  6406.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6407.         setting_food_font_size_display = size;
  6408.  
  6409.         _index = (setting_speed_font_size + 1);
  6410.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6411.         setting_speed_font_size_display = size;
  6412.  
  6413.         _index = (setting_fuel_font_size + 1);
  6414.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6415.         setting_fuel_font_size_display = size;
  6416.  
  6417.         _index = (setting_vehhp_font_size + 1);
  6418.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6419.         setting_vehhp_font_size_display = size;
  6420.  
  6421.         _index = (setting_counter_font_size + 1);
  6422.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6423.         setting_counter_font_size_display = size;
  6424.  
  6425.         _index = (setting_notification_font_size + 1);
  6426.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6427.         setting_notification_font_size_display = size;
  6428.  
  6429.         _index = (setting_odometer_font_size + 1);
  6430.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6431.         setting_odometer_font_size_display = size;
  6432.  
  6433.         _index = (setting_minigame_font_size + 1);
  6434.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6435.         setting_minigame_font_size_display = size;
  6436.  
  6437.         _index = (setting_compass_font_size + 1);
  6438.         size = (_index * ACCURATION_OF_FONT_SIZE);
  6439.         setting_compass_font_size_display = size;
  6440.  
  6441.         UpdateSettingsMenuIndexes();
  6442.     }
  6443.     else if (eventName == "resetAfk") {
  6444.         afkTimer = 0;
  6445.     }
  6446.     else if (eventName == "setNoAccelerationAtPos") {
  6447.         noAccelereationPos = args[0];
  6448.     }
  6449.     else if (eventName == "setSnowEnabled") {
  6450.         API.setSnowEnabled(true, true, true);
  6451.     }
  6452.     else if (eventName == "setSnowDisabled") {
  6453.         API.setSnowEnabled(false, false, false);
  6454.     }
  6455.     else if (eventName == "syncSpikestrips") {
  6456.         spikestrips = args[0];
  6457.         spikestripsTotal = args[1];
  6458.     }
  6459.     else if (eventName == "syncBeard") {
  6460.         beard = args[0];
  6461.         beard_color = args[1];
  6462.     }
  6463.     else if (eventName == "setVehicleTyresPopped") {
  6464.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 0, true, 50);
  6465.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 1, true, 50);
  6466.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 2, true, 50);
  6467.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 3, true, 50);
  6468.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 4, true, 50);
  6469.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 5, true, 50);
  6470.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 6, true, 50);
  6471.         API.callNative("SET_VEHICLE_TYRE_BURST", args[0], 7, true, 50);
  6472.     }
  6473.     else if (eventName == "enableObjectMove") {
  6474.         movingObj = true;
  6475.         selectedObj = args[0];
  6476.     }
  6477.     else if (eventName == "addPresetCategorys") {
  6478.         objcategorys = args[0];
  6479.         objcategorysCount = args[1];
  6480.  
  6481.         menuIdx = MENU_IDX_OBJ_CATEGORYS;
  6482.         menu.Clear();
  6483.  
  6484.         menu.AddItem(API.createMenuItem("Lisa kategooria", "Valides sisesta kategooria nimi"));
  6485.         for (var i = 0; i < objcategorysCount; i++) {
  6486.             menu.AddItem(API.createMenuItem(objcategorys[i], "Valimiseks vajuta [ENTER]"));
  6487.         }
  6488.  
  6489.         menu.CurrentSelection = 0;
  6490.         menu.Visible = true;
  6491.     }
  6492.     else if (eventName == "addPresetObjects") {
  6493.         var categoryId = args[0];
  6494.         objpresets = args[1];
  6495.         objpresetsCount = args[2];
  6496.  
  6497.         objectPresets[categoryId] = objpresets;
  6498.         objectPresetCounts[categoryId] = objpresetsCount;
  6499.     }
  6500.     else if (eventName == "setSelectedObj") {
  6501.         movingObj = true;
  6502.         selectedObj = args[0];
  6503.     }
  6504.     else if (eventName == "selectObject") {
  6505.         selectingObjWithCursor = true;
  6506.         selectingWithCursorType = SELECT_TYPE_OBJECT;
  6507.         API.showCursor(true);
  6508.     }
  6509.     else if (eventName == "showStaticShop") {
  6510.         menuIdx = MENU_IDX_STATIC_SHOP;
  6511.         menu.Clear();
  6512.         menu.AddItem(API.createMenuItem("Õllesnäkid ~b~$ 25", "Valides sisesta kogus"));
  6513.         menu.AddItem(API.createMenuItem("Suitsud ~b~$ 25", "Valides sisesta kogus"));
  6514.         menu.AddItem(API.createMenuItem("Kartulisalat ~b~$ 50", "Valides sisesta kogus"));
  6515.         menu.AddItem(API.createMenuItem("Saiake ~b~$ 50", "Valides sisesta kogus"));
  6516.         menu.AddItem(API.createMenuItem("Limonaad ~b~$ 50", "Valides sisesta kogus"));
  6517.         menu.AddItem(API.createMenuItem("Energiajook ~b~$ 50", "Valides sisesta kogus"));
  6518.         menu.AddItem(API.createMenuItem("Burger ~b~$ 75", "Valides sisesta kogus"));
  6519.         menu.AddItem(API.createMenuItem("Õlu ~b~$ 75", "Valides sisesta kogus"));
  6520.         menu.AddItem(API.createMenuItem("Telefon ~b~$ 375", "Valides sisesta kogus"));
  6521.         menu.AddItem(API.createMenuItem("Õng / spinning ~b~$ 250", "Valides sisesta kogus"));
  6522.         menu.AddItem(API.createMenuItem("Tamiil ~b~$ 75", "Valides sisesta kogus"));
  6523.         menu.AddItem(API.createMenuItem("Vihmaussid (50tk) ~b~$ 25", "Valides sisesta kogus"));
  6524.         menu.AddItem(API.createMenuItem("Mootoriõli ~b~$ 50", "Valides sisesta kogus"));
  6525.         menu.AddItem(API.createMenuItem("Kanister ~b~$ 250", "Valides sisesta kogus"));
  6526.         menu.AddItem(API.createMenuItem("Maja silt ~b~$ 125", "Valides sisesta kogus"));
  6527.         menu.AddItem(API.createMenuItem("Kalavõrk ~b~$ 625", "Valides sisesta kogus"));
  6528.         menu.AddItem(API.createMenuItem("Tulemasin ~b~$ 50", "Valides sisesta kogus"));
  6529.         menu.AddItem(API.createMenuItem("Raadiosaatja ~b~$ 125", "Valides sisesta kogus"));
  6530.         menu.AddItem(API.createMenuItem("~y~loto ~b~$ 150", "Valides sisesta nr 1-100"));
  6531.         menu.CurrentSelection = 0;
  6532.         menu.Visible = true;
  6533.     }
  6534.     else if (eventName == "previewObj") {
  6535.         var _names = args[0];
  6536.         var _models = args[1];
  6537.         var _count = args[2];
  6538.  
  6539.         menuIdx = MENU_IDX_PREVIEW_OBJ;
  6540.         menu.Clear();
  6541.  
  6542.         for (var i = 0; i < _count; i++) {
  6543.             menu.AddItem(API.createMenuItem(_names[i]+" ("+_models[i]+")", "preview objekt"));
  6544.         }
  6545.  
  6546.         menu.CurrentSelection = 0;
  6547.         menu.Visible = true;
  6548.     }
  6549.     else if (eventName == "deselectObj") {
  6550.         movingObj = false;
  6551.         selectedObj = null;
  6552.     }
  6553.     else if (eventName == "displaySub") {
  6554.         API.displaySubtitle(args[0]);
  6555.     }
  6556.     else if (eventName == "playOKSound") {
  6557.         API.playSoundFrontEnd("OK", "HUD_FRONTEND_DEFAULT_SOUNDSET");
  6558.     }
  6559.     else if (eventName == "removeBlipsAndCheckpoints") {
  6560.         if (mainBlip != null) {
  6561.             API.deleteEntity(mainBlip);
  6562.             mainBlip = null;
  6563.         }
  6564.  
  6565.         if (secondBlip != null) {
  6566.             API.deleteEntity(secondBlip);
  6567.             secondBlip = null;
  6568.         }
  6569.  
  6570.         if (nextCheckpointMarker != null) {
  6571.             API.deleteEntity(nextCheckpointMarker);
  6572.             nextCheckpointMarker = null;
  6573.         }
  6574.  
  6575.         if (nextCheckpointDir != null) {
  6576.             API.deleteEntity(nextCheckpointDir);
  6577.             nextCheckpointDir = null;
  6578.         }
  6579.     }
  6580.     else if (eventName == "getServiceCall") {
  6581.         userInput = API.getUserInput("", 127);
  6582.         API.triggerServerEvent("callService", userInput);
  6583.     }
  6584.     else if (eventName == "putPlayerInventory") {
  6585.         menuIdx = MENU_IDX_PUTTING_ITEMS;
  6586.         menu.Clear();
  6587.  
  6588.         var itemNames = args[0];
  6589.         var itemAmounts = args[1];
  6590.         var itemCount = args[2];
  6591.  
  6592.         for (var i = 0; i < itemCount; i++) {
  6593.             menu.AddItem(API.createMenuItem(itemNames[i] + "(" + itemAmounts[i] + ")", "Valimiseks vajuta [ENTER]"));
  6594.         }
  6595.  
  6596.         menu.Visible = true;
  6597.     }
  6598.     else if (eventName == "takingPlayerInventory") {
  6599.         menuIdx = MENU_IDX_TAKING_ITEMS;
  6600.         menu.Clear();
  6601.  
  6602.         var itemNames = args[0];
  6603.         var itemAmounts = args[1];
  6604.         var itemCount = args[2];
  6605.  
  6606.         for (var i = 0; i < itemCount; i++) {
  6607.             menu.AddItem(API.createMenuItem(itemNames[i] + "(" + itemAmounts[i] + ")", "Valimiseks vajuta [ENTER]"));
  6608.         }
  6609.  
  6610.         menu.Visible = true;
  6611.     }
  6612.     else if (eventName == "lockVehicle") {
  6613.         var lockState = 1;
  6614.         if(args[1]) {
  6615.             lockState = 2;
  6616.         } else {
  6617.             lockState = 1;
  6618.         }
  6619.         API.callNative("SET_VEHICLE_DOORS_LOCKED", args[0], lockState);
  6620.     }
  6621.     else if (eventName == "testlockVehicle") {
  6622.         API.callNative("SET_VEHICLE_DOORS_LOCKED", args[0], args[1]);
  6623.     }
  6624.     else if (eventName == "showGunstore") {
  6625.         menuIdx = MENU_IDX_GUNSTORE;
  6626.         if (menu == null) {
  6627.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  6628.         }
  6629.         menu.Clear();
  6630.  
  6631.         menu.AddItem(API.createMenuItem("SwitchBlade ~b~$800 / 1tk", "Valides kirjuta lahtri kogus"));
  6632.         menu.AddItem(API.createMenuItem("StunGun ~b~$3 500 / 1tk", "Valides kirjuta lahtri kogus"));
  6633.         menu.AddItem(API.createMenuItem("Pistol ~b~$7 500 / 1tk", "Valides kirjuta lahtri kogus"));
  6634.         menu.AddItem(API.createMenuItem("SMG ~b~$12 000 / 1tk", "Valides kirjuta lahtri kogus"));
  6635.         menu.AddItem(API.createMenuItem("AssaultRifle ~b~$18 000 / 1tk", "Valides kirjuta lahtri kogus"));
  6636.         menu.AddItem(API.createMenuItem("PumpShotgun ~b~$8 000 / 1tk", "Valides kirjuta lahtri kogus"));
  6637.         menu.AddItem(API.createMenuItem("~y~9MM ~b~$5 / 1tk", "Valides kirjuta lahtri kogus"));
  6638.         menu.AddItem(API.createMenuItem("~y~5.56 ~b~$10 / 1tk", "Valides kirjuta lahtri kogus"));
  6639.         menu.AddItem(API.createMenuItem("~y~Haavlid ~b~$8 / 1tk", "Valides kirjuta lahtri kogus"));
  6640.         menu.AddItem(API.createMenuItem("~y~0.50 ~b~$7 / 1tk", "Valides kirjuta lahtri kogus"));
  6641.         menu.AddItem(API.createMenuItem("~y~7.62 ~b~$12 / 1tk", "Valides kirjuta lahtri kogus"));
  6642.  
  6643.         menu.CurrentSelection = 0;
  6644.         menu.Visible = true;
  6645.     }
  6646.     else if (eventName == "showMeleeStore") {
  6647.         menuIdx = MENU_IDX_MELEESTORE;
  6648.         if (menu == null) {
  6649.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  6650.         }
  6651.         menu.Clear();
  6652.  
  6653.         menu.AddItem(API.createMenuItem("Nuga ~b~$400 / 1tk", "Valides kirjuta lahtri kogus"));
  6654.         menu.AddItem(API.createMenuItem("Haamer ~b~$200 / 1tk", "Valides kirjuta lahtri kogus"));
  6655.         menu.AddItem(API.createMenuItem("Kurikas ~b~$1800 / 1tk", "Valides kirjuta lahtri kogus"));
  6656.         menu.AddItem(API.createMenuItem("Crowbar ~b~$2000 / 1tk", "Valides kirjuta lahtri kogus"));
  6657.         menu.AddItem(API.createMenuItem("Golfclub ~b~$1500 / 1tk", "Valides kirjuta lahtri kogus"));
  6658.         menu.AddItem(API.createMenuItem("Dagger ~b~$300 / 1tk", "Valides kirjuta lahtri kogus"));
  6659.         menu.AddItem(API.createMenuItem("Hatchet ~b~$500 / 1tk", "Valides kirjuta lahtri kogus"));
  6660.         menu.AddItem(API.createMenuItem("Knuckle duster ~b~$300 / 1tk", "Valides kirjuta lahtri kogus"));
  6661.         menu.AddItem(API.createMenuItem("Machete ~b~$1350 / 1tk", "Valides kirjuta lahtri kogus"));
  6662.         menu.AddItem(API.createMenuItem("Flashlight ~b~$200 / 1tk", "Valides kirjuta lahtri kogus"));
  6663.         menu.AddItem(API.createMenuItem("Switchblade ~b~$500 / 1tk", "Valides kirjuta lahtri kogus"));
  6664.         menu.AddItem(API.createMenuItem("Poolcue ~b~$1200 / 1tk", "Valides kirjuta lahtri kogus"));
  6665.         menu.AddItem(API.createMenuItem("Wrench ~b~$2500 / 1tk", "Valides kirjuta lahtri kogus"));
  6666.         menu.AddItem(API.createMenuItem("Battleaxe ~b~$10000 / 1tk", "Valides kirjuta lahtri kogus"));
  6667.  
  6668.         menu.CurrentSelection = 0;
  6669.         menu.Visible = true;
  6670.     }
  6671.     else if (eventName == "getRes") {
  6672.         var oldResX = res.Width;
  6673.         var oldResY = res.Height;
  6674.         var newResolution = API.getScreenResolution();
  6675.         API.triggerServerEvent("debug", "VANA: " + oldResX + " " + oldResY + " UUS: " + newResolution.Width + " " + newResolution.Height)
  6676.     }
  6677.     else if (eventName == "selectCharName") {
  6678.         var charNames = args[0];
  6679.         var charCount = args[1];
  6680.         uid = args[2]
  6681.         username = args[3];
  6682.         selectingChar = true;
  6683.  
  6684.         menuIdx = MENU_IDX_SELECT_CHAR;
  6685.         if (menu == null) {
  6686.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  6687.         }
  6688.         menu.Clear();
  6689.  
  6690.         for (var i = 0; i < charCount; i++) {
  6691.             menu.AddItem(API.createMenuItem(charNames[i], "Valimiseks vajuta [ENTER]"));
  6692.         }
  6693.  
  6694.         menu.CurrentSelection = 0;
  6695.         menu.Visible = true;
  6696.     }
  6697.     else if (eventName == "getAllVehiclesNear") {
  6698.         // TODOD geti kõik vehicles raadiuses args[0] on raadius
  6699.     }
  6700.     else if (eventName == "syncTotalPlayerCount") {
  6701.         totalPlayers = args[0];
  6702.     }
  6703.     else if (eventName == "closeMenu") {
  6704.         menu.Visible = false;
  6705.         gmenu.Visible = false;
  6706.         API.showCursor(false);
  6707.     }
  6708.     else if (eventName == "togglecanvas") {
  6709.         if (!toggledCanvas) {
  6710.             CurrentResXPos = 1920;
  6711.             CurrentResYPos = 1080;
  6712.             toggledCanvas = true;
  6713.         } else {
  6714.             CurrentResXPos = res.Width;
  6715.             CurrentResYPos = res.Height;
  6716.             toggledCanvas = false;
  6717.         }
  6718.     }
  6719.     else if (eventName == "updateOdometer") {
  6720.         odometer = args[0];
  6721.     }
  6722.     else if (eventName == "playSound") {
  6723.         API.playSoundFrontEnd(args[0], args[1]);
  6724.     }
  6725.     else if (eventName == "yesOrNoSellVehicle") {
  6726.         menuIdx = MENU_IDX_YES_OR_NO_SELL_VEHICLE;
  6727.         if (menu == null) {
  6728.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  6729.         }
  6730.         menu.Clear();
  6731.        
  6732.         menu.AddItem(API.createMenuItem("~g~Jah", "Müü sõiduk hinnaga ~y~$" + args[0]));
  6733.         menu.AddItem(API.createMenuItem("~r~Ei", "Katkestab müümise"));
  6734.  
  6735.         menu.CurrentSelection = 0;
  6736.         menu.Visible = true;
  6737.     }
  6738.     else if (eventName == "showNearObjects") {
  6739.         var _names = args[0];
  6740.         var _distances = args[1];
  6741.         var _count = args[2];
  6742.  
  6743.         menuIdx = MENU_IDX_AROUND_OBJECTS;
  6744.         if (menu == null) {
  6745.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  6746.         }
  6747.         menu.Clear();
  6748.  
  6749.         for (var i = 0; i < _count; i++) {
  6750.             menu.AddItem(API.createMenuItem("~b~#" + (i + 1) + "~s~ " + _names[i] + " ~g~" + _distances[i], "Valimiseks vajuta [ENTER]"));
  6751.         }
  6752.  
  6753.         menu.CurrentSelection = 0;
  6754.         menu.Visible = true;
  6755.     }
  6756.     else if (eventName == "selectedObject") {
  6757.         selectedObj = args[0];
  6758.         movingObj = true;
  6759.     }
  6760.     else if (eventName == "startAlarm") {
  6761.         API.callNative("SET_VEHICLE_ALARM", args[0], true);
  6762.         API.callNative("START_VEHICLE_ALARM", args[0]);
  6763.     }
  6764.     else if (eventName == "addNewCarthieving") {
  6765.         if (carStealingMarkers[carStealingMarkerIdx] !== null && carStealingMarkers[carStealingMarkerIdx] !== undefined) {
  6766.             API.deleteEntity(carStealingMarkers[carStealingMarkerIdx]);
  6767.         }
  6768.         carStealingMarkers[carStealingMarkerIdx] = API.createBlip(args[0]);
  6769.  
  6770.         API.setBlipColor(carStealingMarkers[carStealingMarkerIdx], 59);
  6771.         API.setBlipRouteVisible(carStealingMarkers[carStealingMarkerIdx], true);
  6772.         API.setBlipRouteColor(carStealingMarkers[carStealingMarkerIdx], 59);
  6773.         carStealingMarkerIdx += 1;
  6774.  
  6775.         if (carStealingMarkerIdx >= carStealingMarkersSupportUpTo) {
  6776.             carStealingMarkerIdx = 0;
  6777.         }
  6778.     }
  6779.     else if (eventName == "ShowVehicleOptionMenu") {
  6780.         menuIdx = MENU_IDX_SELECTED_VEHICLE_MENU;
  6781.         if (menu == null) {
  6782.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  6783.         }
  6784.         menu.Clear();
  6785.  
  6786.         menu.AddItem(API.createMenuItem("~y~Juhiuks", "Valimiseks vajuta ~g~[ENTER]"));
  6787.         menu.AddItem(API.createMenuItem("~y~Kaasreisija", "Valimiseks vajuta ~g~[ENTER]"));
  6788.         menu.AddItem(API.createMenuItem("~y~Vasak tagumine", "Valimiseks vajuta ~g~[ENTER]"));
  6789.         menu.AddItem(API.createMenuItem("~y~Parem tagumine", "Valimiseks vajuta ~g~[ENTER]"));
  6790.         menu.AddItem(API.createMenuItem("~b~Kapott", "Valimiseks vajuta ~g~[ENTER]"));
  6791.         menu.AddItem(API.createMenuItem("~b~Pagasnik", "Valimiseks vajuta ~g~[ENTER]"));
  6792.         menu.AddItem(API.createMenuItem("~q~Tagumine1", "Valimiseks vajuta ~g~[ENTER]"));
  6793.         menu.AddItem(API.createMenuItem("~q~Tagumine2", "Valimiseks vajuta ~g~[ENTER]"));
  6794.         menu.AddItem(API.createMenuItem("~g~Lukk", "Valimiseks vajuta ~g~[ENTER]"));
  6795.  
  6796.         menu.CurrentSelection = 0;
  6797.         menu.Visible = true;
  6798.     }
  6799.     else if (eventName == "afkMinigame") {
  6800.         afkBtnArray = args[0];
  6801.         afkBtnCount = args[1];
  6802.         pullingAfk = true;
  6803.         afkPullingCounter = 0;
  6804.         afkPullingStr = "~h~ ~w~";
  6805.         afkTimeLeft = 15;
  6806.  
  6807.         for (var i = 0; i < afkBtnCount; i++) {
  6808.             if (afkBtnArray[i] !== null) {
  6809.                 var btnName = "W";
  6810.                 if (afkBtnArray[i] == 1) {
  6811.                     btnName = "A";
  6812.                 } else if (afkBtnArray[i] == 2) {
  6813.                     btnName = "S";
  6814.                 } else if (afkBtnArray[i] == 3) {
  6815.                     btnName = "D";
  6816.                 }
  6817.                 afkPullingStr += btnName;
  6818.             }
  6819.         }
  6820.     }
  6821.     else if (eventName == "removeSpeedLimiter") {
  6822.         speedlimitvalue = 540;
  6823.         speedlimited = false;
  6824.     }
  6825.     else if (eventName == "limitSpeed") {
  6826.         speedlimitvalue = args[0];
  6827.         speedlimited = true;
  6828.     }
  6829.     else if (eventName == "showTuningMenu") {
  6830.         tuningIdx = args[0];
  6831.         menuIdx = MENU_IDX_TUNING;
  6832.        
  6833.         if (menu == null) {
  6834.             menu = API.createMenu("Menuu", "Valik", 0, 0, 6);
  6835.         }
  6836.         menu.Clear();
  6837.  
  6838.         if(tuningIdx == 1) {
  6839.             menu.AddItem(TUNING_ColorRList);
  6840.             menu.AddItem(TUNING_ColorGList);
  6841.             menu.AddItem(TUNING_ColorBList);
  6842.             menu.AddItem(API.createMenuItem("~g~Rakenda", "Valimiseks vajuta ~g~[ENTER]"));
  6843.         } else {
  6844.             menu.AddItem(TUNING_List);
  6845.         }
  6846.  
  6847.         menu.CurrentSelection = 0;
  6848.         menu.Visible = true;
  6849.     }
  6850.     else if (eventName == "showNewClotheShopMale") {
  6851.         ShowClothingShopMale();
  6852.     }
  6853.     else if (eventName == "showNewClotheShopFemale") {
  6854.         ShowClothingShopFemale();
  6855.     }
  6856.     else if (eventName == "setTattooData") {
  6857.         tattoo1 = args[0];
  6858.         tattoo2 = args[1];
  6859.         tattoo3 = args[2];
  6860.         tattoo4 = args[3];
  6861.         tattoo5 = args[4];
  6862.         tattoo6 = args[5];
  6863.         tattoo7 = args[6];
  6864.         tattoo8 = args[7];
  6865.         tattoo9 = args[8];
  6866.         tattoo10 = args[9];
  6867.     }
  6868.     else if (eventName == "setBeardTo") {
  6869.        
  6870.         API.setPlayerHeadOverlayColor(args[0], 1, args[2], 0, 255);
  6871.         API.setPlayerHeadOverlay(args[0], 1, args[1], 255);
  6872.     }
  6873.     else if (eventName == "showBeardMenu") {
  6874.         ShowBeardMenu();
  6875.     }
  6876.     else if (eventName == "selectVehicle") {
  6877.         selectingVehicleWithCursor = true;
  6878.         selectingWithCursorType = SELECT_TYPE_VEHICLE;
  6879.         API.showCursor(true);
  6880.     }
  6881.     else if (eventName == "setFireHazardBlip") {
  6882.         // color orange
  6883.         if (fireHazardMarkers[currentHazardMarker] == null) {
  6884.             fireHazardMarkers[currentHazardMarker] = API.createBlip(args[0]);
  6885.             API.setBlipColor(fireHazardMarkers[currentHazardMarker], 47);
  6886.         } else {
  6887.             API.setBlipPosition(fireHazardMarkers[currentHazardMarker], args[0]);
  6888.         }
  6889.         API.setBlipSprite(fireHazardMarkers[currentHazardMarker], 436);
  6890.         API.setBlipRouteVisible(fireHazardMarkers[currentHazardMarker], true);
  6891.         API.setBlipRouteColor(fireHazardMarkers[currentHazardMarker], 47);
  6892.  
  6893.         currentHazardMarker += 1;
  6894.         if(currentHazardMarker >= maxFireHazardMarkers) {
  6895.             currentHazardMarker = 0;
  6896.         }
  6897.     }
  6898.     else if (eventName == "removeFireHazardBlips") {
  6899.         for(var i = 0; i < maxFireHazardMarkers; i++) {
  6900.             if (fireHazardMarkers[currentHazardMarker] != null) {
  6901.                 API.deleteEntity(fireHazardMarkers[currentHazardMarker]);
  6902.                 fireHazardMarkers[currentHazardMarker] = null;
  6903.             }
  6904.         }
  6905.     }
  6906.     // ClientSideEventTrigger
  6907. });
  6908.  
  6909. var PlayerInfo = (function () {
  6910.     function PlayerInfo() {
  6911.         this.id = "NONE";
  6912.         this.socialClubName = "";
  6913.         this.name = "";
  6914.         this.ping = 0;
  6915.         this.gh = 0;
  6916.         this.color = [255, 255, 255];
  6917.     }
  6918.     return PlayerInfo;
  6919. }());
  6920. var g_currentState = 0;
  6921. var g_currentPage = 0;
  6922. var g_stateSet = 0;
  6923. var g_players = [];
  6924.  
  6925. function parseColor(color) {
  6926.     return [
  6927.         parseInt(color.substr(0, 2), 16),
  6928.         parseInt(color.substr(2, 2), 16),
  6929.         parseInt(color.substr(4, 2), 16)
  6930.     ];
  6931. }
  6932.  
  6933. function AFTER_setToRagDoll(player, deathTime) {
  6934.     API.callNative("SET_PED_TO_RAGDOLL", API.getLocalPlayer(), 4000, deathTime, 0, 0, 0, 0);
  6935. }
  6936.  
  6937. function getPlayer(socialClubName) {
  6938.     for (var i = 0; i < g_players.length; i++) {
  6939.         if (g_players[i].socialClubName == socialClubName) {
  6940.             return g_players[i];
  6941.         }
  6942.     }
  6943.     return null;
  6944. }
  6945.  
  6946. function ShowSettings() {
  6947.     menuIdx = MENU_IDX_SETTINGS;
  6948.     menu.Clear();
  6949.  
  6950.     var settingName = "";
  6951.     var fontIdx = 0;
  6952.  
  6953.     if (setting_font == 0) {
  6954.         settingName = "Chalet London";
  6955.         fontIdx = 0;
  6956.     } else if (setting_font == 1) {
  6957.         settingName = "House Script";
  6958.         fontIdx = 1;
  6959.     } else if (setting_font == 2) {
  6960.         settingName = "Monospace";
  6961.         fontIdx = 2;
  6962.     } else if (setting_font == 4) {
  6963.         settingName = "Charlet Comprime Colonge";
  6964.         fontIdx = 3;
  6965.     } else if (setting_font == 7) {
  6966.         settingName = "Pricedown";
  6967.         fontIdx = 4;
  6968.     }
  6969.  
  6970.     res = API.getScreenResolution();
  6971.  
  6972.     menu.AddItem(API.createMenuItem("Kui kiiresti uueneb kiirus [" + setting_update_speed + "]", "Mida v2iksem seda tihedamalt uueneb"));
  6973.     menu.AddItem(API.createListItem("Kuva kiirust sõidukis olles", "Jah / Ei", settingList, setting_show_speed));
  6974.     menu.AddItem(API.createListItem("Kuva sõidukis olles elusid", "Jah / Ei", settingList, setting_show_vehicle_health));
  6975.     menu.AddItem(API.createListItem("Kuva sõidukis olles kütust", "Jah / Ei", settingList, setting_show_vehicle_fuel));
  6976.     menu.AddItem(API.createMenuItem("HUDi asetus horizontaalne [" + setting_hud_width + "]", "0-" + CurrentResXPos));
  6977.     menu.AddItem(API.createMenuItem("HUDi asetus vertikaalselt [" + setting_hud_height + "]", "0-" + CurrentResYPos));
  6978.     menu.AddItem(API.createListItem("Font size, [" + (setting_font_size_input + 1) + "]", "Valimiseks vajuta [ENTER]", fontSizeList, setting_font_size_input));
  6979.     menu.AddItem(API.createListItem("Font style, [" + settingName + "]", "Valimiseks vajuta [ENTER]", fontList, fontIdx));
  6980.     menu.AddItem(API.createMenuItem("~g~ Salvesta", "Valimiseks vajuta [ENTER]"));
  6981.  
  6982.     menu.Visible = true;
  6983. }
  6984.  
  6985. function ShowSettingsNew() {
  6986.     menuIdx = MENU_IDX_SETTINGS_NEW;
  6987.     menu.Visible = false;
  6988.     menu.Clear();
  6989.  
  6990.     menu.AddItem(API.createMenuItem("HUDi tekst: ~g~raha", "Valimiseks vajuta [ENTER]"));
  6991.     menu.AddItem(API.createMenuItem("HUDi tekst: ~y~toitu", "Valimiseks vajuta [ENTER]"));
  6992.     menu.AddItem(API.createMenuItem("HUDi tekst: ~r~spidomeeter", "Valimiseks vajuta [ENTER]"));
  6993.     menu.AddItem(API.createMenuItem("HUDi tekst: ~b~kütus", "Valimiseks vajuta [ENTER]"));
  6994.     menu.AddItem(API.createMenuItem("HUDi tekst: ~r~sõiduki elud", "Valimiseks vajuta [ENTER]"));
  6995.     menu.AddItem(API.createMenuItem("HUDi tekst: ~c~counterid", "Valimiseks vajuta [ENTER]"));
  6996.     menu.AddItem(API.createMenuItem("HUDi tekst: ~g~oktaanid", "Valimiseks vajuta [ENTER]"));
  6997.     menu.AddItem(API.createMenuItem("HUDi kiiruse refreshrate", "Valimiseks vajuta [ENTER]"));
  6998.     menu.AddItem(API.createMenuItem("HUDi tekst: ~b~odomeeter", "Valimiseks vajuta [ENTER]"));
  6999.     menu.AddItem(API.createMenuItem("HUDi tekst: ~y~minigame", "Valimiseks vajuta [ENTER]"));
  7000.     menu.AddItem(API.createMenuItem("HUDi tekst: ~c~kompass", "Valimiseks vajuta [ENTER]"));
  7001.  
  7002.     menu.Visible = true;
  7003. }
  7004.  
  7005. function ShowFirstTimeWardrobe(skinlist) {
  7006.     menuIdx = MENU_IDX_FIRST_WARDROBE;
  7007.     menu.Visible = false;
  7008.     menu.Clear();
  7009.     AddWardrobeListItems();
  7010.  
  7011.     menu.CurrentSelection = 0;
  7012.     menu.RefreshIndex();
  7013.     menu.Visible = true;
  7014.     assignClothIdx = true;
  7015. }
  7016. function ShowFirstTimeWardrobeTextures() {
  7017.     menuIdx = MENU_IDX_FIRST_WARDROBE_COLOR;
  7018.  
  7019.     menu.Visible = false;
  7020.     menu.Clear();
  7021.     AddWardrobeColorListItems();
  7022.     menu.CurrentSelection = 0;
  7023.     menu.RefreshIndex();
  7024.     menu.Visible = true;
  7025.     assignClothColorIdx = true;
  7026. }
  7027. function ShowFirstTimeWardrobeBodyFeatures() {
  7028.     menuIdx = MENU_IDX_FACE_FEATURES;
  7029.     menu.Visible = false;
  7030.     menu.Clear();
  7031.     AddWardrobeBodyItems();
  7032.     menu.CurrentSelection = 0;
  7033.     menu.RefreshIndex();
  7034.     menu.Visible = true;
  7035.     assignClothColorIdx = true;
  7036. }
  7037.  
  7038. function AddWardrobeListItems() {
  7039.     CLOTH_haircutList.Index = clothHaircut;
  7040.     CLOTH_torsoList.Index = clothTorso;
  7041.     CLOTH_legsList.Index = clothLegs;
  7042.     CLOTH_bagsList.Index = clothBags;
  7043.     CLOTH_feetList.Index = clothFeet;
  7044.     CLOTH_accessoryList.Index = clothAccessory;
  7045.     CLOTH_undershirtList.Index = clothUndershirt;
  7046.     CLOTH_decalsList.Index = clothDecals;
  7047.     CLOTH_topList.Index = clothTops;
  7048.     CLOTH_hatList.Index = clothHats;
  7049.     CLOTH_glassesList.Index = clothGlasses;
  7050.     CLOTH_earsList.Index = clothEars;
  7051.  
  7052.     menu.AddItem(CLOTH_haircutList);
  7053.     menu.AddItem(CLOTH_torsoList);
  7054.     menu.AddItem(CLOTH_legsList);
  7055.     menu.AddItem(CLOTH_bagsList);
  7056.     menu.AddItem(CLOTH_feetList);
  7057.     menu.AddItem(CLOTH_accessoryList);
  7058.     menu.AddItem(CLOTH_undershirtList);
  7059.     menu.AddItem(CLOTH_decalsList);
  7060.     menu.AddItem(CLOTH_topList);
  7061.     menu.AddItem(CLOTH_hatList);
  7062.     menu.AddItem(CLOTH_glassesList);
  7063.     menu.AddItem(CLOTH_earsList);
  7064.  
  7065.     menu.AddItem(API.createMenuItem("~g~Edasi & salvesta", "Valimiseks vajuta [ENTER]"));
  7066.     menu.AddItem(API.createMenuItem("~r~Reset", "Valimiseks vajuta [ENTER]"));
  7067.     menu.AddItem(API.createMenuItem("~y~Skinnid", "Valimiseks vajuta [ENTER]"));
  7068.     menu.AddItem(API.createMenuItem("~r~Reset: Soeng", "Valimiseks vajuta [ENTER]"));
  7069.     menu.AddItem(API.createMenuItem("~r~Reset: Keha", "Valimiseks vajuta [ENTER]"));
  7070.     menu.AddItem(API.createMenuItem("~r~Reset: Püksid", "Valimiseks vajuta [ENTER]"));
  7071.     menu.AddItem(API.createMenuItem("~r~Reset: Seljakotid", "Valimiseks vajuta [ENTER]"));
  7072.     menu.AddItem(API.createMenuItem("~r~Reset: Jalatsid", "Valimiseks vajuta [ENTER]"));
  7073.     menu.AddItem(API.createMenuItem("~r~Reset: Aksessuaarid", "Valimiseks vajuta [ENTER]"));
  7074.     menu.AddItem(API.createMenuItem("~r~Reset: Särgid", "Valimiseks vajuta [ENTER]"));
  7075.     menu.AddItem(API.createMenuItem("~r~Reset: Riidekleebised", "Valimiseks vajuta [ENTER]"));
  7076.     menu.AddItem(API.createMenuItem("~r~Reset: Jakid", "Valimiseks vajuta [ENTER]"));
  7077.     menu.AddItem(API.createMenuItem("~r~Reset: Mütsid", "Valimiseks vajuta [ENTER]"));
  7078.     menu.AddItem(API.createMenuItem("~r~Reset: Prillid", "Valimiseks vajuta [ENTER]"));
  7079.     menu.AddItem(API.createMenuItem("~r~Reset: Kõrvad", "Valimiseks vajuta [ENTER]"));
  7080. }
  7081.  
  7082. function AddWardrobeColorListItems() {
  7083.     //TEXTURE_MaskList.Index = textureclothMask;
  7084.     TEXTURE_HaircutList.Index = textureclothHaircut;
  7085.     TEXTURE_LegsList.Index = textureclothLegs;
  7086.     TEXTURE_BagsList.Index = textureclothBags;
  7087.     TEXTURE_FeetList.Index = textureclothFeet;
  7088.     TEXTURE_AccessoriesList.Index = textureclothAccessory;
  7089.     TEXTURE_UndershirtList.Index = textureclothUndershirt;
  7090.     TEXTURE_DecalsList.Index = textureclothDecals;
  7091.     TEXTURE_TopsList.Index = textureclothTops;
  7092.     TEXTURE_HatsList.Index = textureclothHats;
  7093.     TEXTURE_GlassesList.Index = textureclothGlasses;
  7094.     TEXTURE_EarsList.Index = textureclothEars;
  7095.  
  7096.     //menu.AddItem(TEXTURE_MaskList);
  7097.     menu.AddItem(TEXTURE_HaircutList);
  7098.     menu.AddItem(TEXTURE_LegsList);
  7099.     menu.AddItem(TEXTURE_BagsList);
  7100.     menu.AddItem(TEXTURE_FeetList);
  7101.     menu.AddItem(TEXTURE_AccessoriesList);
  7102.     menu.AddItem(TEXTURE_UndershirtList);
  7103.     menu.AddItem(TEXTURE_DecalsList);
  7104.     menu.AddItem(TEXTURE_TopsList);
  7105.     menu.AddItem(TEXTURE_HatsList);
  7106.     menu.AddItem(TEXTURE_GlassesList);
  7107.     menu.AddItem(TEXTURE_EarsList);
  7108.  
  7109.     menu.AddItem(API.createMenuItem("~g~Salvesta", "Valimiseks vajuta [ENTER]"));
  7110.     menu.AddItem(API.createMenuItem("~r~Reset", "Valimiseks vajuta [ENTER]"));
  7111.     menu.AddItem(API.createMenuItem("~y~Tagasi objektide valikusse", "Valimiseks vajuta [ENTER]"));
  7112. }
  7113.  
  7114. function AddWardrobeBodyItems() {
  7115.     LIST_BODY_FEATURE_EYEBROWS.Index = body_feature_eyebrows;
  7116.     LIST_BODY_FEATURE_EYEBROW_COLOR1.Index = body_feature_eyebrow_color1;
  7117.     LIST_BODY_FEATURE_EYEBROW_COLOR2.Index = body_feature_eyebrow_color2;
  7118.     LIST_BODY_FEATURE_EYE_COLOR.Index = body_feature_eye_color;
  7119.     LIST_BODY_FEATURE_HAIR_COLOR.Index = body_feature_hair_color;
  7120.     LIST_BODY_FEATURE_HAIR_HIGHLIGHTCOLOR.Index = body_feature_hair_highlight_color;
  7121.     LIST_BODY_FEATURE_LIPSTICK.Index = body_feature_lipstick;
  7122.     LIST_BODY_FEATURE_LIPSTICK_COLOR1.Index = body_feature_lipstick_color1;
  7123.     LIST_BODY_FEATURE_LIPSTICK_COLOR2.Index = body_feature_lipstick_color2;
  7124.     LIST_BODY_FEATURE_MAKEUP.Index = body_feature_makeup;
  7125.     LIST_BODY_FEATURE_MAKEUP_COLOR1.Index = body_feature_makeup_color1;
  7126.     LIST_BODY_FEATURE_MAKEUP_COLOR2.Index = body_feature_makeup_color2;
  7127.     LIST_BODY_FEATURE_SHAPE1.Index = body_feature_shape1;
  7128.     LIST_BODY_FEATURE_SHAPE_MIX.Index = body_feature_shape_mix;
  7129.     LIST_BODY_FEATURE_SHAPE2.Index = body_feature_shape2;
  7130.     LIST_BODY_FEATURE_SKIN1.Index = body_feature_skin1;
  7131.     LIST_BODY_FEATURE_SKIN_MIX.Index = body_feature_skin_mix;
  7132.     LIST_BODY_FEATURE_SKIN2.Index = body_feature_skin2;
  7133.  
  7134.     LIST_BODY_FEATURE_FACE_0.Index = body_feature_faceIdx[0];
  7135.     LIST_BODY_FEATURE_FACE_1.Index = body_feature_faceIdx[1];
  7136.     LIST_BODY_FEATURE_FACE_2.Index = body_feature_faceIdx[2];
  7137.     LIST_BODY_FEATURE_FACE_3.Index = body_feature_faceIdx[3];
  7138.     LIST_BODY_FEATURE_FACE_4.Index = body_feature_faceIdx[4];
  7139.     LIST_BODY_FEATURE_FACE_5.Index = body_feature_faceIdx[5];
  7140.     LIST_BODY_FEATURE_FACE_6.Index = body_feature_faceIdx[6];
  7141.     LIST_BODY_FEATURE_FACE_7.Index = body_feature_faceIdx[7];
  7142.     LIST_BODY_FEATURE_FACE_8.Index = body_feature_faceIdx[8];
  7143.     LIST_BODY_FEATURE_FACE_9.Index = body_feature_faceIdx[9];
  7144.     LIST_BODY_FEATURE_FACE_10.Index = body_feature_faceIdx[10];
  7145.     LIST_BODY_FEATURE_FACE_11.Index = body_feature_faceIdx[11];
  7146.     LIST_BODY_FEATURE_FACE_12.Index = body_feature_faceIdx[12];
  7147.     LIST_BODY_FEATURE_FACE_13.Index = body_feature_faceIdx[13];
  7148.     LIST_BODY_FEATURE_FACE_14.Index = body_feature_faceIdx[14];
  7149.     LIST_BODY_FEATURE_FACE_15.Index = body_feature_faceIdx[15];
  7150.     LIST_BODY_FEATURE_FACE_16.Index = body_feature_faceIdx[16];
  7151.     LIST_BODY_FEATURE_FACE_17.Index = body_feature_faceIdx[17];
  7152.     LIST_BODY_FEATURE_FACE_18.Index = body_feature_faceIdx[18];
  7153.     LIST_BODY_FEATURE_FACE_19.Index = body_feature_faceIdx[19];
  7154.     LIST_BODY_FEATURE_FACE_20.Index = body_feature_faceIdx[20];
  7155.  
  7156.     menu.AddItem(LIST_BODY_FEATURE_EYEBROWS);
  7157.     menu.AddItem(LIST_BODY_FEATURE_EYEBROW_COLOR1);
  7158.     menu.AddItem(LIST_BODY_FEATURE_EYEBROW_COLOR2);
  7159.  
  7160.     menu.AddItem(LIST_BODY_FEATURE_EYE_COLOR);
  7161.     menu.AddItem(LIST_BODY_FEATURE_HAIR_COLOR);
  7162.     menu.AddItem(LIST_BODY_FEATURE_HAIR_HIGHLIGHTCOLOR);
  7163.  
  7164.     menu.AddItem(LIST_BODY_FEATURE_LIPSTICK);
  7165.     menu.AddItem(LIST_BODY_FEATURE_LIPSTICK_COLOR1);
  7166.     menu.AddItem(LIST_BODY_FEATURE_LIPSTICK_COLOR2);
  7167.  
  7168.     menu.AddItem(LIST_BODY_FEATURE_MAKEUP);
  7169.     menu.AddItem(LIST_BODY_FEATURE_MAKEUP_COLOR1);
  7170.     menu.AddItem(LIST_BODY_FEATURE_MAKEUP_COLOR2);
  7171.  
  7172.     menu.AddItem(LIST_BODY_FEATURE_SHAPE1);
  7173.     menu.AddItem(LIST_BODY_FEATURE_SHAPE_MIX);
  7174.     menu.AddItem(LIST_BODY_FEATURE_SHAPE2);
  7175.  
  7176.     menu.AddItem(LIST_BODY_FEATURE_SKIN1);
  7177.     menu.AddItem(LIST_BODY_FEATURE_SKIN_MIX);
  7178.     menu.AddItem(LIST_BODY_FEATURE_SKIN2);
  7179.  
  7180.     menu.AddItem(LIST_BODY_FEATURE_FACE_0);
  7181.     menu.AddItem(LIST_BODY_FEATURE_FACE_1);
  7182.     menu.AddItem(LIST_BODY_FEATURE_FACE_2);
  7183.     menu.AddItem(LIST_BODY_FEATURE_FACE_3);
  7184.     menu.AddItem(LIST_BODY_FEATURE_FACE_4);
  7185.     menu.AddItem(LIST_BODY_FEATURE_FACE_5);
  7186.     menu.AddItem(LIST_BODY_FEATURE_FACE_6);
  7187.     menu.AddItem(LIST_BODY_FEATURE_FACE_7);
  7188.     menu.AddItem(LIST_BODY_FEATURE_FACE_8);
  7189.     menu.AddItem(LIST_BODY_FEATURE_FACE_9);
  7190.     menu.AddItem(LIST_BODY_FEATURE_FACE_10);
  7191.     menu.AddItem(LIST_BODY_FEATURE_FACE_11);
  7192.     menu.AddItem(LIST_BODY_FEATURE_FACE_12);
  7193.     menu.AddItem(LIST_BODY_FEATURE_FACE_13);
  7194.     menu.AddItem(LIST_BODY_FEATURE_FACE_14);
  7195.     menu.AddItem(LIST_BODY_FEATURE_FACE_15);
  7196.     menu.AddItem(LIST_BODY_FEATURE_FACE_16);
  7197.     menu.AddItem(LIST_BODY_FEATURE_FACE_17);
  7198.     menu.AddItem(LIST_BODY_FEATURE_FACE_18);
  7199.     menu.AddItem(LIST_BODY_FEATURE_FACE_19);
  7200.     menu.AddItem(LIST_BODY_FEATURE_FACE_20);
  7201.  
  7202.     menu.AddItem(API.createMenuItem("~g~Salvesta", "Valimiseks vajuta [ENTER]"));
  7203.     menu.AddItem(API.createMenuItem("~r~Reset", "Valimiseks vajuta [ENTER]"));
  7204.     menu.AddItem(API.createMenuItem("~y~Tagasi", "Valimiseks vajuta [ENTER]"));
  7205. }
  7206.  
  7207. function ShowClothingShopMale() {
  7208.     menuIdx = MENU_IDX_NEW_CLOTHINGSHOP;
  7209.     menu.Visible = false;
  7210.     menu.Clear();
  7211.     AddClothingshopListItemsMale();
  7212.  
  7213.     menu.CurrentSelection = 0;
  7214.     menu.RefreshIndex();
  7215.     menu.Visible = true;
  7216.     assignClothIdx = true;
  7217.     chosenClothMenu = "male";
  7218. }
  7219.  
  7220. function ShowClothingShopFemale() {
  7221.     menuIdx = MENU_IDX_NEW_CLOTHINGSHOP;
  7222.     menu.Visible = false;
  7223.     menu.Clear();
  7224.     AddClothingshopListItemsFemale();
  7225.  
  7226.     menu.CurrentSelection = 0;
  7227.     menu.RefreshIndex();
  7228.     menu.Visible = true;
  7229.     assignClothIdx = true;
  7230.     chosenClothMenu = "female";
  7231. }
  7232.  
  7233. function ShowTattooMenu() {
  7234.     menuIdx = MENU_IDX_TATTOOSHOP;
  7235.     menu.Visible = false;
  7236.     menu.Clear();
  7237.     AddTattooshopListItems();
  7238.  
  7239.     menu.CurrentSelection = 0;
  7240.     menu.RefreshIndex();
  7241.     menu.Visible = true;
  7242. }
  7243.  
  7244. function ShowBeardMenu() {
  7245.     menuIdx = MENU_IDX_BEARDS;
  7246.     menu.Visible = false;
  7247.     menu.Clear();
  7248.     AddBeardListItems();
  7249.  
  7250.     menu.CurrentSelection = 0;
  7251.     menu.RefreshIndex();
  7252.     menu.Visible = true;
  7253. }
  7254.  
  7255. function AddClothingshopListItemsMale() {
  7256.     NEW_CLOTH_MALE_haircutList.Index = clothHaircut;
  7257.     NEW_CLOTH_MALE_torsoList.Index = clothTorso;
  7258.     NEW_CLOTH_MALE_legsList.Index = clothLegs;
  7259.     NEW_CLOTH_MALE_feetList.Index = clothFeet;
  7260.     NEW_CLOTH_MALE_accessoryList.Index = clothAccessory;
  7261.     NEW_CLOTH_MALE_undershirtList.Index = clothUndershirt;
  7262.     NEW_CLOTH_MALE_decalsList.Index = clothDecals;
  7263.     NEW_CLOTH_MALE_topList.Index = clothTops;
  7264.     NEW_CLOTH_MALE_hatList.Index = clothHats;
  7265.     NEW_CLOTH_MALE_glassesList.Index = clothGlasses;
  7266.     NEW_CLOTH_MALE_earsList.Index = clothEars;
  7267.    
  7268.     menu.AddItem(NEW_CLOTH_MALE_haircutList);
  7269.     menu.AddItem(NEW_CLOTH_MALE_hatList);
  7270.     menu.AddItem(NEW_CLOTH_MALE_glassesList);
  7271.     menu.AddItem(NEW_CLOTH_MALE_earsList);
  7272.     menu.AddItem(NEW_CLOTH_MALE_accessoryList);
  7273.     menu.AddItem(NEW_CLOTH_MALE_torsoList);
  7274.     menu.AddItem(NEW_CLOTH_MALE_topList);
  7275.     menu.AddItem(NEW_CLOTH_MALE_undershirtList);
  7276.     menu.AddItem(NEW_CLOTH_MALE_legsList);
  7277.     menu.AddItem(NEW_CLOTH_MALE_feetList);
  7278.     menu.AddItem(NEW_CLOTH_MALE_decalsList);
  7279.  
  7280.     menu.AddItem(API.createMenuItem("~g~Edasi & salvesta", "Valimiseks vajuta [ENTER]"));
  7281.     menu.AddItem(API.createMenuItem("~r~Reset", "Valimiseks vajuta [ENTER]"));
  7282.     menu.AddItem(API.createMenuItem("~y~Skinnid", "Valimiseks vajuta [ENTER]"));
  7283.     menu.AddItem(API.createMenuItem("~r~Reset: Soeng", "Valimiseks vajuta [ENTER]"));
  7284.     menu.AddItem(API.createMenuItem("~r~Reset: Keha", "Valimiseks vajuta [ENTER]"));
  7285.     menu.AddItem(API.createMenuItem("~r~Reset: Püksid", "Valimiseks vajuta [ENTER]"));
  7286.     menu.AddItem(API.createMenuItem("~r~Reset: Seljakotid", "Valimiseks vajuta [ENTER]"));
  7287.     menu.AddItem(API.createMenuItem("~r~Reset: Jalatsid", "Valimiseks vajuta [ENTER]"));
  7288.     menu.AddItem(API.createMenuItem("~r~Reset: Aksessuaarid", "Valimiseks vajuta [ENTER]"));
  7289.     menu.AddItem(API.createMenuItem("~r~Reset: Särgid", "Valimiseks vajuta [ENTER]"));
  7290.     menu.AddItem(API.createMenuItem("~r~Reset: Riidekleebised", "Valimiseks vajuta [ENTER]"));
  7291.     menu.AddItem(API.createMenuItem("~r~Reset: Jakid", "Valimiseks vajuta [ENTER]"));
  7292.     menu.AddItem(API.createMenuItem("~r~Reset: Mütsid", "Valimiseks vajuta [ENTER]"));
  7293.     menu.AddItem(API.createMenuItem("~r~Reset: Prillid", "Valimiseks vajuta [ENTER]"));
  7294.     menu.AddItem(API.createMenuItem("~r~Reset: Kõrvad", "Valimiseks vajuta [ENTER]"));
  7295. }
  7296.  
  7297. function AddClothingshopListItemsFemale() {
  7298.     NEW_CLOTH_FEMALE_haircutList.Index = clothHaircut;
  7299.     NEW_CLOTH_FEMALE_torsoList.Index = clothTorso;
  7300.     NEW_CLOTH_FEMALE_legsList.Index = clothLegs;
  7301.     NEW_CLOTH_FEMALE_feetList.Index = clothFeet;
  7302.     NEW_CLOTH_FEMALE_accessoryList.Index = clothAccessory;
  7303.     NEW_CLOTH_FEMALE_undershirtList.Index = clothUndershirt;
  7304.     NEW_CLOTH_FEMALE_decalsList.Index = clothDecals;
  7305.     NEW_CLOTH_FEMALE_topList.Index = clothTops;
  7306.     NEW_CLOTH_FEMALE_hatList.Index = clothHats;
  7307.     NEW_CLOTH_FEMALE_glassesList.Index = clothGlasses;
  7308.     NEW_CLOTH_FEMALE_earsList.Index = clothEars;
  7309.    
  7310.     menu.AddItem(NEW_CLOTH_FEMALE_haircutList);
  7311.     menu.AddItem(NEW_CLOTH_FEMALE_hatList);
  7312.     menu.AddItem(NEW_CLOTH_FEMALE_glassesList);
  7313.     menu.AddItem(NEW_CLOTH_FEMALE_earsList);
  7314.     menu.AddItem(NEW_CLOTH_FEMALE_accessoryList);
  7315.     menu.AddItem(NEW_CLOTH_FEMALE_torsoList);
  7316.     menu.AddItem(NEW_CLOTH_FEMALE_topList);
  7317.     menu.AddItem(NEW_CLOTH_FEMALE_undershirtList);
  7318.     menu.AddItem(NEW_CLOTH_FEMALE_legsList);
  7319.     menu.AddItem(NEW_CLOTH_FEMALE_feetList);
  7320.     menu.AddItem(NEW_CLOTH_FEMALE_decalsList);
  7321.  
  7322.     menu.AddItem(API.createMenuItem("~g~Edasi & salvesta", "Valimiseks vajuta [ENTER]"));
  7323.     menu.AddItem(API.createMenuItem("~r~Reset", "Valimiseks vajuta [ENTER]"));
  7324.     menu.AddItem(API.createMenuItem("~y~Skinnid", "Valimiseks vajuta [ENTER]"));
  7325.     menu.AddItem(API.createMenuItem("~r~Reset: Soeng", "Valimiseks vajuta [ENTER]"));
  7326.     menu.AddItem(API.createMenuItem("~r~Reset: Keha", "Valimiseks vajuta [ENTER]"));
  7327.     menu.AddItem(API.createMenuItem("~r~Reset: Püksid", "Valimiseks vajuta [ENTER]"));
  7328.     menu.AddItem(API.createMenuItem("~r~Reset: Jalatsid", "Valimiseks vajuta [ENTER]"));
  7329.     menu.AddItem(API.createMenuItem("~r~Reset: Aksessuaarid", "Valimiseks vajuta [ENTER]"));
  7330.     menu.AddItem(API.createMenuItem("~r~Reset: Särgid", "Valimiseks vajuta [ENTER]"));
  7331.     menu.AddItem(API.createMenuItem("~r~Reset: Riidekleebised", "Valimiseks vajuta [ENTER]"));
  7332.     menu.AddItem(API.createMenuItem("~r~Reset: Jakid", "Valimiseks vajuta [ENTER]"));
  7333.     menu.AddItem(API.createMenuItem("~r~Reset: Mütsid", "Valimiseks vajuta [ENTER]"));
  7334.     menu.AddItem(API.createMenuItem("~r~Reset: Prillid", "Valimiseks vajuta [ENTER]"));
  7335.     menu.AddItem(API.createMenuItem("~r~Reset: Kõrvad", "Valimiseks vajuta [ENTER]"));
  7336. }
  7337.  
  7338. function AddTattooshopListItems() {
  7339.     LIST_TATTOO_1.Index = tattoo1;
  7340.     LIST_TATTOO_2.Index = tattoo2;
  7341.     LIST_TATTOO_3.Index = tattoo3;
  7342.     LIST_TATTOO_4.Index = tattoo4;
  7343.     LIST_TATTOO_5.Index = tattoo5;
  7344.     LIST_TATTOO_6.Index = tattoo6;
  7345.     LIST_TATTOO_7.Index = tattoo7;
  7346.     LIST_TATTOO_8.Index = tattoo8;
  7347.     LIST_TATTOO_9.Index = tattoo9;
  7348.     LIST_TATTOO_10.Index = tattoo10;
  7349.    
  7350.     menu.AddItem(LIST_TATTOO_1);
  7351.     menu.AddItem(LIST_TATTOO_2);
  7352.     menu.AddItem(LIST_TATTOO_3);
  7353.     menu.AddItem(LIST_TATTOO_4);
  7354.     menu.AddItem(LIST_TATTOO_5);
  7355.     menu.AddItem(LIST_TATTOO_6);
  7356.     menu.AddItem(LIST_TATTOO_7);
  7357.     menu.AddItem(LIST_TATTOO_8);
  7358.     menu.AddItem(LIST_TATTOO_9);
  7359.     menu.AddItem(LIST_TATTOO_10);
  7360.  
  7361.     menu.AddItem(API.createMenuItem("~g~Edasi & salvesta", "Valimiseks vajuta [ENTER]"));
  7362. }
  7363.  
  7364. function AddBeardListItems() {
  7365.     LIST_BEARD.Index = beard;
  7366.     LIST_BEARDCOLOR.Index = beardColor;
  7367.  
  7368.     menu.AddItem(LIST_BEARD);
  7369.     menu.AddItem(LIST_BEARDCOLOR);
  7370.     menu.AddItem(API.createMenuItem("~g~Edasi & salvesta", "Valimiseks vajuta [ENTER]"));
  7371. }
  7372.  
  7373. function ShowCopEquiptment() {
  7374.     menuIdx = MENU_IDX_EQUIPTMENT_COP;
  7375.     menu.Clear();
  7376.  
  7377.     menu.AddItem(API.createMenuItem("Nightstick", "Valimiseks vajuta [ENTER]"));
  7378.     menu.AddItem(API.createMenuItem("Flashlight", "Valimiseks vajuta [ENTER]"));
  7379.     menu.AddItem(API.createMenuItem("CombatPistol", "Valimiseks vajuta [ENTER]"));
  7380.     menu.AddItem(API.createMenuItem("StunGun", "Valimiseks vajuta [ENTER]"));
  7381.     menu.AddItem(API.createMenuItem("SMG", "Valimiseks vajuta [ENTER]"));
  7382.     menu.AddItem(API.createMenuItem("CarbineRifle", "Valimiseks vajuta [ENTER]"));
  7383.     menu.AddItem(API.createMenuItem("AdvancedRifle", "Valimiseks vajuta [ENTER]"));
  7384.     menu.AddItem(API.createMenuItem("SpecialCarbine", "Valimiseks vajuta [ENTER]"));
  7385.     menu.AddItem(API.createMenuItem("BullpupRifle", "Valimiseks vajuta [ENTER]"));
  7386.     menu.AddItem(API.createMenuItem("MarksmanRifle", "Valimiseks vajuta [ENTER]"));
  7387.     menu.AddItem(API.createMenuItem("PumpShotgun", "Valimiseks vajuta [ENTER]"));
  7388.     menu.AddItem(API.createMenuItem("BZGas", "Valimiseks vajuta [ENTER]"));
  7389.     menu.AddItem(API.createMenuItem("Flare", "Valimiseks vajuta [ENTER]"));
  7390.     menu.AddItem(API.createMenuItem("SmokeGrenade", "Valimiseks vajuta [ENTER]"));
  7391.     menu.AddItem(API.createMenuItem("Armor", "Valimiseks vajuta [ENTER]"));
  7392.     menu.AddItem(API.createMenuItem("~y~Skin: Cop01SFY", "Valimiseks vajuta [ENTER]"));
  7393.     menu.AddItem(API.createMenuItem("~y~Skin: Cop01SMY", "Valimiseks vajuta [ENTER]"));
  7394.     menu.AddItem(API.createMenuItem("~y~Skin: CopCutscene", "Valimiseks vajuta [ENTER]"));
  7395.     menu.AddItem(API.createMenuItem("~y~Skin: HWayCop01SMY", "Valimiseks vajuta [ENTER]"));
  7396.     menu.AddItem(API.createMenuItem("~y~Skin: SnowCop01SMM", "Valimiseks vajuta [ENTER]"));
  7397.     menu.AddItem(API.createMenuItem("~y~Skin: Sheriff01SFY", "Valimiseks vajuta [ENTER]"));
  7398.     menu.AddItem(API.createMenuItem("~y~Skin: Sheriff01SMY", "Valimiseks vajuta [ENTER]"));
  7399.     menu.AddItem(API.createMenuItem("~y~Skin: FIBOffice01SMM", "Valimiseks vajuta [ENTER]"));
  7400.     menu.AddItem(API.createMenuItem("~y~Skin: FIBSec01", "Valimiseks vajuta [ENTER]"));
  7401.     menu.AddItem(API.createMenuItem("~y~Skin: SWAT01SMY", "Valimiseks vajuta [ENTER]"));
  7402.     menu.AddItem(API.createMenuItem("~y~Skin: CIASec01SMM", "Valimiseks vajuta [ENTER]"));
  7403.     menu.AddItem(API.createMenuItem("~y~Skin: Tavariietus", "Valimiseks vajuta [ENTER]"));
  7404.  
  7405.     /*menu.AddItem(API.createMenuItem("~b~Riietusese: S2rk", "Toimib ainult freemode skinnidel!"));
  7406.     menu.AddItem(API.createMenuItem("~b~Riietusese: Myts", "Toimib ainult freemode skinnidel!"));
  7407.     menu.AddItem(API.createMenuItem("~b~Riietusese: Lennukiiver 1", "Valimiseks vajuta [ENTER]"));
  7408.     menu.AddItem(API.createMenuItem("~b~Riietusese: Lennukiiver 2", "Valimiseks vajuta [ENTER]"));*/
  7409.  
  7410.     menu.AddItem(API.createMenuItem("~b~Riietusesemed: Mehed", "Valimiseks vajuta [ENTER]"));
  7411.     menu.AddItem(API.createMenuItem("~b~Riietusesemed: Naised", "Valimiseks vajuta [ENTER]"));
  7412.     menu.CurrentSelection = 0;
  7413.     menu.Visible = true;
  7414. }
  7415.  
  7416. API.onResourceStart.connect(function () {
  7417.     resourceStartedTime = API.getGlobalTime();
  7418.  
  7419.     if (camera == null) {
  7420.         camera = API.createCamera(globalCameraPos, globalCameraRot);
  7421.     }
  7422.  
  7423.     API.setCameraPosition(camera, globalCameraPos);
  7424.     API.setCameraRotation(camera, globalCameraRot);
  7425.     freewill = 0;
  7426.  
  7427.     var players = API.getStreamedPlayers();
  7428.  
  7429.     for (var i = players.Length - 1; i >= 0; i--) {
  7430.         setPedCharacter(players[i]);
  7431.     }
  7432.  
  7433.     API.triggerServerEvent("playerResourceStarted");
  7434.     g_menu.ResetKey(menuControl.Back);
  7435.     menu.ResetKey(menuControl.Back);
  7436.  
  7437.     for (var i = 0; i < 636; i++) {
  7438.         g_menu.AddItem(API.createMenuItem("Skin " + i, ""));
  7439.     }
  7440.  
  7441.     settingList.Add("Ei");
  7442.     settingList.Add("Jah");
  7443.  
  7444.     fontList.Add("Chalet London");
  7445.     fontList.Add("House Script");
  7446.     fontList.Add("Monospace");
  7447.     fontList.Add("Charlet Comprime Colonge");
  7448.     fontList.Add("Pricedown");
  7449.  
  7450.     fontSizeList.Add("1");
  7451.     fontSizeList.Add("2");
  7452.     fontSizeList.Add("3");
  7453.     fontSizeList.Add("4");
  7454.     fontSizeList.Add("5");
  7455.  
  7456.     if (typeof CefHelper === 'function') {
  7457.         browser = new CefHelper(loginUrl);
  7458.         browser.show();
  7459.         cefShown = true;
  7460.     }
  7461.  
  7462.     API.setPlayerSkin(1885233650); //  Sets to GTA Online skin.
  7463.     API.callNative("SET_PED_MIN_GROUND_TIME_FOR_STUNGUN", API.getLocalPlayer(), 60000); // Määrab stunguniga pihta saades maas tõmblemise minuti pikkuseks.
  7464. });
  7465.  
  7466. API.onEntityStreamIn.connect((entity, entityType) => {
  7467.     if (entityType == 6) {
  7468.         setPedCharacter(entity);
  7469.     }
  7470. });
  7471.  
  7472.  
  7473. function setPedCharacter(ent) {
  7474.     if (API.isPed(ent) &&
  7475.         API.getEntitySyncedData(ent, "GTAO_HAS_CHARACTER_DATA") === true &&
  7476.         (API.getEntityModel(ent) == 1885233650 || // FreemodeMale
  7477.          API.getEntityModel(ent) == -1667301416)) // FreemodeFemale
  7478.     {
  7479.         // FACE
  7480.         var shapeFirstId = API.getEntitySyncedData(ent, "GTAO_SHAPE_FIRST_ID");
  7481.         var shapeSecondId = API.getEntitySyncedData(ent, "GTAO_SHAPE_SECOND_ID");
  7482.  
  7483.         var skinFirstId = API.getEntitySyncedData(ent, "GTAO_SKIN_FIRST_ID");
  7484.         var skinSecondId = API.getEntitySyncedData(ent, "GTAO_SKIN_SECOND_ID");
  7485.  
  7486.         var shapeMix = API.f(API.getEntitySyncedData(ent, "GTAO_SHAPE_MIX"));
  7487.         var skinMix = API.f(API.getEntitySyncedData(ent, "GTAO_SKIN_MIX"));
  7488.  
  7489.         API.callNative("SET_PED_HEAD_BLEND_DATA", ent, shapeFirstId, shapeSecondId, 0, skinFirstId, skinSecondId, 0, shapeMix, skinMix, 0, false);
  7490.  
  7491.         // HAIR COLOR
  7492.         var hairColor = API.getEntitySyncedData(ent, "GTAO_HAIR_COLOR");
  7493.         var highlightColor = API.getEntitySyncedData(ent, "GTAO_HAIR_HIGHLIGHT_COLOR");
  7494.  
  7495.         API.callNative("_SET_PED_HAIR_COLOR", ent, hairColor, highlightColor);
  7496.  
  7497.         // EYE COLOR
  7498.  
  7499.         var eyeColor = API.getEntitySyncedData(ent, "GTAO_EYE_COLOR");
  7500.  
  7501.         API.callNative("_SET_PED_EYE_COLOR", ent, eyeColor);
  7502.  
  7503.         // EYEBROWS, MAKEUP, LIPSTICK
  7504.         var eyebrowsStyle = API.getEntitySyncedData(ent, "GTAO_EYEBROWS");
  7505.         var eyebrowsColor = API.getEntitySyncedData(ent, "GTAO_EYEBROWS_COLOR");
  7506.         var eyebrowsColor2 = API.getEntitySyncedData(ent, "GTAO_EYEBROWS_COLOR2");
  7507.  
  7508.         API.callNative("SET_PED_HEAD_OVERLAY", ent, 2, eyebrowsStyle, API.f(1));
  7509.  
  7510.         API.callNative("_SET_PED_HEAD_OVERLAY_COLOR", ent, 2, 1, eyebrowsColor, eyebrowsColor2);
  7511.  
  7512.         if (API.hasEntitySyncedData(ent, "GTAO_LIPSTICK")) {
  7513.             var lipstick = API.getEntitySyncedData(ent, "GTAO_LIPSTICK");
  7514.             var lipstickColor = API.getEntitySyncedData(ent, "GTAO_LIPSTICK_COLOR");
  7515.             var lipstickColor2 = API.getEntitySyncedData(ent, "GTAO_LIPSTICK_COLOR2");
  7516.  
  7517.             API.callNative("SET_PED_HEAD_OVERLAY", ent, 8, lipstick, API.f(1));
  7518.             API.callNative("_SET_PED_HEAD_OVERLAY_COLOR", ent, 8, 2, lipstickColor, lipstickColor2);
  7519.         }
  7520.  
  7521.         if (API.hasEntitySyncedData(ent, "GTAO_MAKEUP")) {
  7522.             var makeup = API.getEntitySyncedData(ent, "GTAO_MAKEUP");
  7523.             var makeupColor = API.getEntitySyncedData(ent, "GTAO_MAKEUP_COLOR");
  7524.             var makeupColor2 = API.getEntitySyncedData(ent, "GTAO_MAKEUP_COLOR2");
  7525.  
  7526.             API.callNative("SET_PED_HEAD_OVERLAY", ent, 4, makeup, API.f(1));
  7527.             API.callNative("SET_PED_HEAD_OVERLAY", ent, 8, lipstick, API.f(1));
  7528.             API.callNative("_SET_PED_HEAD_OVERLAY_COLOR", ent, 4, 0, makeupColor, makeupColor2);
  7529.         }
  7530.  
  7531.         // FACE FEATURES (e.g. nose length, chin shape, etc)
  7532.  
  7533.         var faceFeatureList = API.getEntitySyncedData(ent, "GTAO_FACE_FEATURES_LIST");
  7534.  
  7535.         for (var i = 0; i < 21; i++) {
  7536.             API.callNative("_SET_PED_FACE_FEATURE", ent, i, API.f(faceFeatureList[i]));
  7537.         }
  7538.     }
  7539. }
  7540.  
  7541. function UpdateSettingsMenuIndexes() {
  7542.  
  7543.     hudfontSizeList_MONEY.Index = setting_money_font_size;
  7544.     hudfontStyleList_MONEY.Index = setting_money_font_style;
  7545.     hudColorRList_MONEY.Index = setting_money_color_r;
  7546.     hudColorGList_MONEY.Index = setting_money_color_g;
  7547.     hudColorBList_MONEY.Index = setting_money_color_b;
  7548.     hudPosXList_MONEY.Index = setting_money_pos_x;
  7549.     hudPosYList_MONEY.Index = setting_money_pos_y;
  7550.  
  7551.     hudfontSizeList_FOOD.Index = setting_food_font_size;
  7552.     hudfontStyleListFOOD_.Index = setting_food_font_style;
  7553.     hudColorRList_FOOD.Index = setting_food_color_r;
  7554.     hudColorGList_FOOD.Index = setting_food_color_g;
  7555.     hudColorBList_FOOD.Index = setting_food_color_b;
  7556.     hudPosXList_FOOD.Index = setting_food_pos_x;
  7557.     hudPosYList_FOOD.Index = setting_food_pos_y;
  7558.  
  7559.     hudfontSizeList_SPEED.Index = setting_speed_font_size;
  7560.     hudfontStyleList_SPEED.Index = setting_speed_font_style;
  7561.     hudColorRList_SPEED.Index = setting_speed_color_r;
  7562.     hudColorGList_SPEED.Index = setting_speed_color_g;
  7563.     hudColorBList_SPEED.Index = setting_speed_color_b;
  7564.     hudPosXList_SPEED.Index = setting_speed_pos_x;
  7565.     hudPosYList_SPEED.Index = setting_speed_pos_y;
  7566.  
  7567.     hudfontSizeList_FUEL.Index = setting_fuel_font_size;
  7568.     hudfontStyleList_FUEL.Index = setting_fuel_font_style;
  7569.     hudColorRList_FUEL.Index = setting_fuel_color_r;
  7570.     hudColorGList_FUEL.Index = setting_fuel_color_g;
  7571.     hudColorBList_FUEL.Index = setting_fuel_color_b;
  7572.     hudPosXList_FUEL.Index = setting_fuel_pos_x;
  7573.     hudPosYList_FUEL.Index = setting_fuel_pos_y;
  7574.  
  7575.     hudfontSizeList_VEHHP.Index = setting_vehhp_font_size;
  7576.     hudfontStyleList_VEHHP.Index = setting_vehhp_font_style;
  7577.     hudColorRList_VEHHP.Index = setting_vehhp_color_r;
  7578.     hudColorGList_VEHHP.Index = setting_vehhp_color_g;
  7579.     hudColorBList_VEHHP.Index = setting_vehhp_color_b;
  7580.     hudPosXList_VEHHP.Index = setting_vehhp_pos_x;
  7581.     hudPosYList_VEHHP.Index = setting_vehhp_pos_y;
  7582.  
  7583.     hudfontSizeList_COUNTER.Index = setting_counter_font_size;
  7584.     hudfontStyleList_COUNTER.Index = setting_counter_font_style;
  7585.     hudColorRList_COUNTER.Index = setting_counter_color_r;
  7586.     hudColorGList_COUNTER.Index = setting_counter_color_g;
  7587.     hudColorBList_COUNTER.Index = setting_counter_color_b;
  7588.     hudPosXList_COUNTER.Index = setting_counter_pos_x;
  7589.     hudPosYList_COUNTER.Index = setting_counter_pos_y;
  7590.  
  7591.     hudfontSizeList_NOTIFICATION.Index = setting_notification_font_size;
  7592.     hudfontStyleList_NOTIFICATION.Index = setting_notification_font_style;
  7593.     hudColorRList_NOTIFICATION.Index = setting_notification_color_r;
  7594.     hudColorGList_NOTIFICATION.Index = setting_notification_color_g;
  7595.     hudColorBList_NOTIFICATION.Index = setting_notification_color_b;
  7596.     hudPosXList_NOTIFICATION.Index = setting_notification_pos_x;
  7597.     hudPosYList_NOTIFICATION.Index = setting_notification_pos_y;
  7598.  
  7599.     hudfontSizeList_ODOMETER.Index = setting_odometer_font_size;
  7600.     hudfontStyleList_ODOMETER.Index = setting_odometer_font_style;
  7601.     hudColorRList_ODOMETER.Index = setting_odometer_color_r;
  7602.     hudColorGList_ODOMETER.Index = setting_odometer_color_g;
  7603.     hudColorBList_ODOMETER.Index = setting_odometer_color_b;
  7604.     hudPosXList_ODOMETER.Index = setting_odometer_pos_x;
  7605.     hudPosYList_ODOMETER.Index = setting_odometer_pos_y;
  7606.  
  7607.     hudRefreshrateListItem.Index = setting_update_speed;
  7608.  
  7609.     hudfontSizeList_MINIGAME.Index = setting_minigame_font_size;
  7610.     hudfontStyleList_MINIGAME.Index = setting_minigame_font_style;
  7611.     hudColorRList_MINIGAME.Index = setting_minigame_color_r;
  7612.     hudColorGList_MINIGAME.Index = setting_minigame_color_g;
  7613.     hudColorBList_MINIGAME.Index = setting_minigame_color_b;
  7614.     hudPosXList_MINIGAME.Index = setting_minigame_pos_x;
  7615.     hudPosYList_MINIGAME.Index = setting_minigame_pos_y;
  7616.  
  7617.     hudfontSizeList_COMPASS.Index = setting_compass_font_size;
  7618.     hudfontStyleList_COMPASS.Index = setting_compass_font_style;
  7619.     hudColorRList_COMPASS.Index = setting_compass_color_r;
  7620.     hudColorGList_COMPASS.Index = setting_compass_color_g;
  7621.     hudColorBList_COMPASS.Index = setting_compass_color_b;
  7622.     hudPosXList_COMPASS.Index = setting_compass_pos_x;
  7623.     hudPosYList_COMPASS.Index = setting_compass_pos_y;
  7624.  
  7625.     hudOpacityList_MONEY.Index = setting_money_opacity;
  7626.     hudOpacityList_FOOD.Index = setting_food_opacity;
  7627.     hudOpacityList_SPEED.Index = setting_speed_opacity;
  7628.     hudOpacityList_FUEL.Index = setting_fuel_opacity;
  7629.     hudOpacityList_VEHHP.Index = setting_vehhp_opacity;
  7630.     hudOpacityList_COUNTER.Index = setting_counter_opacity;
  7631.     hudOpacityList_NOTIFICATION.Index = setting_notification_opacity;
  7632.     hudOpacityList_ODOMETER.Index = setting_odometer_opacity;
  7633.     hudOpacityList_MINIGAME.Index = setting_minigame_opacity;
  7634.     hudOpacityList_COMPASS.Index = setting_compass_opacity;
  7635. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement