Advertisement
RISKSCRIPTS

Untitled

Dec 24th, 2024
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.12 KB | None | 0 0
  1. ---@class BaseMenuItem
  2. ---@field label string
  3. ---@field icon string
  4. ---@field jobs? string[]
  5. ---@field submenu? nil
  6. ---@field action? fun(self: BaseMenuItem, sub?: BaseMenuItem)
  7.  
  8. ---@class MenuItem:BaseMenuItem
  9. ---@field submenu? BaseMenuItem[]
  10. ---@field action fun(self: BaseMenuItem, sub?: BaseMenuItem)
  11.  
  12. ---@type MenuItem[]
  13. Items = {
  14. {
  15. label = 'Personal',
  16. icon = 'fa-solid fa-user',
  17. submenu = {
  18. {
  19. label = 'Show ID',
  20. icon = 'fa-solid fa-id-card',
  21. action = function(parent, self)
  22. print('Option selected: ' .. self.label)
  23. end
  24. },
  25. {
  26. label = 'Show License',
  27. icon = 'fa-solid fa-address-card',
  28. action = function(parent, self)
  29. print('Option selected: ' .. self.label)
  30. end
  31. },
  32. {
  33. label = 'Check Wallet',
  34. icon = 'fa-solid fa-wallet',
  35. action = function(parent, self)
  36. print('Option selected: ' .. self.label)
  37. end
  38. },
  39. {
  40. label = 'Check Health',
  41. icon = 'fa-solid fa-heart',
  42. action = function(parent, self)
  43. print('Option selected: ' .. self.label)
  44. end
  45. },
  46. {
  47. label = 'Inventory',
  48. icon = 'fa-solid fa-box-open',
  49. action = function(parent, self)
  50. print('Option selected: ' .. self.label)
  51. end
  52. },
  53. {
  54. label = 'Contacts',
  55. icon = 'fa-solid fa-address-book',
  56. action = function(parent, self)
  57. print('Option selected: ' .. self.label)
  58. end
  59. },
  60. }
  61. },
  62. {
  63. label = 'Police',
  64. icon = 'fa-solid fa-shield-alt',
  65. jobs = {'police'},
  66. submenu = {
  67. {
  68. label = 'Check ID',
  69. icon = 'fa-solid fa-id-badge',
  70. action = function(parent, self)
  71. print('Police option selected: ' .. self.label)
  72. end
  73. },
  74. {
  75. label = 'Search Inventory',
  76. icon = 'fa-solid fa-search',
  77. action = function(parent, self)
  78. print('Police option selected: ' .. self.label)
  79. end
  80. },
  81. {
  82. label = 'Issue Fine',
  83. icon = 'fa-solid fa-money-bill',
  84. action = function(parent, self)
  85. print('Police option selected: ' .. self.label)
  86. end
  87. },
  88. {
  89. label = 'Arrest',
  90. icon = 'fa-solid fa-handcuffs',
  91. action = function(parent, self)
  92. print('Police option selected: ' .. self.label)
  93. end
  94. },
  95. {
  96. label = 'Request Backup',
  97. icon = 'fa-solid fa-phone',
  98. action = function(parent, self)
  99. print('Police option selected: ' .. self.label)
  100. end
  101. },
  102. }
  103. },
  104. {
  105. label = 'Emotes',
  106. icon = 'fa-solid fa-smile',
  107. submenu = {
  108. {
  109. label = 'Wave',
  110. icon = 'fa-solid fa-hand-wave',
  111. action = function(parent, self)
  112. print('Option selected: ' .. self.label)
  113. end
  114. },
  115. {
  116. label = 'Clap',
  117. icon = 'fa-solid fa-hands-clapping',
  118. action = function(parent, self)
  119. print('Option selected: ' .. self.label)
  120. end
  121. },
  122. {
  123. label = 'Thumbs Up',
  124. icon = 'fa-solid fa-thumbs-up',
  125. action = function(parent, self)
  126. print('Option selected: ' .. self.label)
  127. end
  128. },
  129. {
  130. label = 'Point',
  131. icon = 'fa-solid fa-hand-point-up',
  132. action = function(parent, self)
  133. print('Option selected: ' .. self.label)
  134. end
  135. },
  136. {
  137. label = 'Cheer',
  138. icon = 'fa-solid fa-flag-checkered',
  139. action = function(parent, self)
  140. print('Option selected: ' .. self.label)
  141. end
  142. },
  143. {
  144. label = 'Sit',
  145. icon = 'fa-solid fa-chair',
  146. action = function(parent, self)
  147. print('Option selected: ' .. self.label)
  148. end
  149. },
  150. {
  151. label = 'Hands Up',
  152. icon = 'fa-solid fa-hand-holding',
  153. action = function(parent, self)
  154. print('Option selected: ' .. self.label)
  155. end
  156. },
  157. {
  158. label = 'Lay Down',
  159. icon = 'fa-solid fa-bed',
  160. action = function(parent, self)
  161. print('Option selected: ' .. self.label)
  162. end
  163. },
  164. {
  165. label = 'Facepalm',
  166. icon = 'fa-solid fa-head-side-cough',
  167. action = function(parent, self)
  168. print('Option selected: ' .. self.label)
  169. end
  170. },
  171. {
  172. label = 'Shrug',
  173. icon = 'fa-solid fa-person-shrugging',
  174. action = function(parent, self)
  175. print('Option selected: ' .. self.label)
  176. end
  177. },
  178. {
  179. label = 'Laugh',
  180. icon = 'fa-solid fa-laugh',
  181. action = function(parent, self)
  182. print('Option selected: ' .. self.label)
  183. end
  184. },
  185. }
  186. },
  187. {
  188. label = 'Auto',
  189. icon = 'fa-solid fa-car',
  190. submenu = {
  191. {
  192. label = 'Lock/Unlock',
  193. icon = 'fa-solid fa-lock',
  194. action = function(parent, self)
  195. print('Option selected: ' .. self.label)
  196. end
  197. },
  198. {
  199. label = 'Engine On/Off',
  200. icon = 'fa-solid fa-engine',
  201. action = function(parent, self)
  202. print('Option selected: ' .. self.label)
  203. end
  204. },
  205. {
  206. label = 'Open Trunk',
  207. icon = 'fa-solid fa-car-rear',
  208. action = function(parent, self)
  209. print('Option selected: ' .. self.label)
  210. end
  211. },
  212. {
  213. label = 'Turn On Headlights',
  214. icon = 'fa-solid fa-lightbulb',
  215. action = function(parent, self)
  216. print('Option selected: ' .. self.label)
  217. end
  218. },
  219. {
  220. label = 'Honk Horn',
  221. icon = 'fa-solid fa-bullhorn',
  222. action = function(parent, self)
  223. print('Option selected: ' .. self.label)
  224. end
  225. },
  226. {
  227. label = 'Check Fuel Level',
  228. icon = 'fa-solid fa-gas-pump',
  229. action = function(parent, self)
  230. print('Option selected: ' .. self.label)
  231. end
  232. },
  233. }
  234. }
  235. };
  236.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement