Advertisement
Guest User

Untitled

a guest
Jun 18th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.17 KB | None | 0 0
  1. local MAIN = {}
  2. MAIN.TitleHeight = 64
  3.  
  4. function MAIN:Init()
  5.  
  6. self:SetZPos(1)
  7. self:MakePopup()
  8. self:SetSize(300, 301)
  9. self:Center()
  10.  
  11. self.CloseButton = vgui.Create("TheaterButton", self)
  12. self.CloseButton:SetPos(self:GetWide() - 28, 3)
  13. self.CloseButton:SetSize(25, 25)
  14. self.CloseButton:SetText("X")
  15. self.CloseButton.DoClick = function()
  16. self:Remove()
  17. GAMEMODE:HideMouse()
  18. end
  19.  
  20. self.Title = Label("Player Menu", self)
  21. self.Title:SetFont("ScoreboardTitle")
  22. self.Title:SetColor(Color(93, 64, 55))
  23.  
  24. self.Options = vgui.Create("DPanelList", self)
  25. self.Options:DockMargin(4, self.TitleHeight + 5, 4, 5)
  26. self.Options:SetDrawBackground(false)
  27. self.Options:SetPadding(4)
  28. self.Options:SetSpacing(4)
  29.  
  30. local ShopButton = vgui.Create("TheaterButton")
  31. ShopButton:SetFont("ScoreboardMapName")
  32. ShopButton:SetText("Shop")
  33. ShopButton.DoClick = function()
  34. self:Remove()
  35. vgui.Create("ShopSelectMenu")
  36. end
  37. self.Options:AddItem(ShopButton)
  38.  
  39. local InventoryButton = vgui.Create("TheaterButton")
  40. InventoryButton:SetFont("ScoreboardMapName")
  41. InventoryButton:SetText("Inventory")
  42. InventoryButton.DoClick = function()
  43. self:Remove()
  44. vgui.Create("InvSelectMenu")
  45. end
  46. self.Options:AddItem(InventoryButton)
  47.  
  48. local Achievements = vgui.Create("TheaterButton")
  49. Achievements:SetFont("ScoreboardMapName")
  50. Achievements:SetText("Achievements")
  51. Achievements.DoClick = function()
  52. self:Remove()
  53. vgui.Create("AchievementsMenu")
  54. end
  55. self.Options:AddItem(Achievements)
  56.  
  57. local SettingsButton = vgui.Create("TheaterButton")
  58. SettingsButton:SetFont("ScoreboardMapName")
  59. SettingsButton:SetText("Settings")
  60. SettingsButton.DoClick = function()
  61. self:Remove()
  62. vgui.Create("SettingsMenu")
  63. end
  64. self.Options:AddItem(SettingsButton)
  65.  
  66. local YenTransferBtn = vgui.Create("TheaterButton")
  67. YenTransferBtn:SetFont("ScoreboardMapName")
  68. YenTransferBtn:SetText("Yen Transfer")
  69. YenTransferBtn.DoClick = function()
  70. self:Remove()
  71. vgui.Create("YenTransferMenu")
  72. end
  73. self.Options:AddItem(YenTransferBtn)
  74.  
  75. local PlayerStatsBtn = vgui.Create("TheaterButton")
  76. PlayerStatsBtn:SetFont("ScoreboardMapName")
  77. PlayerStatsBtn:SetText("Player Statistics")
  78. PlayerStatsBtn.DoClick = function()
  79. self:Remove()
  80. chat.AddText(unpack({
  81. theater.ColDefault,
  82. "Your Current Statistics:\n",
  83. "¥: ",
  84. theater.ColHighlight,
  85. tostring(LocalPlayer():GetNWInt("yen")),
  86. theater.ColDefault,
  87. "\nLevel: ",
  88. theater.ColHighlight,
  89. tostring(LocalPlayer():CalculateLevel(LocalPlayer():GetNWInt("exp"))),
  90. theater.ColDefault,
  91. "\nPlay-Time: ",
  92. theater.ColHighlight,
  93. string.FormatSeconds(math.Round(LocalPlayer():GetNWInt("totalPlayTime"))),
  94. theater.ColDefault,
  95. "\nNon-AFK-Play-Time: ",
  96. theater.ColHighlight,
  97. string.FormatSeconds(math.Round(LocalPlayer():GetNWInt("totalNonAFKPlayTime"))),
  98. theater.ColDefault,
  99. "\nAchievement Progress: ",
  100. theater.ColHighlight,
  101. math.Round((table.Count(LocalPlayer().achievements) / table.Count(ACHIEVEMENTS)) * 100) .. "%"
  102. }))
  103. end
  104. self.Options:AddItem(PlayerStatsBtn)
  105.  
  106. local SysInfo = vgui.Create("TheaterButton")
  107. SysInfo:SetFont("ScoreboardMapName")
  108. SysInfo:SetText("System Information")
  109. SysInfo.DoClick = function()
  110. self:Remove()
  111. vgui.Create("SysInfo")
  112. end
  113. self.Options:AddItem(SysInfo)
  114.  
  115. end
  116.  
  117. local Background = Material( "purin_banner.png" ) // theater/banner.png
  118. function MAIN:Paint(w, h)
  119.  
  120. // Background
  121. draw.BlurBackground(self, 8, 6)
  122. surface.SetDrawColor(240, 244, 195)
  123. surface.DrawOutlinedRect(0, 0, self:GetWide(), self:GetTall())
  124.  
  125. // Title
  126. surface.SetDrawColor(141, 38, 33, 255)
  127. surface.DrawRect(0, 0, self:GetWide(), self.Title:GetTall())
  128.  
  129. // Title Background
  130. surface.SetDrawColor(255, 255, 255, 255)
  131. surface.SetMaterial(Background)
  132. surface.DrawTexturedRect(0, -1, 512, self.Title:GetTall() + 1)
  133.  
  134. end
  135.  
  136. function MAIN:PerformLayout()
  137.  
  138. self.Title:SizeToContents()
  139. self.Title:SetTall( self.TitleHeight )
  140. self.Title:CenterHorizontal()
  141.  
  142. self.Options:Dock( FILL )
  143. self.Options:SizeToContents()
  144.  
  145. end
  146. vgui.Register("MainMenu", MAIN)
  147.  
  148. hook.Add("OpenPlayerMenu", "OpenF4Menu", function()
  149. vgui.Create("MainMenu")
  150. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement