Advertisement
Guest User

Untitled

a guest
Apr 2nd, 2023
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 69.72 KB | None | 0 0
  1. local samp = require 'samp.events'
  2. local imgui = require 'mimgui'
  3. local sampev = require("lib.samp.events")
  4. require "lib.moonloader"
  5. local inicfg = require "inicfg"
  6. local font = renderCreateFont("Arial", 9, 5) -- Font name, font size, font flag.
  7. local mainIni = inicfg.load({
  8. config = {
  9. autostoplesson = false,
  10. english = true
  11. }
  12. }, "SIHelper.ini")
  13.  
  14. if not doesFileExist("moonloader/config/SIHelper.ini") then
  15. inicfg.save(mainIni, "SIHelper.ini")
  16. end
  17.  
  18. local list = {
  19. 'Flying',
  20. 'Sailing',
  21. 'Fishing',
  22. 'Weapon',
  23. 'Materials',
  24. 'All'
  25. };
  26.  
  27. local sw, sh = 355, 425
  28. local active = imgui.new.bool(false)
  29. local checkbox = imgui.new.bool(false)
  30. local ffi = require "ffi"
  31. local buf = imgui.new.char[24]()
  32. local font = renderCreateFont("Arial", 13, 5) -- Font name, font size, font flag.
  33.  
  34.  
  35. function main()
  36. while not isSampAvailable() do wait(0) end
  37. wait (2000)
  38. sampAddChatMessage(" ", 0x00ff78)
  39. sampAddChatMessage(" ", 0x00ff78)
  40. sampAddChatMessage(" ", 0x00ff78)
  41. sampAddChatMessage(" ", 0x00ff78)
  42. sampAddChatMessage(" ", 0x00ff78)
  43. sampAddChatMessage(" ", 0x00ff78)
  44. sampAddChatMessage(" ", 0x00ff78)
  45. sampAddChatMessage(" ", 0x00ff78)
  46. sampAddChatMessage(" ", 0x00ff78)
  47. sampAddChatMessage(" ", 0x00ff78)
  48. sampAddChatMessage(" ", 0x00ff78)
  49. sampAddChatMessage(" ", 0x00ff78)
  50. sampAddChatMessage(" ", 0x00ff78)
  51. sampAddChatMessage(" ", 0x00ff78)
  52. sampAddChatMessage(" ", 0x00ff78)
  53. sampAddChatMessage(" ", 0x00ff78)
  54. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Loaded. Made by {00ff78}21Cristi", 0x00ff78)
  55. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Version: {00ff78}1.5{FFFFFF} | Command list: {00ff78}/sih", 0x00ff78)
  56. sampRegisterChatCommand("sfsi", function() active[0] = not active[0] end)
  57. sampRegisterChatCommand("sih", function() active[1] = not active[1] end)
  58. sampRegisterChatCommand("short", function() active[2] = not active[2] end)
  59. sampRegisterChatCommand("fish1", fish1)
  60. sampRegisterChatCommand("dt", dt)
  61. sampRegisterChatCommand("cmc", cmc)
  62. sampRegisterChatCommand("fish2", fish2)
  63. sampRegisterChatCommand("fish3", fish3)
  64. sampRegisterChatCommand("fish4", fish4)
  65. sampRegisterChatCommand("tfly", flytest)
  66. sampRegisterChatCommand("lssail", lsboat)
  67. sampRegisterChatCommand("lvsail", lvboat)
  68. sampRegisterChatCommand("sfsail", sfboat)
  69. sampRegisterChatCommand("mats1", mats1)
  70. sampRegisterChatCommand("mats2", mats2)
  71. sampRegisterChatCommand("mats3", mats3)
  72. sampRegisterChatCommand("mats4", mats4)
  73. sampRegisterChatCommand("weap1", weap1)
  74. sampRegisterChatCommand("weap2", weap2)
  75. sampRegisterChatCommand("weap3", weap3)
  76. sampRegisterChatCommand("weap4", weap4)
  77. sampRegisterChatCommand("afvr", afvr)
  78. sampRegisterChatCommand("bg", bg)
  79. sampRegisterChatCommand("sa", sa)
  80. sampRegisterChatCommand("sc", sc)
  81. sampRegisterChatCommand("cf", cf)
  82. sampRegisterChatCommand("en", en)
  83. sampRegisterChatCommand("co", co)
  84. sampRegisterChatCommand("cmb", cmb)
  85. sampRegisterChatCommand("mb", mb)
  86. sampRegisterChatCommand("cx", cx)
  87. sampRegisterChatCommand("ct", ct)
  88. sampRegisterChatCommand("cdt", cdt)
  89. sampRegisterChatCommand("missm", missm)
  90. sampRegisterChatCommand("missc", missc)
  91. sampRegisterChatCommand("gj", gj)
  92. sampRegisterChatCommand("ha", ha)
  93. sampRegisterChatCommand('not', ntf)
  94. sampRegisterChatCommand("kc", kc)
  95. sampRegisterChatCommand("czs", czs)
  96. sampRegisterChatCommand("li", li)
  97. sampRegisterChatCommand("sj", sj)
  98. sampRegisterChatCommand("reall", reall)
  99. sampRegisterChatCommand("staxi", staxi)
  100. sampRegisterChatCommand("smech", smech)
  101. sampRegisterChatCommand("smedic", smedic)
  102. sampRegisterChatCommand("ctaxi", ctaxi)
  103. sampRegisterChatCommand("cmedic", cmedic)
  104. sampRegisterChatCommand("cmech", cmech)
  105. sampRegisterChatCommand("emer", emer)
  106. sampRegisterChatCommand("svc", svc)
  107.  
  108.  
  109. sampRegisterChatCommand("asl", function()
  110. mainIni.config.autostoplesson = not mainIni.config.autostoplesson
  111. inicfg.save(mainIni, "SIHelper.ini")
  112. sampAddChatMessage("{00ff78}[SFSI Helper]{FFFFFF} Auto Stoplesson: "..(mainIni.config.autostoplesson and "{00ff00}ON{ffffff}." or "{ff0000}OFF{ffffff}."), -1)
  113. end)
  114.  
  115. sampRegisterChatCommand("lng", function()
  116. mainIni.config.english = not mainIni.config.english
  117. inicfg.save(mainIni, "SIHelper.ini")
  118. sampAddChatMessage(mainIni.config.english and "{00ff78}[SFSI Helper]{FFFFFF} Script's language was set as {33CCFF}English{ffffff}." or "{00ff78}[SFSI Helper]{FFFFFF} Limba scriptului a fost setata ca {33CCFF}Romana{ffffff}.")
  119. end)
  120.  
  121. sampRegisterChatCommand("rl", function(id)
  122. if tonumber(id) ~= nil then
  123. if sampIsPlayerConnected(id) then
  124. sampSendChat(string.format("/requestlicenses %s", sampGetPlayerNickname(id)))
  125. end
  126. else
  127. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  128. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /rl ID", -1)
  129. printStyledString('~w~arguments ~r~missing..', 500, 2)
  130. end
  131. end)
  132.  
  133. sampRegisterChatCommand("all", function(id)
  134. if tonumber(id) ~= nil then
  135. if sampIsPlayerConnected(id) then
  136. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for all licenses." or "/f %s (%s) la mine pentru toate licentele.", sampGetPlayerNickname(id), id))
  137. end
  138. else
  139. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  140. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /all ID", -1)
  141. printStyledString('~w~arguments ~r~missing..', 500, 2)
  142. end
  143. end)
  144.  
  145. sampRegisterChatCommand("acc", function(id)
  146. if tonumber(id) ~= nil then
  147. if sampIsPlayerConnected(id) then
  148. sampSendChat(string.format("/accept needlicense %s", sampGetPlayerNickname(id)))
  149. end
  150. else
  151. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  152. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /acc ID", -1)
  153. printStyledString('~w~arguments ~r~missing..', 500, 2)
  154. end
  155. end)
  156. sampRegisterChatCommand('gl', function(arg)
  157. if not arg:find('^(%d+)%s(%d)$') then sampAddChatMessage('{00ff78}[SFSI Helper] {FFFFFF}Syntax: /gl [ID] [1-5]', -1)
  158. sampAddChatMessage('{00ff78}[SFSI Helper] ID-uri licente: {FFFFFF} 1 - Flying | 2 - Sailing | 3 - Fishing | 4 - Weapon | 5 - Materials ', -1)
  159. printStyledString('~w~arguments ~r~missing..', 500, 2) end
  160. local id, index = arg:match('^(%d+)%s(%d)$');
  161. if not list[tonumber(index)] then return end
  162. sampSendChat(('/givelicense %s %s'):format(id, list[tonumber(index)]));
  163. end);
  164.  
  165. sampRegisterChatCommand('atme', function(arg)
  166. if not arg:find('^(%d+)%s(%d)$') then sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  167. sampAddChatMessage('{00ff78}[SFSI Helper] {FFFFFF}Syntax: /atme [ID] [1-5]', -1)
  168. sampAddChatMessage(mainIni.config.english and '{00ff78}[SFSI Helper] License IDs: {FFFFFF} 1 - Flying | 2 - Sailing | 3 - Fishing | 4 - Weapon | 5 - Materials ' or '{00ff78}[SFSI Helper] ID-uri licente: {FFFFFF} 1 - Flying | 2 - Sailing | 3 - Fishing | 4 - Weapon | 5 - Materials ', -1)
  169. printStyledString('~w~arguments ~r~missing..', 500, 2) end
  170. local id, index = arg:match('^(%d+)%s(%d)$');
  171. if not list[tonumber(index)] then return end
  172. sampSendChat((mainIni.config.english and '/f %s (%s) at me for %s License.' or '/f %s (%s) la mine pentru licenta de %s.'):format(sampGetPlayerNickname(id), id, list[tonumber(index)]));
  173. end)
  174.  
  175. sampRegisterChatCommand("stfly", function(id)
  176. if tonumber(id) ~= nil then
  177. if sampIsPlayerConnected(id) then
  178. sampSendChat(string.format("/startlesson %s flying", sampGetPlayerNickname(id)))
  179. end
  180. else
  181. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  182. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /stfly ID", -1)
  183. printStyledString('~w~arguments ~r~missing..', 500, 2)
  184. end
  185. end)
  186.  
  187. sampRegisterChatCommand("stsail", function(id)
  188. if tonumber(id) ~= nil then
  189. if sampIsPlayerConnected(id) then
  190. sampSendChat(string.format("/startlesson %s sailing", sampGetPlayerNickname(id)))
  191. end
  192. else
  193. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  194. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /stsail ID", -1)
  195. printStyledString('~w~arguments ~r~missing..', 500, 2)
  196. end
  197. end)
  198.  
  199.  
  200. sampRegisterChatCommand("tfail", function(id)
  201. if tonumber(id) ~= nil then
  202. if sampIsPlayerConnected(id) then
  203. sampSendChat(string.format("/stoplesson %s", sampGetPlayerNickname(id)))
  204. sampSendChat(string.format(mainIni.config.english and "Sadly, you failed the License test." or "Din pacate, ai picat testul de licenta.", sampGetPlayerNickname(id)))
  205. end
  206. else
  207. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  208. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /tfail ID", -1)
  209. printStyledString('~w~arguments ~r~missing..', 500, 2)
  210. end
  211. end)
  212. sampRegisterChatCommand("stfish", function(id)
  213. if tonumber(id) ~= nil then
  214. if sampIsPlayerConnected(id) then
  215. sampSendChat(string.format("/startlesson %s fishing", sampGetPlayerNickname(id)))
  216. end
  217. else
  218. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  219. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /stfish ID", -1)
  220. printStyledString('~w~arguments ~r~missing..', 500, 2)
  221. end
  222. end)
  223.  
  224. sampRegisterChatCommand("stmats", function(id)
  225. if tonumber(id) ~= nil then
  226. if sampIsPlayerConnected(id) then
  227. sampSendChat(string.format("/startlesson %s materials", sampGetPlayerNickname(id)))
  228. end
  229. else
  230. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  231. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /stmats ID", -1)
  232. printStyledString('~w~arguments ~r~missing..', 500, 2)
  233. end
  234. end)
  235.  
  236. sampRegisterChatCommand("stweap", function(id)
  237. if tonumber(id) ~= nil then
  238. if sampIsPlayerConnected(id) then
  239. sampSendChat(string.format("/startlesson %s weapon", sampGetPlayerNickname(id)))
  240. end
  241. else
  242. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  243. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /stweap ID", -1)
  244. printStyledString('~w~arguments ~r~missing..', 500, 2)
  245. end
  246. end)
  247.  
  248. sampRegisterChatCommand("sl", function(id)
  249. if tonumber(id) ~= nil then
  250. if sampIsPlayerConnected(id) then
  251. sampSendChat(string.format("/stoplesson %s", sampGetPlayerNickname(id)))
  252. end
  253. else
  254. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  255. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /sl ID", -1)
  256. printStyledString('~w~arguments ~r~missing..', 500, 2)
  257. end
  258. end)
  259. sampRegisterChatCommand("acr", function(id)
  260. if tonumber(id) ~= nil then
  261. if sampIsPlayerConnected(id) then
  262. sampSendChat(string.format("/accept repair %s", sampGetPlayerNickname(id)))
  263. sampSendChat(string.format("/accept refill %s", sampGetPlayerNickname(id)))
  264. end
  265. else
  266. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  267. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /acr ID", -1)
  268. printStyledString('~w~arguments ~r~missing..', 500, 2)
  269. end
  270. end)
  271. sampRegisterChatCommand("rr", function(id)
  272. if tonumber(id) ~= nil then
  273. if sampIsPlayerConnected(id) then
  274. sampSendChat(string.format("/repair %s 1", sampGetPlayerNickname(id)))
  275. sampSendChat(string.format("/refill %s 1", sampGetPlayerNickname(id)))
  276. end
  277. else
  278. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  279. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /rr ID", -1)
  280. printStyledString('~w~arguments ~r~missing..', 500, 2)
  281. end
  282. end)
  283. sampRegisterChatCommand("accepted", function(id)
  284. if tonumber(id) ~= nil then
  285. if sampIsPlayerConnected(id) then
  286. sampSendChat(string.format(mainIni.config.english and "/sx Has someone accepted %s (%s) ?" or "/sx L-a acceptat cineva pe %s (%s) ?", sampGetPlayerNickname(id), id))
  287. end
  288. else
  289. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Error: Arguments {ff0000}missing{ffffff}.", -1)
  290. sampAddChatMessage("{00ff78}[SFSI Helper] {FFFFFF}Syntax:{00ff78} /accepted ID", -1)
  291. printStyledString('~w~arguments ~r~missing..', 500, 2)
  292. end
  293. end)
  294.  
  295.  
  296.  
  297. while true do wait(0)
  298. renderFontDrawText(font, "{00ff78}SFSI Helper {ffffff}v1.5", 1770, 1030, 0xFFFFFFFF)
  299. renderFontDrawText(font, mainIni.config.english and "{00ff78}Language: {33CCFF}EN" or "{00ff78}Language: {33CCFF}RO", 1793, 990, 0xFFFFFFFF)
  300. renderFontDrawText(font, mainIni.config.autostoplesson and "{00ff78}Auto Stoplesson: {00FF00}ON" or "{00ff78}Auto Stoplesson: {ff0000}OFF", 1724, 1010, 0xFFFFFFFF)
  301. end
  302. end
  303.  
  304. imgui.OnInitialize(function()
  305. imgui.GetIO().IniFilename = nil
  306. light_blue_theme()
  307. end)
  308.  
  309.  
  310. local mainFrame = imgui.OnFrame(function() return active[0] end, function(self)
  311. local sw, sh = getScreenResolution()
  312. imgui.SetNextWindowSize(imgui.ImVec2(sw / 5.4, sh / 2.5), imgui.Cond.FirstUseEver)
  313. imgui.SetNextWindowPos(imgui.ImVec2(sw / 1.4, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(-0.3, 0.5))
  314. imgui.Begin('SFSI Helper - License tests menu LEVEL 1-49', active)
  315. if imgui.BeginTabBar('Tabs') then
  316. if imgui.BeginTabItem('Flying') then
  317. imgui.Text(mainIni.config.english and "Client's ID (connected on the server): Level: 1+" or 'ID-ul clientului (conectat pe server): Level: 1+')
  318. imgui.InputText("ID", buf, ffi.sizeof(buf), imgui.InputTextFlags.CharsDecimal)
  319. imgui.Text(mainIni.config.english and 'Ask on /sx if the client was accepted by someone else' or 'Intrebi pe /sx daca clientul a fost acceptat de altcineva')
  320. imgui.SetCursorPos(imgui.ImVec2(10, 115))
  321. if imgui.Button(mainIni.config.english and "Ask" or "Intreaba", imgui.ImVec2(95, 23)) then
  322. if ffi.string(buf) ~= "" then
  323. sampSendChat(string.format(mainIni.config.english and "/sx Has someone accepted %s (%s) ?" or "/sx L-a acceptat cineva pe %s (%s) ?", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  324. end
  325. end
  326. imgui.Text(mainIni.config.english and 'Announce on /f client for Announce on /f client for' or 'Anunta pe /f client pentru Anunta pe /f client pentru')
  327. imgui.SetCursorPos(imgui.ImVec2(10, 160))
  328. if imgui.Button("Flying License", imgui.ImVec2(95, 23)) then
  329. if ffi.string(buf) ~= "" then
  330. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for Flying License." or "/f %s (%s) la mine pentru licenta de Flying.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  331. end
  332. end
  333. imgui.SetCursorPos(imgui.ImVec2(250, 160))
  334. if imgui.Button(mainIni.config.english and "All licenses" or "Toate licentele", imgui.ImVec2(95, 23)) then
  335. if ffi.string(buf) ~= "" then
  336. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for all licenses." or "/f %s (%s) la mine pentru toate licentele.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  337. end
  338. end
  339. imgui.Text(mainIni.config.english and 'Start a lesson with the client Tell the client to get back' or 'Incepe lectia cu clientul Spune-i clientului sa intoarca')
  340. imgui.SetCursorPos(imgui.ImVec2(10, 205))
  341. if imgui.Button("Startlesson", imgui.ImVec2(95, 23)) then
  342. if ffi.string(buf) ~= "" then
  343. sampSendChat(string.format("/startlesson %s flying", sampGetPlayerNickname(ffi.string(buf))))
  344. end
  345. end
  346. imgui.SetCursorPos(imgui.ImVec2(250, 205))
  347. if imgui.Button(mainIni.config.english and "Get back" or "Intoarce", imgui.ImVec2(95, 23)) then
  348. if ffi.string(buf) ~= "" then
  349. sampSendChat(string.format(mainIni.config.english and "%s, you can get back." or "%s, poti sa intorci.", sampGetPlayerNickname(ffi.string(buf))))
  350. end
  351. end
  352. imgui.Text(mainIni.config.english and 'Test instructions' or 'Instructiunile pentru test')
  353. imgui.SetCursorPos(imgui.ImVec2(10, 250))
  354. if imgui.Button(mainIni.config.english and "Instructions" or "Instructiuni", imgui.ImVec2(95, 23)) then
  355. if ffi.string(buf) ~= "" then
  356. sampSendChat(mainIni.config.english and "Drive the Maverick on any airport you want, then land on it." or "Condu Maverick-ul pe orice aeroport doresti, apoi aterizezi.")
  357. sampSendChat(mainIni.config.english and "Once you're there, get back up and get back from where we gone." or "Odata ajuns, reia zborul si intoarce-te de unde am plecat.")
  358. sampSendChat(mainIni.config.english and "If the Maverick's HP reaches 950.0, you failed. You can check it's HP with /dl" or "Daca Maverick-ul atinge sub 950.0HP, esti picat. Poti verifica cu /dl HP-ul.")
  359. end
  360. end
  361. imgui.Text(mainIni.config.english and 'Give the license to the client (if he passed the test)' or 'Acorda licenta clientului (in caz ca a trecut testul)')
  362. imgui.SetCursorPos(imgui.ImVec2(10, 295))
  363. if imgui.Button(mainIni.config.english and "Give" or "Acorda", imgui.ImVec2(95, 23)) then
  364. if ffi.string(buf) ~= "" then
  365. sampSendChat(string.format("/givelicense %s flying", sampGetPlayerNickname(ffi.string(buf))))
  366. end
  367. end
  368. imgui.Text(mainIni.config.english and 'Tell the client he failed the license test' or 'Anunti clientul ca a picat testul de licenta')
  369. imgui.SetCursorPos(imgui.ImVec2(10, 340))
  370. if imgui.Button(mainIni.config.english and "Failed" or "Picat", imgui.ImVec2(95, 23)) then
  371. if ffi.string(buf) ~= "" then
  372. sampSendChat(string.format(mainIni.config.english and "Sadly, you failed the Flying License test." or "Din pacate, ai picat testul pentru licenta de Flying.", sampGetPlayerNickname(ffi.string(buf))))
  373. end
  374. end
  375. imgui.Text(mainIni.config.english and 'Stop the lesson with the client' or 'Opreste lectia cu clientul')
  376. imgui.SetCursorPos(imgui.ImVec2(10, 385))
  377. if imgui.Button("Stoplesson", imgui.ImVec2(95, 23)) then
  378. if ffi.string(buf) ~= "" then
  379. sampSendChat("/stoplesson "..ffi.string(buf))
  380. end
  381. end
  382. imgui.Text(mainIni.config.english and '! Type /asl to automatically stop the lessons flying tab' or '! Scrie /asl pentru a opri automat lectiile flying tab')
  383. imgui.EndTabItem()
  384. end
  385. if imgui.BeginTabItem('Sailing') then
  386. imgui.Text(mainIni.config.english and "Client's ID (connected on the server): Level: 1+" or 'ID-ul clientului (conectat pe server): Level: 1+')
  387. imgui.InputText("ID", buf, ffi.sizeof(buf), imgui.InputTextFlags.CharsDecimal)
  388. imgui.Text(mainIni.config.english and 'Ask on /sx if the client was accepted by someone else' or 'Intrebi pe /sx daca clientul a fost acceptat de altcineva')
  389. imgui.SetCursorPos(imgui.ImVec2(10, 115))
  390. if imgui.Button(mainIni.config.english and "Ask" or "Intreaba", imgui.ImVec2(95, 23)) then
  391. if ffi.string(buf) ~= "" then
  392. sampSendChat(string.format(mainIni.config.english and "/sx Has someone accepted %s (%s) ?" or "/sx L-a acceptat cineva pe %s (%s) ?", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  393. end
  394. end
  395. imgui.Text(mainIni.config.english and 'Announce on /f client for Announce on /f client for' or 'Anunta pe /f client pentru Anunta pe /f client pentru')
  396. imgui.SetCursorPos(imgui.ImVec2(10, 160))
  397. if imgui.Button("Sailing License", imgui.ImVec2(95, 23)) then
  398. if ffi.string(buf) ~= "" then
  399. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for Sailing License." or "/f %s (%s) la mine pentru licenta de Sailing.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  400. end
  401. end
  402. imgui.SetCursorPos(imgui.ImVec2(250, 160))
  403. if imgui.Button(mainIni.config.english and "All licenses" or "Toate licentele", imgui.ImVec2(95, 23)) then
  404. if ffi.string(buf) ~= "" then
  405. sampSendChat(string.format("/f %s (%s) la mine pentru toate licentele.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  406. end
  407. end
  408. imgui.Text(mainIni.config.english and 'Start a lesson with the client Tell the client to get back' or 'Incepe lectia cu clientul Spune-i clientului sa intoarca')
  409. imgui.SetCursorPos(imgui.ImVec2(10, 205))
  410. if imgui.Button("Startlesson", imgui.ImVec2(95, 23)) then
  411. if ffi.string(buf) ~= "" then
  412. sampSendChat(string.format("/startlesson %s sailing", sampGetPlayerNickname(ffi.string(buf))))
  413. end
  414. end
  415. imgui.SetCursorPos(imgui.ImVec2(250, 205))
  416. if imgui.Button(mainIni.config.english and "Get back" or "Intoarce", imgui.ImVec2(95, 23)) then
  417. if ffi.string(buf) ~= "" then
  418. sampSendChat(string.format(mainIni.config.english and "%s, you can get back." or "%s, poti sa intorci.", sampGetPlayerNickname(ffi.string(buf))))
  419. end
  420. end
  421. imgui.Text(mainIni.config.english and 'Test guides for client' or 'Ghidarile pentru test')
  422. imgui.SetCursorPos(imgui.ImVec2(10, 250))
  423. if imgui.Button("Sail LS", imgui.ImVec2(95, 23)) then
  424. if ffi.string(buf) ~= "" then
  425. sampSendChat(mainIni.config.english and "Drive the boat to the Beach LS Lighthouse, then get back." or "Condu barca pana la farul de pe plaja. Odata ajuns, te intorci inapoi.")
  426. sampSendChat(mainIni.config.english and "If the boat reaches below 950.0 HP, you failed. You can check it's HP by /dl command" or "Daca barca atinge sub 950.0 HP, esti picat. Poti verifica HP-ul cu comanda /dl")
  427. end
  428. end
  429. imgui.SetCursorPos(imgui.ImVec2(130, 250))
  430. if imgui.Button("Sail LV", imgui.ImVec2(95, 23)) then
  431. if ffi.string(buf) ~= "" then
  432. sampSendChat(mainIni.config.english and "Drive the boat to the old NG base (the ship next to SF Airport) then get back." or "Condu barca pana la fosta baza NG (vaporul de langa Aero SF). Odata ajuns, te intorci inapoi.")
  433. sampSendChat(mainIni.config.english and "If the boat reaches below 950.0 HP, you failed. You can check it's HP by /dl command" or "Daca barca atinge sub 950.0 HP, esti picat. Poti verifica HP-ul cu comanda /dl")
  434. end
  435. end
  436. imgui.SetCursorPos(imgui.ImVec2(250, 250))
  437. if imgui.Button("Sail SF", imgui.ImVec2(95, 23)) then
  438. if ffi.string(buf) ~= "" then
  439. sampSendChat(mainIni.config.english and "Drive the boat to the Bayside Docks. Once you're there, get back." or "Condu barca pana la docurile din Bayside. Odata ajuns, te intorci inapoi.")
  440. sampSendChat(mainIni.config.english and "If the boat reaches below 950.0 HP, you failed. You can check it's HP by /dl command" or "Daca barca atinge sub 950.0 HP, esti picat. Poti verifica HP-ul cu comanda /dl")
  441. end
  442. end
  443. imgui.Text(mainIni.config.english and 'Give the license to the client (if he passed the test)' or 'Acorda licenta clientului (in caz ca a trecut testul)')
  444. imgui.SetCursorPos(imgui.ImVec2(10, 295))
  445. if imgui.Button(mainIni.config.english and "Give" or "Acorda", imgui.ImVec2(95, 23)) then
  446. if ffi.string(buf) ~= "" then
  447. sampSendChat(string.format("/givelicense %s sailing", sampGetPlayerNickname(ffi.string(buf))))
  448. end
  449. end
  450. imgui.Text(mainIni.config.english and 'Tell the client he failed the license test' or 'Anunti clientul ca a picat testul de licenta')
  451. imgui.SetCursorPos(imgui.ImVec2(10, 340))
  452. if imgui.Button(mainIni.config.english and "Failed" or "Picat", imgui.ImVec2(95, 23)) then
  453. if ffi.string(buf) ~= "" then
  454. sampSendChat(string.format(mainIni.config.english and "Sadly, you failed the Sailing License test." or "Din pacate, ai picat testul pentru licenta de Sailing.", sampGetPlayerNickname(ffi.string(buf))))
  455. end
  456. end
  457. imgui.Text(mainIni.config.english and 'Stop the lesson with the client' or 'Opreste lectia cu clientul')
  458. imgui.SetCursorPos(imgui.ImVec2(10, 385))
  459. if imgui.Button("Stoplesson", imgui.ImVec2(95, 23)) then
  460. if ffi.string(buf) ~= "" then
  461. sampSendChat("/stoplesson "..ffi.string(buf))
  462. end
  463. end
  464. imgui.Text(mainIni.config.english and '! Type /asl to automatically stop the lessons sailing tab' or '! Scrie /asl pentru a opri automat lectiile sailing tab')
  465. imgui.EndTabItem()
  466. end
  467. if imgui.BeginTabItem('Fishing') then
  468. imgui.Text(mainIni.config.english and "Client's ID (connected on the server): Level: 1+" or 'ID-ul clientului (conectat pe server): Level: 1+')
  469. imgui.InputText("ID", buf, ffi.sizeof(buf), imgui.InputTextFlags.CharsDecimal)
  470. imgui.Text(mainIni.config.english and 'Ask on /sx if the client was accepted by someone else' or 'Intrebi pe /sx daca clientul a fost acceptat de altcineva')
  471. imgui.SetCursorPos(imgui.ImVec2(10, 115))
  472. if imgui.Button(mainIni.config.english and "Ask" or "Intreaba", imgui.ImVec2(95, 23)) then
  473. if ffi.string(buf) ~= "" then
  474. sampSendChat(string.format(mainIni.config.english and "/sx Has someone accepted %s (%s) ?" or "/sx L-a acceptat cineva pe %s (%s) ?", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  475. end
  476. end
  477. imgui.Text(mainIni.config.english and 'Announce on /f client for Announce on /f client for' or 'Anunta pe /f client pentru Anunta pe /f client pentru')
  478. imgui.SetCursorPos(imgui.ImVec2(10, 160))
  479. if imgui.Button("Fishing License", imgui.ImVec2(95, 23)) then
  480. if ffi.string(buf) ~= "" then
  481. sampSendChat(string.format(english and "/f %s (%s) at me for Flying License." or "/f %s (%s) la mine pentru licenta de Fishing.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  482. end
  483. end
  484. imgui.SetCursorPos(imgui.ImVec2(250, 160))
  485. if imgui.Button(mainIni.config.english and "All licenses" or "Toate licentele", imgui.ImVec2(95, 23)) then
  486. if ffi.string(buf) ~= "" then
  487. sampSendChat(string.format("/f %s (%s) la mine pentru toate licentele.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  488. end
  489. end
  490. imgui.Text(mainIni.config.english and 'Start a lesson with the client' or 'Incepe lectia cu clientul')
  491. imgui.SetCursorPos(imgui.ImVec2(10, 205))
  492. if imgui.Button("Startlesson", imgui.ImVec2(95, 23)) then
  493. if ffi.string(buf) ~= "" then
  494. sampSendChat(string.format("/startlesson %s fishing", sampGetPlayerNickname(ffi.string(buf))))
  495. end
  496. end
  497. imgui.Text(mainIni.config.english and 'Questions set for license test' or 'Setul de intrebari pentru test')
  498. imgui.SetCursorPos(imgui.ImVec2(10, 250))
  499. if imgui.Button(mainIni.config.english and "Question 1" or "Intrebarea 1", imgui.ImVec2(80, 23)) then
  500. if ffi.string(buf) ~= "" then
  501. sampSendChat(mainIni.config.english and "/cw What's the command for fishing?" or "/cw Cu ce comanda pescuiesti?")
  502. end
  503. end
  504. imgui.SetCursorPos(imgui.ImVec2(95, 250))
  505. if imgui.Button(mainIni.config.english and "Question 2" or "Intrebarea 2", imgui.ImVec2(80, 23)) then
  506. if ffi.string(buf) ~= "" then
  507. sampSendChat(mainIni.config.english and "/cw Where do you fish?" or "/cw Unde pescuiesti?")
  508. end
  509. end
  510. imgui.SetCursorPos(imgui.ImVec2(180, 250))
  511. if imgui.Button(mainIni.config.english and "Question 3" or "Intrebarea 3", imgui.ImVec2(80, 23)) then
  512. if ffi.string(buf) ~= "" then
  513. sampSendChat(mainIni.config.english and "/cw Where do you get the caught fish?" or "/cw Unde duci pestele prins?")
  514. end
  515. end
  516. imgui.SetCursorPos(imgui.ImVec2(265, 250))
  517. if imgui.Button(mainIni.config.english and "Question 4" or "Intrebarea 4", imgui.ImVec2(80, 23)) then
  518. if ffi.string(buf) ~= "" then
  519. sampSendChat(mainIni.config.english and "/cw What do you receive if you fish without license?" or "/cw Ce primesti daca pescuiesti fara licenta?")
  520. end
  521. end
  522. imgui.Text(mainIni.config.english and 'Give the license to the client (if he passed the test)' or 'Acorda licenta clientului (in caz ca a trecut testul)')
  523. imgui.SetCursorPos(imgui.ImVec2(10, 295))
  524. if imgui.Button(mainIni.config.english and "Give" or "Acorda", imgui.ImVec2(95, 23)) then
  525. if ffi.string(buf) ~= "" then
  526. sampSendChat(string.format("/givelicense %s fishing", sampGetPlayerNickname(ffi.string(buf))))
  527. end
  528. end
  529. imgui.Text(mainIni.config.english and 'Tell the client he failed the license test' or 'Anunti clientul ca a picat testul de licenta')
  530. imgui.SetCursorPos(imgui.ImVec2(10, 340))
  531. if imgui.Button(mainIni.config.english and "Failed" or "Picat", imgui.ImVec2(95, 23)) then
  532. if ffi.string(buf) ~= "" then
  533. sampSendChat(string.format(mainIni.config.english and "Sadly, you failed the Fishing License test." or "Din pacate, ai picat testul pentru licenta de Fishing.", sampGetPlayerNickname(ffi.string(buf))))
  534. end
  535. end
  536. imgui.Text(mainIni.config.english and 'Stop the lesson with the client' or 'Opreste lectia cu clientul')
  537. imgui.SetCursorPos(imgui.ImVec2(10, 385))
  538. if imgui.Button("Stoplesson", imgui.ImVec2(95, 23)) then
  539. if ffi.string(buf) ~= "" then
  540. sampSendChat("/stoplesson "..ffi.string(buf))
  541. end
  542. end
  543. imgui.Text(mainIni.config.english and '! Type /asl to automatically stop the lessons fishing tab' or '! Scrie /asl pentru a opri automat lectiile fishing tab')
  544. imgui.EndTabItem()
  545. end
  546. if imgui.BeginTabItem('Weapon') then
  547. imgui.Text(mainIni.config.english and "Client's ID (connected on the server): Level: 5+" or 'ID-ul clientului (conectat pe server): Level: 5+')
  548. imgui.InputText("ID", buf, ffi.sizeof(buf), imgui.InputTextFlags.CharsDecimal)
  549. imgui.Text(mainIni.config.english and 'Ask on /sx if the client was accepted by someone else' or 'Intrebi pe /sx daca clientul a fost acceptat de altcineva')
  550. imgui.SetCursorPos(imgui.ImVec2(10, 115))
  551. if imgui.Button(mainIni.config.english and "Ask" or "Intreaba", imgui.ImVec2(95, 23)) then
  552. if ffi.string(buf) ~= "" then
  553. sampSendChat(string.format(mainIni.config.english and "/sx Has someone accepted %s (%s) ?" or "/sx L-a acceptat cineva pe %s (%s) ?", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  554. end
  555. end
  556. imgui.Text(mainIni.config.english and 'Announce on /f client for Announce on /f client for' or 'Anunta pe /f client pentru Anunta pe /f client pentru')
  557. imgui.SetCursorPos(imgui.ImVec2(10, 160))
  558. if imgui.Button("Weapon License", imgui.ImVec2(105, 23)) then
  559. if ffi.string(buf) ~= "" then
  560. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for Weapon License." or "/f %s (%s) la mine pentru licenta de Weapon.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  561. end
  562. end
  563. imgui.SetCursorPos(imgui.ImVec2(250, 160))
  564. if imgui.Button(mainIni.config.english and "All licenses" or "Toate licentele", imgui.ImVec2(95, 23)) then
  565. if ffi.string(buf) ~= "" then
  566. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for all licenses." or "/f %s (%s) la mine pentru toate licentele.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  567. end
  568. end
  569. imgui.Text(mainIni.config.english and 'Start a lesson with the client' or 'Incepe lectia cu clientul')
  570. imgui.SetCursorPos(imgui.ImVec2(10, 205))
  571. if imgui.Button("Startlesson", imgui.ImVec2(95, 23)) then
  572. if ffi.string(buf) ~= "" then
  573. sampSendChat(string.format("/startlesson %s weapon", sampGetPlayerNickname(ffi.string(buf))))
  574. end
  575. end
  576. imgui.Text(mainIni.config.english and 'Questions set for license test' or 'Setul de intrebari pentru test')
  577. imgui.SetCursorPos(imgui.ImVec2(10, 250))
  578. if imgui.Button(mainIni.config.english and "Question 1" or "Intrebarea 1", imgui.ImVec2(80, 23)) then
  579. if ffi.string(buf) ~= "" then
  580. sampSendChat(mainIni.config.english and "/cw Tell me 10 illegal fire guns from GTA San Andreas." or "/cw Enumera-mi 10 arme ilegale cu foc din GTA San Andreas.")
  581. end
  582. end
  583. imgui.SetCursorPos(imgui.ImVec2(95, 250))
  584. if imgui.Button(mainIni.config.english and "Question 2" or "Intrebarea 2", imgui.ImVec2(80, 23)) then
  585. if ffi.string(buf) ~= "" then
  586. sampSendChat(mainIni.config.english and "/cw Tell me 8 safezones." or "/cw Enumera-mi 8 safezone-uri.")
  587. end
  588. end
  589. imgui.SetCursorPos(imgui.ImVec2(180, 250))
  590. if imgui.Button(mainIni.config.english and "Question 3" or "Intrebarea 3", imgui.ImVec2(80, 23)) then
  591. if ffi.string(buf) ~= "" then
  592. sampSendChat(mainIni.config.english and "/cw What is forbidden to do in these zones?" or "/cw Ce este interzis sa faci in aceste zone?")
  593. end
  594. end
  595. imgui.SetCursorPos(imgui.ImVec2(265, 250))
  596. if imgui.Button(mainIni.config.english and "Question 4" or "Intrebarea 4", imgui.ImVec2(80, 23)) then
  597. if ffi.string(buf) ~= "" then
  598. sampSendChat(mainIni.config.english and "/cw Tell me the syntax of buying a gun." or "/cw Spune-mi sintaxa cu care cumperi o arma.")
  599. end
  600. end
  601. imgui.SetCursorPos(imgui.ImVec2(999, 250))
  602. if imgui.Button("Intrebarea 4", imgui.ImVec2(80, 23)) then
  603. if ffi.string(buf) ~= "" then
  604. sampSendChat("/cw Spune-mi sintaxa cu care cumperi o arma.")
  605. end
  606. end
  607. imgui.Text(mainIni.config.english and 'Give the license to the client (if he passed the test)' or 'Acorda licenta clientului (in caz ca a trecut testul)')
  608. imgui.SetCursorPos(imgui.ImVec2(10, 295))
  609. if imgui.Button(mainIni.config.english and "Give" or "Acorda", imgui.ImVec2(95, 23)) then
  610. if ffi.string(buf) ~= "" then
  611. sampSendChat(string.format("/givelicense %s weapon", sampGetPlayerNickname(ffi.string(buf))))
  612. end
  613. end
  614. imgui.Text(mainIni.config.english and 'Tell the client he failed the license test' or 'Anunti clientul ca a picat testul de licenta')
  615. imgui.SetCursorPos(imgui.ImVec2(10, 340))
  616. if imgui.Button(mainIni.config.english and "Failed" or "Picat", imgui.ImVec2(95, 23)) then
  617. if ffi.string(buf) ~= "" then
  618. sampSendChat(string.format(mainIni.config.english and "Sadly, you failed the Weapon License test." or "Din pacate, ai picat testul pentru licenta de Weapon.", sampGetPlayerNickname(ffi.string(buf))))
  619. end
  620. end
  621. imgui.Text(mainIni.config.english and 'Stop the lesson with the client' or 'Opreste lectia cu clientul')
  622. imgui.SetCursorPos(imgui.ImVec2(10, 385))
  623. if imgui.Button("Stoplesson", imgui.ImVec2(95, 23)) then
  624. if ffi.string(buf) ~= "" then
  625. sampSendChat("/stoplesson "..ffi.string(buf))
  626. end
  627. end
  628. imgui.Text(mainIni.config.english and '! Type /asl to automatically stop the lessons weapon tab' or '! Scrie /asl pentru a opri automat lectiile weapon tab')
  629. imgui.EndTabItem()
  630. end
  631. if imgui.BeginTabItem('Materials') then
  632. imgui.Text(mainIni.config.english and "Client's ID (connected on the server): Level: 5+" or 'ID-ul clientului (conectat pe server): Level: 5+')
  633. imgui.InputText("ID", buf, ffi.sizeof(buf), imgui.InputTextFlags.CharsDecimal)
  634. imgui.Text(mainIni.config.english and 'Ask on /sx if the client was accepted by someone else' or 'Intrebi pe /sx daca clientul a fost acceptat de altcineva')
  635. imgui.SetCursorPos(imgui.ImVec2(10, 115))
  636. if imgui.Button("Intreaba", imgui.ImVec2(80, 23)) then
  637. if ffi.string(buf) ~= "" then
  638. sampSendChat(string.format(mainIni.config.english and "/sx Has someone accepted %s (%s) ?" or "/sx L-a acceptat cineva pe %s (%s) ?", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  639. end
  640. end
  641.  
  642. imgui.Text(mainIni.config.english and 'Announce on /f client for Announce on /f client for' or 'Anunta pe /f client pentru Anunta pe /f client pentru')
  643. imgui.SetCursorPos(imgui.ImVec2(10, 160))
  644. if imgui.Button("Materials License", imgui.ImVec2(95, 23)) then
  645. if ffi.string(buf) ~= "" then
  646. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for Materials License." or "/f %s (%s) la mine pentru licenta de Materials.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  647. end
  648. end
  649. imgui.SetCursorPos(imgui.ImVec2(250, 160))
  650. if imgui.Button(mainIni.config.english and "All licenses" or "Toate licentele", imgui.ImVec2(95, 23)) then
  651. if ffi.string(buf) ~= "" then
  652. sampSendChat(string.format(mainIni.config.english and "/f %s (%s) at me for all licenses." or "/f %s (%s) la mine pentru toate licentele.", sampGetPlayerNickname(ffi.string(buf)), ffi.string(buf)))
  653. end
  654. end
  655.  
  656. imgui.Text(mainIni.config.english and 'Start a lesson with the client' or 'Incepe lectia cu clientul')
  657. imgui.SetCursorPos(imgui.ImVec2(10, 205))
  658. if imgui.Button("Startlesson", imgui.ImVec2(95, 23)) then
  659. if ffi.string(buf) ~= "" then
  660. sampSendChat(string.format("/startlesson %s materials", sampGetPlayerNickname(ffi.string(buf))))
  661. end
  662. end
  663.  
  664.  
  665. imgui.Text(mainIni.config.english and 'Questions set for license test' or 'Setul de intrebari pentru test')
  666. imgui.SetCursorPos(imgui.ImVec2(10, 250))
  667. if imgui.Button(mainIni.config.english and "Question 1" or "Intrebarea 1", imgui.ImVec2(80, 23)) then
  668. if ffi.string(buf) ~= "" then
  669. sampSendChat(mainIni.config.english and "/cw What command do you use for buying materials?" or "/cw Cu ce comanda cumperi materiale?")
  670. end
  671. end
  672. imgui.SetCursorPos(imgui.ImVec2(95, 250))
  673. if imgui.Button(mainIni.config.english and "Question 2" or "Intrebarea 2", imgui.ImVec2(80, 23)) then
  674. if ffi.string(buf) ~= "" then
  675. sampSendChat(mainIni.config.english and "/cw Where are you not allowed to sell guns?" or "/cw Unde nu ai voie sa vinzi arme?")
  676. end
  677. end
  678. imgui.SetCursorPos(imgui.ImVec2(180, 250))
  679. if imgui.Button(mainIni.config.english and "Question 3" or "Intrebarea 3", imgui.ImVec2(80, 23)) then
  680. if ffi.string(buf) ~= "" then
  681. sampSendChat(mainIni.config.english and "/cw Tell me 5 safezones." or "/cw Enumera-mi 5 safezone-uri.")
  682. end
  683. end
  684. imgui.SetCursorPos(imgui.ImVec2(265, 250))
  685. if imgui.Button(mainIni.config.english and "Question 4" or "Intrebarea 4", imgui.ImVec2(80, 23)) then
  686. if ffi.string(buf) ~= "" then
  687. sampSendChat(mainIni.config.english and "/cw What command do you use for selling a gun?" or "/cw Cu ce comanda vinzi o arma?")
  688. end
  689. end
  690. imgui.Text(mainIni.config.english and 'Give the license to the client (if he passed the test)' or 'Acorda licenta clientului (in caz ca a trecut testul)')
  691.  
  692. imgui.SetCursorPos(imgui.ImVec2(10, 295))
  693. if imgui.Button(mainIni.config.english and "Give" or "Acorda", imgui.ImVec2(80, 23)) then
  694. if ffi.string(buf) ~= "" then
  695. sampSendChat(string.format("/givelicense %s materials", sampGetPlayerNickname(ffi.string(buf))))
  696. end
  697. end
  698. imgui.Text(mainIni.config.english and 'Tell the client he failed the license test' or 'Anunti clientul ca a picat testul de licenta')
  699. imgui.SetCursorPos(imgui.ImVec2(10, 340))
  700. if imgui.Button(mainIni.config.english and "Failed" or "Picat", imgui.ImVec2(80, 23)) then
  701. if ffi.string(buf) ~= "" then
  702. sampSendChat(string.format(mainIni.config.english and "Sadly, you failed the Materials License test." or "Din pacate, ai picat testul pentru licenta de Materials.", sampGetPlayerNickname(ffi.string(buf))))
  703. end
  704. end
  705. imgui.Text(mainIni.config.english and 'Stop the lesson with the client' or 'Opreste lectia cu clientul')
  706. imgui.SetCursorPos(imgui.ImVec2(10, 385))
  707. if imgui.Button("Stoplesson", imgui.ImVec2(80, 23)) then
  708. if ffi.string(buf) ~= "" then
  709. sampSendChat("/stoplesson "..ffi.string(buf))
  710. end
  711. end
  712. imgui.Text(mainIni.config.english and '! Type /asl to automatically stop the lessons materials tab' or '! Scrie /asl pentru a opri automat lectiile materials tab')
  713.  
  714. imgui.EndTabItem()
  715. end
  716. if imgui.BeginTabItem('Settings') then
  717. imgui.Text(mainIni.config.english and "Script's language:" or 'Limba scriptului:')
  718. if imgui.Button(mainIni.config.english and "English" or "Romana") then
  719. mainIni.config.english = not mainIni.config.english
  720. sampAddChatMessage(mainIni.config.english and "{00ff78}[SFSI Helper]{FFFFFF} Script's language was set as {33CCFF}English{ffffff}." or "{00ff78}[SFSI Helper]{FFFFFF} Limba scriptului a fost setata ca {33CCFF}Romana{ffffff}.")
  721. inicfg.save(mainIni, "SIHelper.ini")
  722. end
  723. imgui.Text(mainIni.config.autostoplesson and "Auto Stoplesson:" or 'Auto Stoplesson:')
  724. if imgui.Button(mainIni.config.autostoplesson and "ON" or "OFF") then
  725. mainIni.config.autostoplesson = not mainIni.config.autostoplesson
  726. sampAddChatMessage("{00ff78}[SFSI Helper]{FFFFFF} Auto Stoplesson: "..(mainIni.config.autostoplesson and "{00ff00}ON{ffffff}." or "{ff0000}OFF{ffffff}."), -1)
  727. inicfg.save(mainIni, "SIHelper.ini")
  728. end
  729. imgui.EndTabItem()
  730. end
  731. imgui.EndTabBar()
  732. end
  733. imgui.End()
  734. end)
  735.  
  736. local mainFrame = imgui.OnFrame(function() return active[1] end, function(self)
  737. local sw, sh = getScreenResolution()
  738. imgui.SetNextWindowSize(imgui.ImVec2(sw / 4.5, sh / 2.4), imgui.Cond.FirstUseEver)
  739. imgui.SetNextWindowPos(imgui.ImVec2(sw / 3.0, sh / 1.9), imgui.Cond.FirstUseEver, imgui.ImVec2(-0.3, 0.5))
  740. imgui.Begin('SFSI Helper - Commands list by 21Cristi', active)
  741. imgui.Text(mainIni.config.english and '/sfsi - Show the license test menu.' or '/sfsi - Afiseaza meniul pentru testele de licente.')
  742. imgui.Text(mainIni.config.english and '/dt - Get on duty. (/duty shortcut)' or '/dt - Te pui la datorie. (prescurtare /duty)')
  743. imgui.Text(mainIni.config.english and '/acc (ID) - ask the player to show his licenses.' or '/acc (ID) - accepti o cerere de licente a unui jucator.')
  744. imgui.Text(mainIni.config.english and '/accepted (ID) - Ask on /sx if someone accepted the client.' or '/accepted (ID) - Intrebi pe /sx daca a preluat cineva dinaintea ta clientul.')
  745. imgui.Text(mainIni.config.english and '/atme (ID) [1-5] - Announce on /f a client to you for a license.' or '/atme (ID) [1-5] - Anunti pe /f client la tine pentru o anume licenta.')
  746. imgui.Text(mainIni.config.english and '/all (ID) - Announce on /f a client for all licenses.' or '/all (ID) - Anunti pe /f client la tine pentru toate licentele.')
  747. imgui.Text(mainIni.config.english and '/asl - Toggle Auto Stoplesson feature.' or '/asl - Pornesti / Opresti functia Auto Stoplesson.')
  748. imgui.Text(mainIni.config.english and '/lng - Change the script language.' or '/lng - Schimba limba scriptului.')
  749. imgui.Text(mainIni.config.english and '/gl (ID) [1-5] - Give the player a license.' or '/gl (ID) [1-5] - Ii oferi unui jucator o licenta.')
  750. imgui.Text(mainIni.config.english and '/st(fly/sail/fish/weap/mats) (ID) - start a lesson with a player.' or '/st(fly/sail/fish/weap/mats) (ID) - incepi o lectie cu un jucator.')
  751. imgui.Text(mainIni.config.english and '/sl (ID) - stop a lesson with a player.' or '/sl (ID) - incetezi o lectie cu un jucator.')
  752. imgui.Text(mainIni.config.english and '/tfail (ID) - tell the client that he failed the test.' or '/tfail (ID) - anunti un jucator ca a picat testul si opreste lectia.')
  753. imgui.Text(mainIni.config.english and '/tfly - Informations about Flying License.' or '/tfly - Informatii legate de licenta de Flying.')
  754. imgui.Text(mainIni.config.english and '/lssail - Sailing LS test info.' or '/lssail - Informatii test Sailing LS.')
  755. imgui.Text(mainIni.config.english and '/lvsail - Sailing LV test info.' or '/lvsail - Informatii test Sailing LV.')
  756. imgui.Text(mainIni.config.english and '/sfsail - Sailing SF test info.' or '/sfsail - Informatii test Sailing SF.')
  757. imgui.Text(mainIni.config.english and '/fish(1-4) - Fishing License questions.' or '/fish(1-4) - Intrebarile pentru testul de licenta Fishing.')
  758. imgui.Text(mainIni.config.english and '/weap(1-4) - Weapon License questions.' or '/weap(1-4) - Intrebarile pentru testul de licenta Weapon.')
  759. imgui.Text(mainIni.config.english and '/mats(1-4) - Materials License questions.' or '/mats(1-4) - Intrebarile pentru testul de licenta Materials.')
  760. imgui.Text(mainIni.config.english and '/short - Show a dialog with the shortened commands on the server.' or '/short - Afisezi un dialog cu comenzile prescurtate de pe server.')
  761. imgui.Text(' ')
  762. imgui.Text(' SFSI Helper - current version: v1.5')
  763. imgui.Text(' made by 21Cristi')
  764. imgui.Text(' contact: Cristi#1098')
  765.  
  766. imgui.SetCursorPos(imgui.ImVec2(40, 415))
  767. if imgui.Button(mainIni.config.english and "Close" or "Inchide", imgui.ImVec2(80, 23)) then
  768. sampProcessChatInput("/sih")
  769. end
  770. imgui.SetCursorPos(imgui.ImVec2(130, 415))
  771. if imgui.Button("Short commands", imgui.ImVec2(105, 23)) then
  772. sampProcessChatInput("/short")
  773. sampProcessChatInput("/sih")
  774. end
  775. imgui.SetCursorPos(imgui.ImVec2(245, 415))
  776. if imgui.Button("SFSI License Tests", imgui.ImVec2(130, 23)) then
  777. sampProcessChatInput("/sfsi")
  778. sampProcessChatInput("/sih")
  779. end
  780.  
  781. imgui.End()
  782. end)
  783.  
  784. local mainFrame = imgui.OnFrame(function() return active[2] end, function(self)
  785. local sw, sh = getScreenResolution()
  786. imgui.SetNextWindowSize(imgui.ImVec2(sw / 7, sh / 1.8), imgui.Cond.FirstUseEver)
  787. imgui.SetNextWindowPos(imgui.ImVec2(sw / 2.5, sh / 2.1), imgui.Cond.FirstUseEver, imgui.ImVec2(-0.3, 0.5))
  788. imgui.Begin(mainIni.config.english and 'SFSI Helper - Shortened commands' or 'SFSI Helper - Comenzi prescurtate', active)
  789. imgui.Text(mainIni.config.english and '/cmc - Clear your chat' or '/cmc - Stergi chat-ul.')
  790. imgui.Text(mainIni.config.english and '/bg /buygun deagle/m4 with 100/200 bullets.' or '/bg - /buygun deagle/m4 cu 100/200 gloante.')
  791. imgui.Text('/sa - /stopanim')
  792. imgui.Text('/sc - /spawnchange')
  793. imgui.Text('/cf - /cancel find')
  794. imgui.Text('/en - /engine')
  795. imgui.Text('/co - /costumes')
  796. imgui.Text('/mb - /members')
  797. imgui.Text('/cmb - /clanmembers')
  798. imgui.Text('/cxp - /clanxp')
  799. imgui.Text('/ct - /clanturfs')
  800. imgui.Text('/missm - /missed messages')
  801. imgui.Text('/missc - /missed calls')
  802. imgui.Text('/gj - /getjob')
  803. imgui.Text('/ha - /heal')
  804. imgui.Text('/not - /notifications')
  805. imgui.Text('/kc - /killcp')
  806. imgui.Text('/czs - /clanzones')
  807. imgui.Text('/li - /lights')
  808. imgui.Text('/sj - /switchjob | /swapjob')
  809. imgui.Text('/reall - /repair & /refill (Skill 5 Mechanic)')
  810. imgui.Text('/staxi - /service taxi')
  811. imgui.Text('/smedic - /service medic')
  812. imgui.Text('/smech - /service mechanic')
  813. imgui.Text('/ctaxi - /cancel taxi')
  814. imgui.Text('/cmedic - /cancel medic')
  815. imgui.Text('/cmech - /cancel mechanic')
  816. imgui.Text('/emer - /emergency')
  817. imgui.Text('/cdt - /clanduty')
  818. imgui.Text('/svc - /service calls')
  819. imgui.Text(mainIni.config.english and '/rr (ID) - repair/refill to someone for 1$' or '/rr (ID) - repair / refill cuiva pe 1$')
  820. imgui.Text(mainIni.config.english and '/acr (ID) - /accept repair/refill from someone' or '/acr (ID) - /accept repair/refill de la cineva')
  821.  
  822. imgui.SetCursorPos(imgui.ImVec2(85, 555))
  823. if imgui.Button("Inchide", imgui.ImVec2(90, 33)) then
  824. sampProcessChatInput("/short")
  825. end
  826.  
  827.  
  828. imgui.End()
  829. end)
  830. function light_blue_theme()
  831. imgui.SwitchContext()
  832. local style = imgui.GetStyle()
  833. local colors = style.Colors
  834. local clr = imgui.Col
  835. local ImVec4 = imgui.ImVec4
  836.  
  837. imgui.GetStyle().WindowPadding = imgui.ImVec2(5, 5)
  838. imgui.GetStyle().FramePadding = imgui.ImVec2(5, 5)
  839. imgui.GetStyle().ItemSpacing = imgui.ImVec2(3, 2)
  840. imgui.GetStyle().ItemInnerSpacing = imgui.ImVec2(2, 2)
  841. imgui.GetStyle().TouchExtraPadding = imgui.ImVec2(0, 0)
  842. imgui.GetStyle().IndentSpacing = 0
  843. imgui.GetStyle().ScrollbarSize = 10
  844. imgui.GetStyle().GrabMinSize = 10
  845.  
  846. --==[ BORDER ]==--
  847. imgui.GetStyle().WindowBorderSize = 1
  848. imgui.GetStyle().ChildBorderSize = 1
  849. imgui.GetStyle().PopupBorderSize = 1
  850. imgui.GetStyle().FrameBorderSize = 1
  851. imgui.GetStyle().TabBorderSize = 1
  852.  
  853. --==[ ROUNDING ]==--
  854. imgui.GetStyle().WindowRounding = 8
  855. imgui.GetStyle().ChildRounding = 8
  856. imgui.GetStyle().FrameRounding = 8
  857. imgui.GetStyle().PopupRounding = 8
  858. imgui.GetStyle().ScrollbarRounding = 8
  859. imgui.GetStyle().GrabRounding = 8
  860. imgui.GetStyle().TabRounding = 8
  861.  
  862. colors[clr.FrameBg] = ImVec4(0.16, 0.48, 0.42, 0.54)
  863. colors[clr.FrameBgHovered] = ImVec4(0.26, 0.98, 0.85, 0.40)
  864. colors[clr.FrameBgActive] = ImVec4(0.26, 0.98, 0.85, 0.67)
  865. colors[clr.TitleBg] = ImVec4(0.04, 0.04, 0.04, 1.00)
  866. colors[clr.TitleBgActive] = ImVec4(0.06, 0.88, 0.35, 0.50)
  867. colors[clr.TitleBgCollapsed] = ImVec4(0.00, 0.00, 0.00, 0.51)
  868. colors[clr.CheckMark] = ImVec4(0.26, 0.98, 0.85, 1.00)
  869. colors[clr.SliderGrab] = ImVec4(0.24, 0.88, 0.77, 1.00)
  870. colors[clr.SliderGrabActive] = ImVec4(0.26, 0.98, 0.85, 1.00)
  871. colors[clr.Button] = ImVec4(0.16, 0.88, 0.55, 0.50)
  872. colors[clr.ButtonHovered] = ImVec4(0.16, 0.78, 0.55, 0.20)
  873. colors[clr.ButtonActive] = ImVec4(0.06, 0.98, 0.82, 1.00)
  874. colors[clr.Header] = ImVec4(0.26, 0.98, 0.85, 0.31)
  875. colors[clr.HeaderHovered] = ImVec4(0.26, 0.98, 0.85, 0.80)
  876. colors[clr.HeaderActive] = ImVec4(0.26, 0.98, 0.85, 1.00)
  877. colors[clr.Separator] = colors[clr.Border]
  878. colors[clr.SeparatorHovered] = ImVec4(0.10, 0.75, 0.63, 0.78)
  879. colors[clr.SeparatorActive] = ImVec4(2.10, 0.75, 0.63, 1.00)
  880. colors[clr.ResizeGrip] = ImVec4(0.26, 0.98, 0.85, 0.25)
  881. colors[clr.ResizeGripHovered] = ImVec4(0.26, 0.98, 0.85, 0.67)
  882. colors[clr.ResizeGripActive] = ImVec4(0.26, 0.98, 0.85, 0.95)
  883. colors[clr.PlotLines] = ImVec4(0.61, 0.61, 0.61, 1.00)
  884. colors[clr.PlotLinesHovered] = ImVec4(1.00, 0.81, 0.35, 1.00)
  885. colors[clr.TextSelectedBg] = ImVec4(0.26, 0.98, 0.85, 0.35)
  886. colors[clr.Text] = ImVec4(1.00, 1.00, 1.00, 1.00)
  887. colors[clr.TextDisabled] = ImVec4(0.50, 0.50, 0.50, 1.00)
  888. colors[clr.WindowBg] = ImVec4(0.06, 0.06, 0.06, 0.94)
  889. colors[clr.ChildBg] = ImVec4(1.00, 1.00, 1.00, 0.00)
  890. colors[clr.PopupBg] = ImVec4(0.08, 0.08, 0.08, 0.94)
  891. colors[clr.Border] = ImVec4(0.43, 0.43, 0.50, 0.50)
  892. colors[clr.BorderShadow] = ImVec4(0.00, 0.00, 0.00, 0.00)
  893. colors[clr.MenuBarBg] = ImVec4(0.14, 0.14, 0.14, 1.00)
  894. colors[clr.ScrollbarBg] = ImVec4(0.02, 0.02, 0.02, 0.53)
  895. colors[clr.ScrollbarGrab] = ImVec4(0.31, 0.31, 0.31, 1.00)
  896. colors[clr.ScrollbarGrabHovered] = ImVec4(0.41, 0.41, 0.41, 1.00)
  897. colors[clr.ScrollbarGrabActive] = ImVec4(0.51, 0.51, 0.51, 1.00)
  898. colors[clr.PlotHistogram] = ImVec4(0.90, 0.70, 0.00, 1.00)
  899. colors[clr.PlotHistogramHovered] = ImVec4(1.00, 0.60, 0.00, 1.00)
  900. end
  901.  
  902.  
  903. function sampev.onServerMessage(color, text)
  904. if mainIni.config.autostoplesson then
  905.  
  906. if text:find("%* You gave a Flying License to (.+)") then
  907. lua_thread.create(function() wait(50)
  908. local name = text:match("%* You gave a Flying License to (.+)")
  909. sampSendChat("/stoplesson "..name)
  910. end)
  911. end
  912.  
  913. if text:find("%* You gave a Sailing License to (.+)") then
  914. lua_thread.create(function() wait(50)
  915. local name = text:match("%* You gave a Sailing License to (.+)")
  916. sampSendChat("/stoplesson "..name)
  917. end)
  918. end
  919.  
  920. if text:find("%* You gave a Fishing License to (.+)") then
  921. lua_thread.create(function() wait(50)
  922. local name = text:match("%* You gave a Fishing License to (.+)")
  923. sampSendChat("/stoplesson "..name)
  924. end)
  925. end
  926.  
  927. if text:find("%* You gave a Weapon License to (.+)") then
  928. lua_thread.create(function() wait(50)
  929. local name = text:match("%* You gave a Weapon License to (.+)")
  930. sampSendChat("/stoplesson "..name)
  931. end)
  932. end
  933.  
  934. if text:find("%* You gave a Materials License to (.+)") then
  935. lua_thread.create(function() wait(50)
  936. local name = text:match("%* You gave a Materials License to (.+)")
  937. sampSendChat("/stoplesson "..name)
  938. end)
  939. end
  940. if text:find("%* I%-ai acordat Licenta de navigatie lui (.+)") then
  941. lua_thread.create(function() wait(50)
  942. local name = text:match("%* I%-ai acordat Licenta de navigatie lui (.+)")
  943. sampSendChat("/stoplesson "..name)
  944. end)
  945. end
  946.  
  947. if text:find("%* I%-ai acordat Licenta de pilot lui (.+)") then
  948. lua_thread.create(function() wait(50)
  949. local name = text:match("%* I%-ai acordat Licenta de pilot lui (.+)")
  950. sampSendChat("/stoplesson "..name)
  951. end)
  952. end
  953.  
  954. if text:find("%* I%-ai acordat Licenta de pescar lui (.+)") then
  955. lua_thread.create(function() wait(50)
  956. local name = text:match("%* I%-ai acordat Licenta de pescar lui (.+)")
  957. sampSendChat("/stoplesson "..name)
  958. end)
  959. end
  960.  
  961. if text:find("%* I%-ai acordat Licenta de materiale lui (.+)") then
  962. lua_thread.create(function() wait(50)
  963. local name = text:match("%* I%-ai acordat Licenta de materiale lui (.+)")
  964. sampSendChat("/stoplesson "..name)
  965. end)
  966. end
  967.  
  968. if text:find("%* I%-ai acordat Permisul de port%-arma lui (.+)") then
  969. lua_thread.create(function() wait(50)
  970. local name = text:match("%* I%-ai acordat Permisul de port%-arma lui (.+)")
  971. sampSendChat("/stoplesson "..name)
  972. end)
  973. end
  974. end
  975. end
  976.  
  977. function sampev.onSendCommand(command)
  978. if command:find("accepted %d+") then
  979. local Id = command:match("accepted (%d+)")
  980. sampSendChat((mainIni.config.english and "/sx Has someone accepted %s (%s) ?" or "/sx L-a acceptat cineva pe %s (%s) ?"):format(sampGetPlayerNickname(Id), Id))
  981. end
  982. if command:find("aepjaeajfpjpeo %d+") then
  983. local Id = command:match("aepjaeajfpjpeo (%d+)")
  984. sampSendChat((" %s (%s) former command."):format(sampGetPlayerNickname(Id), Id))
  985. end
  986. end
  987.  
  988. function fish1()
  989. lua_thread.create(function()
  990. sampSendChat(mainIni.config.english and "/cw What command do you use for fishing?" or "/cw Cu ce comanda pescuiesti?")
  991. end)
  992. end
  993.  
  994. function fish2()
  995. lua_thread.create(function()
  996. sampSendChat(mainIni.config.english and "/cw Where do you fish?" or "/cw Unde pescuiesti?")
  997. end)
  998. end
  999.  
  1000. function fish3()
  1001. lua_thread.create(function()
  1002. sampSendChat(mainIni.config.english and "/cw Where do you take the caught fish?" or "/cw Unde duci pestele prins?")
  1003. end)
  1004. end
  1005.  
  1006. function fish1()
  1007. lua_thread.create(function()
  1008. sampSendChat(mainIni.config.english and "/cw What command do you use for fishing?" or "/cw Cu ce comanda pescuiesti?")
  1009. end)
  1010. end
  1011.  
  1012. function fish4()
  1013. lua_thread.create(function()
  1014. sampSendChat(mainIni.config.english and "/cw What do you get if you fish without license?" or "/cw Ce primesti daca pescuiesti fara licenta?")
  1015. end)
  1016. end
  1017.  
  1018. function tfly()
  1019. lua_thread.create(function()
  1020. sampSendChat(mainIni.config.english and "Drive the Maverick on any airport you want, then land on it." or "Condu Maverick-ul pe orice aeroport doresti, apoi aterizezi.")
  1021. sampSendChat(mainIni.config.english and "Once you're there, get back up and get back from where we gone." or "Odata ajuns, reia zborul si intoarce-te de unde am plecat.")
  1022. sampSendChat(mainIni.config.english and "If the Maverick's HP reaches 950.0, you failed. You can check it's HP with /dl" or "Daca Maverick-ul atinge sub 950.0HP, esti picat. Poti verifica cu /dl HP-ul.")
  1023. end)
  1024. end
  1025.  
  1026. function lssail()
  1027. lua_thread.create(function()
  1028. sampSendChat(mainIni.config.english and "Drive the boat to the Beach LS Lighthouse, then get back." or "Condu barca pana la farul de pe plaja. Odata ajuns, te intorci inapoi.")
  1029. sampSendChat(mainIni.config.english and "If the boat reaches below 950.0 HP, you failed. You can check it's HP by /dl command" or "Daca barca atinge sub 950.0 HP, esti picat. Poti verifica HP-ul cu comanda /dl")
  1030. end)
  1031. end
  1032.  
  1033. function lvsail()
  1034. lua_thread.create(function()
  1035. sampSendChat(mainIni.config.english and "Drive the boat to the old NG base (the ship next to SF Airport) then get back." or "Condu barca pana la fosta baza NG (vaporul de langa Aero SF). Odata ajuns, te intorci inapoi.")
  1036. sampSendChat(mainIni.config.english and "If the boat reaches below 950.0 HP, you failed. You can check it's HP by /dl command" or "Daca barca atinge sub 950.0 HP, esti picat. Poti verifica HP-ul cu comanda /dl")
  1037. end)
  1038. end
  1039.  
  1040. function sfsail()
  1041. lua_thread.create(function()
  1042. sampSendChat(mainIni.config.english and "Drive the boat to the Bayside Docks. Once you're there, get back." or "Condu barca pana la docurile din Bayside. Odata ajuns, te intorci inapoi.")
  1043. sampSendChat(mainIni.config.english and "If the boat reaches below 950.0 HP, you failed. You can check it's HP by /dl command" or "Daca barca atinge sub 950.0 HP, esti picat. Poti verifica HP-ul cu comanda /dl")
  1044. end)
  1045. end
  1046.  
  1047. function weap1()
  1048. lua_thread.create(function()
  1049. sampSendChat(mainIni.config.english and "/cw Tell me 10 fire guns from GTA San Andreas." or "/cw Enumera-mi 10 arme ilegale cu foc din GTA San Andreas.")
  1050. end)
  1051. end
  1052.  
  1053. function weap2()
  1054. lua_thread.create(function()
  1055. sampSendChat(mainIni.config.english and "/cw Tell me 8 safezones." or "/cw Enumera-mi 8 safezone-uri.")
  1056. end)
  1057. end
  1058.  
  1059. function weap3()
  1060. lua_thread.create(function()
  1061. sampSendChat(mainIni.config.english and "/cw What is forbidden to do in these zones?" or "/cw Ce este interzis sa faci in aceste zone?")
  1062. end)
  1063. end
  1064.  
  1065. function weap4()
  1066. lua_thread.create(function()
  1067. sampSendChat(mainIni.config.english and "/cw Tell me the syntax you use for buying a gun." or "/cw Spune-mi sintaxa cu care cumperi o arma.")
  1068. end)
  1069. end
  1070.  
  1071. function mats1()
  1072. lua_thread.create(function()
  1073. sampSendChat(mainIni.config.english and "/cw What command do you use for buying materials?" or "/cw Cu ce comanda cumperi materiale?")
  1074. end)
  1075. end
  1076.  
  1077. function mats2()
  1078. lua_thread.create(function()
  1079. sampSendChat(mainIni.config.english and "/cw Where are you not allowed to sell guns?" or "/cw Unde nu ai voie sa vinzi arme? ")
  1080. end)
  1081. end
  1082.  
  1083. function mats3()
  1084. lua_thread.create(function()
  1085. sampSendChat(mainIni.config.english and "/cw Tell me 5 safezones." or "/cw Enumera-mi 5 safezone-uri.")
  1086. end)
  1087. end
  1088.  
  1089. function mats4()
  1090. lua_thread.create(function()
  1091. sampSendChat(mainIni.config.english and "/cw What command do you use for selling a gun?" or "/cw Cu ce comanda vinzi o arma?")
  1092. end)
  1093. end
  1094.  
  1095.  
  1096. function dt()
  1097. lua_thread.create(function()
  1098. sampSendChat("/duty")
  1099. end)
  1100. end
  1101.  
  1102. function bg()
  1103. lua_thread.create(function()
  1104. sampSendChat("/buygun deagle 100")
  1105. sampSendChat("/buygun m4 200")
  1106. sampSendChat("/buygun rifle 100")
  1107. end)
  1108. end
  1109.  
  1110. function sa()
  1111. lua_thread.create(function()
  1112. sampSendChat("/stopanim")
  1113. end)
  1114. end
  1115.  
  1116. function sc()
  1117. lua_thread.create(function()
  1118. sampSendChat("/spawnchange")
  1119. end)
  1120. end
  1121.  
  1122. function cf()
  1123. lua_thread.create(function()
  1124. sampSendChat("/cancel find")
  1125. end)
  1126. end
  1127.  
  1128. function en()
  1129. lua_thread.create(function()
  1130. sampSendChat("/engine")
  1131. end)
  1132. end
  1133.  
  1134. function co()
  1135. lua_thread.create(function()
  1136. sampSendChat("/costumes")
  1137. end)
  1138. end
  1139.  
  1140. function cmb()
  1141. lua_thread.create(function()
  1142. sampSendChat("/clanmembers")
  1143. end)
  1144. end
  1145.  
  1146. function mb()
  1147. lua_thread.create(function()
  1148. sampSendChat("/members")
  1149. end)
  1150. end
  1151.  
  1152. function cx()
  1153. lua_thread.create(function()
  1154. sampSendChat("/clanxp")
  1155. end)
  1156. end
  1157.  
  1158. function ct()
  1159. lua_thread.create(function()
  1160. sampSendChat("/clanturfs")
  1161. end)
  1162. end
  1163.  
  1164. function cdt()
  1165. lua_thread.create(function()
  1166. sampSendChat("/clanduty")
  1167. end)
  1168. end
  1169.  
  1170. function missm()
  1171. lua_thread.create(function()
  1172. sampSendChat("/missed messages")
  1173. end)
  1174. end
  1175.  
  1176. function missc()
  1177. lua_thread.create(function()
  1178. sampSendChat("/missed calls")
  1179. end)
  1180. end
  1181.  
  1182. function gj()
  1183. lua_thread.create(function()
  1184. sampSendChat("/getjob")
  1185. end)
  1186. end
  1187.  
  1188. function ha()
  1189. lua_thread.create(function()
  1190. sampSendChat("/heal")
  1191. end)
  1192. end
  1193.  
  1194. function ntf()
  1195. lua_thread.create(function()
  1196. sampSendChat("/notifications")
  1197. end)
  1198. end
  1199.  
  1200. function kc()
  1201. lua_thread.create(function()
  1202. sampSendChat("/killcp")
  1203. end)
  1204. end
  1205.  
  1206. function czs()
  1207. lua_thread.create(function()
  1208. sampSendChat("/clanzones")
  1209. end)
  1210. end
  1211.  
  1212. function li()
  1213. lua_thread.create(function()
  1214. sampSendChat("/lights")
  1215. end)
  1216. end
  1217.  
  1218. function sj()
  1219. lua_thread.create(function()
  1220. sampSendChat("/switchjob")
  1221. end)
  1222. end
  1223.  
  1224. function reall()
  1225. lua_thread.create(function()
  1226. sampSendChat("/repair")
  1227. sampSendChat("/refill")
  1228. end)
  1229. end
  1230.  
  1231. function staxi()
  1232. lua_thread.create(function()
  1233. sampSendChat("/service taxi")
  1234. end)
  1235. end
  1236.  
  1237. function smech()
  1238. lua_thread.create(function()
  1239. sampSendChat("/service mechanic")
  1240. end)
  1241. end
  1242.  
  1243. function smedic()
  1244. lua_thread.create(function()
  1245. sampSendChat("/service medic")
  1246. end)
  1247. end
  1248.  
  1249. function ctaxi()
  1250. lua_thread.create(function()
  1251. sampSendChat("/cancel taxi")
  1252. end)
  1253. end
  1254.  
  1255. function cmedic()
  1256. lua_thread.create(function()
  1257. sampSendChat("/cancel medic")
  1258. end)
  1259. end
  1260.  
  1261. function cmech()
  1262. lua_thread.create(function()
  1263. sampSendChat("/cancel mechanic")
  1264. end)
  1265. end
  1266.  
  1267. function emer()
  1268. lua_thread.create(function()
  1269. sampSendChat("/emergency")
  1270. end)
  1271. end
  1272.  
  1273. function cmc()
  1274. lua_thread.create(function()
  1275. sampAddChatMessage(" ", -1)
  1276. sampAddChatMessage(" ", -1)
  1277. sampAddChatMessage(" ", -1)
  1278. sampAddChatMessage(" ", -1)
  1279. sampAddChatMessage(" ", -1)
  1280. sampAddChatMessage(" ", -1)
  1281. sampAddChatMessage(" ", -1)
  1282. sampAddChatMessage(" ", -1)
  1283. sampAddChatMessage(" ", -1)
  1284. sampAddChatMessage(" ", -1)
  1285. sampAddChatMessage(" ", -1)
  1286. sampAddChatMessage(" ", -1)
  1287. sampAddChatMessage(" ", -1)
  1288. sampAddChatMessage(" ", -1)
  1289. sampAddChatMessage(" ", -1)
  1290. sampAddChatMessage(" ", -1)
  1291. sampAddChatMessage(" ", -1)
  1292. sampAddChatMessage(" ", -1)
  1293. sampAddChatMessage(" ", -1)
  1294. sampAddChatMessage(" ", -1)
  1295. sampAddChatMessage(" ", -1)
  1296. sampAddChatMessage(" ", -1)
  1297. sampAddChatMessage(" ", -1)
  1298. sampAddChatMessage(" ", -1)
  1299. sampAddChatMessage(" ", -1)
  1300. sampAddChatMessage(" ", -1)
  1301. sampAddChatMessage(" ", -1)
  1302. sampAddChatMessage(" ", -1)
  1303. sampAddChatMessage(" ", -1)
  1304. sampAddChatMessage(" ", -1)
  1305. sampAddChatMessage(" ", -1)
  1306. sampAddChatMessage(" ", -1)
  1307. sampAddChatMessage(" ", -1)
  1308. sampAddChatMessage(" ", -1)
  1309. sampAddChatMessage(" ", -1)
  1310. sampAddChatMessage(" ", -1)
  1311. sampAddChatMessage(" ", -1)
  1312. sampAddChatMessage(" ", -1)
  1313. sampAddChatMessage(" ", -1)
  1314. sampAddChatMessage(" ", -1)
  1315. sampAddChatMessage(" ", -1)
  1316. sampAddChatMessage(" ", -1)
  1317. sampAddChatMessage(" ", -1)
  1318. sampAddChatMessage(" ", -1)
  1319. sampAddChatMessage(" ", -1)
  1320. sampAddChatMessage(" ", -1)
  1321. sampAddChatMessage(" ", -1)
  1322. sampAddChatMessage(" ", -1)
  1323. sampAddChatMessage(" ", -1)
  1324. sampAddChatMessage(" ", -1)
  1325. sampAddChatMessage(" ", -1)
  1326. sampAddChatMessage(" ", -1)
  1327. sampAddChatMessage(" ", -1)
  1328. sampAddChatMessage(" ", -1)
  1329. sampAddChatMessage(" ", -1)
  1330. sampAddChatMessage(" ", -1)
  1331. sampAddChatMessage(" ", -1)
  1332. sampAddChatMessage(" ", -1)
  1333. sampAddChatMessage(" ", -1)
  1334. sampAddChatMessage(" ", -1)
  1335. sampAddChatMessage(" ", -1)
  1336. sampAddChatMessage(" ", -1)
  1337. sampAddChatMessage(" ", -1)
  1338. sampAddChatMessage(" ", -1)
  1339. sampAddChatMessage(" ", -1)
  1340. sampAddChatMessage(" ", -1)
  1341. sampAddChatMessage(" ", -1)
  1342. sampAddChatMessage(" ", -1)
  1343. sampAddChatMessage(" ", -1)
  1344. sampAddChatMessage(" ", -1)
  1345. sampAddChatMessage(" ", -1)
  1346. sampAddChatMessage(" ", -1)
  1347. sampAddChatMessage(" ", -1)
  1348. sampAddChatMessage(" ", -1)
  1349. sampAddChatMessage(" ", -1)
  1350. sampAddChatMessage(" ", -1)
  1351. sampAddChatMessage(" ", -1)
  1352. sampAddChatMessage(" ", -1)
  1353. sampAddChatMessage(" ", -1)
  1354. sampAddChatMessage(" ", -1)
  1355. sampAddChatMessage(" ", -1)
  1356. sampAddChatMessage(" ", -1)
  1357. sampAddChatMessage(" ", -1)
  1358. sampAddChatMessage(" ", -1)
  1359. sampAddChatMessage(" ", -1)
  1360. sampAddChatMessage(" ", -1)
  1361. sampAddChatMessage(" ", -1)
  1362. sampAddChatMessage(" ", -1)
  1363. sampAddChatMessage(" ", -1)
  1364. sampAddChatMessage(" ", -1)
  1365. sampAddChatMessage(" ", -1)
  1366. sampAddChatMessage(" ", -1)
  1367. sampAddChatMessage(" ", -1)
  1368. sampAddChatMessage(" ", -1)
  1369.  
  1370. end)
  1371. end
  1372.  
  1373. function svc()
  1374. lua_thread.create(function()
  1375. sampSendChat("/servicecalls")
  1376. end)
  1377. end
  1378.  
  1379. function afvr()
  1380. lua_thread.create(function()
  1381. sampSendChat(mainIni.config.english and "/f FVR in 10 seconds." or "/f Dau FVR in 10 secunde.")
  1382. wait (10000)
  1383. sampSendChat("/fvr")
  1384. sampSendChat("/f Done.")
  1385. end)
  1386. end
  1387.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement