Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2016
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.65 KB | None | 0 0
  1. net.Receive("FMenu", function()
  2. local Menu = vgui.Create("DFrame")
  3. Menu:SetSize(750, 500)
  4. Menu:SetPos(ScrW()/ 2 - 325, ScrH()/ 2 - 250)
  5. Menu:SetTitle("Shop")
  6. Menu:SetDraggable(true)
  7. Menu:MakePopup(true)
  8. Menu:ShowCloseButton(true)
  9. Menu.Paint = function()
  10. surface.SetDrawColor(75, 75, 75, 255)
  11. surface.DrawRect(0, 0, Menu:GetWide(), Menu:GetTall())
  12.  
  13. surface.SetDrawColor(40, 40, 40, 255)
  14. surface.DrawRect(0, 24, Menu:GetWide(), 1)
  15.  
  16. end
  17. addButtons(Menu)
  18.  
  19. end)
  20.  
  21. function addButtons(Menu)
  22. local playerButton = vgui.Create("DButton")
  23. playerButton:SetParent(Menu)
  24. playerButton:SetText("")
  25. playerButton:SetSize(100, 50)
  26. playerButton:SetPos(0, 25)
  27. playerButton.Paint = function()
  28. -- Color of Entire Button
  29. surface.SetDrawColor(50, 50, 50)
  30. surface.DrawRect(0, 0, playerButton:GetWide(), playerButton:GetTall())
  31.  
  32.  
  33. --Draw Bottom and Right BOrders
  34. surface.SetDrawColor(40, 40, 40, 255)
  35. surface.DrawRect(0, 49, playerButton:GetWide(), 1)
  36. surface.DrawRect(99, 0, 1, playerButton:GetTall())
  37.  
  38. --Draw text
  39. draw.DrawText("Standard Guns", "Arial", playerButton:GetWide()/ 2, 17, Color(0, 255, 0, 255), 1)
  40.  
  41.  
  42. end
  43.  
  44. playerButton.DoClick = function(playerButton)
  45. local playerPanel = Menu:Add("PlayerPanel")
  46.  
  47. local weaponCategory = vgui.Create("DCollapsibleCategory", playerPanel)
  48. weaponCategory:SetPos(0, 0)
  49. weaponCategory:SetSize(playerPanel:GetWide(), 100)
  50. weaponCategory:SetLabel("Half Life 2 Guns")
  51.  
  52. local weaponList = vgui.Create("DIconLayout", weaponCategory)
  53. weaponList:SetPos(0, 20)
  54. weaponList:SetSize(weaponCategory:GetWide(), weaponCategory:GetTall())
  55. weaponList:SetSpaceY(6)
  56. weaponList:SetSpaceX(6)
  57.  
  58.  
  59. end
  60.  
  61.  
  62.  
  63.  
  64. local M9KButton = vgui.Create("DButton")
  65. M9KButton:SetParent(Menu)
  66. M9KButton:SetText("")
  67. M9KButton:SetSize(100, 50)
  68. M9KButton:SetPos(0, 75)
  69. M9KButton.Paint = function()
  70. -- Color of Entire Button
  71. surface.SetDrawColor(50, 50, 50)
  72. surface.DrawRect(0, 0, M9KButton:GetWide(), M9KButton:GetTall())
  73.  
  74.  
  75. --Draw Bottom and Right BOrders
  76. surface.SetDrawColor(40, 40, 40, 255)
  77. surface.DrawRect(0, 49, M9KButton:GetWide(), 1)
  78. surface.DrawRect(99, 0, 1, M9KButton:GetTall())
  79.  
  80. --Draw text
  81. draw.DrawText("M9K Guns", "Arial", M9KButton:GetWide()/ 2, 17, Color(255, 0, 0, 255), 1)
  82. end
  83.  
  84. M9KButton.DoClick = function(M9KButton)
  85. local M9KPanel = Menu:Add("M9KPanel")
  86.  
  87. local pistolCategory = vgui.Create("DCollapsibleCategory", M9KPanel)
  88. pistolCategory:SetPos(0, 0)
  89. pistolCategory:SetSize(M9KPanel:GetWide(), 100)
  90. pistolCategory:SetLabel("M9K Pistols")
  91.  
  92. local pistolList = vgui.Create("DIconLayout", pistolCategory)
  93. pistolList:SetPos(0, 20)
  94. pistolList:SetSize(pistolCategory:GetWide(), pistolCategory:GetTall())
  95. pistolList:SetSpaceY(6)
  96. pistolList:SetSpaceX(6)
  97.  
  98.  
  99. local SMGCategory = vgui.Create("DCollapsibleCategory", M9KPanel)
  100. SMGCategory:SetPos(0, 100)
  101. SMGCategory:SetSize(M9KPanel:GetWide(), 100)
  102. SMGCategory:SetLabel("M9K Submachine Guns")
  103.  
  104. local SMGList = vgui.Create("DIconLayout", SMGCategory)
  105. SMGList:SetPos(0, 20)
  106. SMGList:SetSize(SMGCategory:GetWide(), SMGCategory:GetTall())
  107. SMGList:SetSpaceY(6)
  108. SMGList:SetSpaceX(6)
  109.  
  110.  
  111. local sniperCategory = vgui.Create("DCollapsibleCategory", M9KPanel)
  112. sniperCategory:SetPos(0, 200)
  113. sniperCategory:SetSize(M9KPanel:GetWide(), 100)
  114. sniperCategory:SetLabel("M9K Snipers")
  115.  
  116. local sniperList = vgui.Create("DIconLayout", sniperCategory)
  117. sniperList:SetPos(0, 20)
  118. sniperList:SetSize(sniperCategory:GetWide(), sniperCategory:GetTall())
  119. sniperList:SetSpaceY(6)
  120. sniperList:SetSpaceX(6)
  121.  
  122. local assaultCategory = vgui.Create("DCollapsibleCategory", M9KPanel)
  123. assaultCategory:SetPos(0, 300)
  124. assaultCategory:SetSize(M9KPanel:GetWide(), 100)
  125. assaultCategory:SetLabel("M9K Assault Rifles")
  126.  
  127. local assaultList = vgui.Create("DIconLayout", assaultCategory)
  128. assaultList:SetPos(0, 20)
  129. assaultList:SetSize(assaultCategory:GetWide(), assaultCategory:GetTall())
  130. assaultList:SetSpaceY(6)
  131. assaultList:SetSpaceX(6)
  132.  
  133. local shotgunCategory = vgui.Create("DCollapsibleCategory", M9KPanel)
  134. shotgunCategory:SetPos(0, 400)
  135. shotgunCategory:SetSize(M9KPanel:GetWide(), 100)
  136. shotgunCategory:SetLabel("M9K Shotguns")
  137.  
  138. local shotgunList = vgui.Create("DIconLayout", shotgunCategory)
  139. shotgunList:SetPos(0, 20)
  140. shotgunList:SetSize(shotgunCategory:GetWide(), shotgunCategory:GetTall())
  141. shotgunList:SetSpaceY(6)
  142. shotgunList:SetSpaceX(6)
  143.  
  144.  
  145.  
  146. end
  147.  
  148. local AmmoButton = vgui.Create("DButton")
  149. AmmoButton:SetParent(Menu)
  150. AmmoButton:SetText("")
  151. AmmoButton:SetSize(100, 50)
  152. AmmoButton:SetPos(0, 125)
  153. AmmoButton.Paint = function()
  154. -- Color of Entire Button
  155. surface.SetDrawColor(50, 50, 50)
  156. surface.DrawRect(0, 0, AmmoButton:GetWide(), AmmoButton:GetTall())
  157.  
  158.  
  159. --Draw Bottom and Right Borders
  160. surface.SetDrawColor(40, 40, 40, 255)
  161. surface.DrawRect(0, 49, AmmoButton:GetWide(), 1)
  162. surface.DrawRect(99, 0, 1, AmmoButton:GetTall())
  163.  
  164. --Draw text
  165. draw.DrawText("Misc.", "Arial", AmmoButton:GetWide()/ 2, 17, Color(255, 255, 0, 255), 1)
  166.  
  167. AmmoButton.DoClick = function(AmmoButton)
  168. local AmmoPanel = Menu:Add("AmmoPanel")
  169.  
  170. local entityCategory = vgui.Create("DCollapsibleCategory", AmmoPanel)
  171. entityCategory:SetPos(0, 0)
  172. entityCategory:SetSize(AmmoPanel:GetWide(), 100)
  173. entityCategory:SetLabel("Dispensers")
  174.  
  175. local entityList = vgui.Create("DIconLayout", entityCategory)
  176. entityList:SetPos(0, 20)
  177. entityList:SetSize(entityCategory:GetWide(), entityCategory:GetTall())
  178. entityList:SetSpaceY(5)
  179. entityList:SetSpaceX(5)
  180.  
  181. local entsArr = {}
  182. entsArr[1] = scripted_ents.Get("ammo_dispenser")
  183.  
  184. for k, v in pairs(entsArr) do
  185. local icon = vgui.Create("SpawnIcon", entityList)
  186. icon:SetModel(v["Model"])
  187. icon:SetToolTip(v["PrintName"].."\nCost: "..v["Cost"])
  188. entityList:Add(icon)
  189. icon.DoClick = function(icon)
  190. LocalPlayer():ConCommand("buy_entity "..v["ClassName"])
  191. end
  192.  
  193. local weaponsArr = {}
  194. weaponsArr[1] = {"w_hk_mp5.mdl", "m9k_mp5", "MP5", "100"}
  195.  
  196. for k, v in pairs(weaponsArr) do
  197. local icon = vgui.Create("SpawnIcon", weaponList)
  198. icon:SetModel(v[1])
  199. icon:SetToolTip(v[3].."\nCost: "..v[4])
  200. weaponList:Add(icon)
  201. icon.DoClick = function(icon)
  202. LocalPlayer():ConCommand("buy_gun "..v[2].. "" ..v[4])
  203. end
  204.  
  205. end
  206.  
  207.  
  208. end
  209. end
  210. end
  211.  
  212.  
  213. --Standard Panel
  214. PANEL = {} -- Create an empty panel
  215.  
  216. function PANEL:Init()
  217. self:SetSize(650, 475)
  218. self:SetPos(100, 25)
  219. end
  220.  
  221. function PANEL:Paint(w, h)
  222. draw.RoundedBox(0, 0, 0, w, h, Color(50, 50, 50, 255))
  223. end
  224. vgui.Register("PlayerPanel", PANEL, "Panel")
  225.  
  226. -- End of Standard Panel
  227.  
  228. --M9K Panel
  229. PANEL = {} -- Create an empty panel
  230.  
  231. function PANEL:Init()
  232. self:SetSize(650, 475)
  233. self:SetPos(100, 25)
  234. end
  235.  
  236. function PANEL:Paint(w, h)
  237. draw.RoundedBox(0, 0, 0, w, h, Color(50, 50, 50, 255))
  238. end
  239. vgui.Register("M9KPanel", PANEL, "Panel")
  240.  
  241. -- End of M9K Panel
  242.  
  243. --Ammo Panel
  244. PANEL = {} -- Create an empty panel
  245.  
  246. function PANEL:Init()
  247. self:SetSize(650, 475)
  248. self:SetPos(100, 25)
  249. end
  250.  
  251. function PANEL:Paint(w, h)
  252. draw.RoundedBox(0, 0, 0, w, h, Color(50, 50, 50, 255))
  253. end
  254. vgui.Register("AmmoPanel", PANEL, "Panel")
  255.  
  256. -- End of Ammo Panel
  257.  
  258. --M9K Explosives Panel
  259. PANEL = {} -- Create an empty panel
  260.  
  261. function PANEL:Init()
  262. self:SetSize(650, 475)
  263. self:SetPos(100, 25)
  264. end
  265.  
  266. function PANEL:Paint(w, h)
  267. draw.RoundedBox(0, 0, 0, w, h, Color(50, 50, 50, 255))
  268. end
  269. vgui.Register("ExplosivesPanel", PANEL, "Panel")
  270.  
  271. -- End of M9K Explosives Panel
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement