Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Credit : Ideo
- function drawNotification(text)
- SetNotificationTextEntry("STRING")
- AddTextComponentString(text)
- DrawNotification(true, true)
- end
- Menu = {}
- Menu.GUI = {}
- Menu.TitleGUI = {}
- Menu.buttonCount = 10
- Menu.titleCount = 0
- Menu.selection = 0
- Menu.hidden = true
- MenuTitle = "Menu"
- -------------------
- posXMenu = 0.700 -- List = Left and Right
- posYMenu = 0.02 -- Smaller List, 1=Too Small
- width = 0.1 -- Make List Wider
- height = 0.02 -- Blue Strip
- posXMenuTitle = 0.700 -- Red Title = Left and Right
- posYMenuTitle = 0.02
- widthMenuTitle = 0.1 -- Make Red Strip Wider
- heightMenuTitle = 0.02 -- Red Strip
- -------------------
- function Menu.addTitle(name)
- local yoffset = 0.04 -- Move Red Strip Down
- local xoffset = 0
- local xmin = posXMenuTitle
- local ymin = posYMenuTitle
- local xmax = widthMenuTitle
- local ymax = heightMenuTitle
- Menu.TitleGUI[Menu.titleCount +1] = {}
- Menu.TitleGUI[Menu.titleCount +1]["name"] = name
- Menu.TitleGUI[Menu.titleCount+1]["xmin"] = xmin + xoffset
- Menu.TitleGUI[Menu.titleCount+1]["ymin"] = ymin * (Menu.titleCount + 0.01) +yoffset
- Menu.TitleGUI[Menu.titleCount+1]["xmax"] = xmax
- Menu.TitleGUI[Menu.titleCount+1]["ymax"] = ymax
- Menu.titleCount = Menu.titleCount+1
- end
- function Menu.addButton(name, func, args)
- local yoffset = 0.04 -- Move List Down
- local xoffset = 0
- local xmin = posXMenu
- local ymin = posYMenu
- local xmax = width
- local ymax = height
- Menu.GUI[Menu.buttonCount +1] = {}
- Menu.GUI[Menu.buttonCount +1]["name"] = name
- Menu.GUI[Menu.buttonCount+1]["func"] = func
- Menu.GUI[Menu.buttonCount+1]["args"] = args
- Menu.GUI[Menu.buttonCount+1]["active"] = false
- Menu.GUI[Menu.buttonCount+1]["xmin"] = xmin + xoffset
- Menu.GUI[Menu.buttonCount+1]["ymin"] = ymin * (Menu.buttonCount + 0.01) +yoffset
- Menu.GUI[Menu.buttonCount+1]["xmax"] = xmax
- Menu.GUI[Menu.buttonCount+1]["ymax"] = ymax
- Menu.buttonCount = Menu.buttonCount+1
- end
- function Menu.updateSelection()
- if IsControlJustPressed(1, 175) then -- INPUT_CELLPHONE_RIGHT
- if(Menu.selection < Menu.buttonCount -1 )then
- Menu.selection = Menu.selection +1
- else
- Menu.selection = 0
- end
- elseif IsControlJustPressed(1, 174) then -- INPUT_CELLPHONE_LEFT
- if(Menu.selection > 0)then
- Menu.selection = Menu.selection -1
- else
- Menu.selection = Menu.buttonCount-1
- end
- elseif IsControlJustPressed(1, 176) then -- INPUT_CELLPHONE_SELECT
- MenuCallFunction(Menu.GUI[Menu.selection +1]["func"], Menu.GUI[Menu.selection +1]["args"])
- end
- local iterator = 0
- for id, settings in ipairs(Menu.GUI) do
- Menu.GUI[id]["active"] = false
- if(iterator == Menu.selection ) then
- Menu.GUI[iterator +1]["active"] = true
- end
- iterator = iterator +1
- end
- end
- function Menu.renderGUI()
- if not Menu.hidden then
- Menu.renderTitle()
- Menu.renderButtons()
- Menu.updateSelection()
- end
- end
- function Menu.renderBox(xMin,xMax,yMin,yMax,color1,color2,color3,color4)
- DrawRect(xMin, yMin,xMax, yMax, color1, color2, color3, color4);
- end
- function Menu.renderTitle()
- local yoffset = 0.2
- local xoffset = 0
- local xmin = posXMenuTitle
- local ymin = posYMenuTitle
- local xmax = widthMenuTitle
- local ymax = heightMenuTitle
- for id, settings in pairs(Menu.TitleGUI) do
- local screen_w = 0
- local screen_h = 0
- screen_w, screen_h = GetScreenResolution(0, 0)
- boxColor = {255,23,0,200}
- SetTextFont(0)
- SetTextScale(0.0,0.35)
- SetTextColour(255, 255, 255, 255)
- SetTextCentre(true)
- SetTextDropShadow(0, 0, 0, 0, 0)
- SetTextEdge(0, 0, 0, 0, 0)
- SetTextEntry("STRING")
- AddTextComponentString(string.upper(settings["name"]))
- DrawText(settings["xmin"], (settings["ymin"] - heightMenuTitle - 0.0125))
- Menu.renderBox(settings["xmin"] ,settings["xmax"], settings["ymin"] - heightMenuTitle, settings["ymax"],boxColor[1],boxColor[2],boxColor[3],boxColor[4])
- end
- end
- function Menu.renderButtons()
- for id, settings in pairs(Menu.GUI) do
- local screen_w = 0
- local screen_h = 0
- screen_w, screen_h = GetScreenResolution(0, 0)
- boxColor = {0,127,255,17}
- if(settings["active"]) then
- boxColor = {0,130,255,200}
- end
- SetTextFont(0)
- SetTextScale(0.0,0.35)
- SetTextColour(255, 255, 255, 255)
- SetTextCentre(true)
- SetTextDropShadow(0, 0, 0, 0, 0)
- SetTextEdge(0, 0, 0, 0, 0)
- SetTextEntry("STRING")
- AddTextComponentString(settings["name"])
- DrawText(settings["xmin"], (settings["ymin"] - 0.0125 ))
- Menu.renderBox(settings["xmin"] ,settings["xmax"], settings["ymin"], settings["ymax"],boxColor[1],boxColor[2],boxColor[3],boxColor[4])
- end
- end
- --------------------------------------------------------------------------------------------------------------------
- function ClearMenu()
- --Menu = {}
- Menu.GUI = {}
- Menu.buttonCount = 0
- Menu.titleCount = 0
- Menu.selection = 0
- end
- function MenuCallFunction(fnc, arg)
- _G[fnc](arg)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement