117 lines
		
	
	
		
			No EOL
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			117 lines
		
	
	
		
			No EOL
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| UIMenuColouredItem = setmetatable({}, UIMenuColouredItem)
 | |
| UIMenuColouredItem.__index = UIMenuColouredItem
 | |
| UIMenuColouredItem.__call = function() return "UIMenuItem", "UIMenuColouredItem" end
 | |
| 
 | |
| function UIMenuColouredItem.New(Text, Description, MainColour, HighlightColour)
 | |
| 	if type(Colour) ~= "table" then Colour = {R = 0, G = 0, B = 0, A = 255} end
 | |
| 	if type(HighlightColour) ~= "table" then Colour = {R = 255, G = 255, B = 255, A = 255} end
 | |
| 	local _UIMenuColouredItem = {
 | |
| 		Base = UIMenuItem.New(Text or "", Description or ""),
 | |
| 		Rectangle = UIResRectangle.New(0, 0, 431, 38, MainColour.R, MainColour.G, MainColour.B, MainColour.A),
 | |
| 		MainColour = MainColour,
 | |
| 		HighlightColour = HighlightColour,
 | |
| 		Activated = function(menu, item) end,
 | |
| 	}
 | |
| 	_UIMenuColouredItem.Base.SelectedSprite:Colour(HighlightColour.R, HighlightColour.G, HighlightColour.B, HighlightColour.A)
 | |
| 	return setmetatable(_UIMenuColouredItem, UIMenuColouredItem)
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:SetParentMenu(Menu)
 | |
| 	if Menu() == "UIMenu" then
 | |
| 		self.Base.ParentMenu = Menu
 | |
| 	else
 | |
| 		return self.Base.ParentMenu
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Position(Y)
 | |
| 	if tonumber(Y) then
 | |
| 		self.Base:Position(Y)
 | |
| 		self.Rectangle:Position(self.Base._Offset.X, Y + 144 + self.Base._Offset.Y)
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Selected(bool)
 | |
| 	if bool ~= nil then
 | |
| 		self.Base._Selected = tobool(bool)
 | |
| 	else
 | |
| 		return self.Base._Selected
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Hovered(bool)
 | |
| 	if bool ~= nil then
 | |
| 		self.Base._Hovered = tobool(bool)
 | |
| 	else
 | |
| 		return self.Base._Hovered
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Enabled(bool)
 | |
| 	if bool ~= nil then
 | |
| 		self.Base._Enabled = tobool(bool)
 | |
| 	else
 | |
| 		return self.Base._Enabled
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Description(str)
 | |
| 	if tostring(str) and str ~= nil then
 | |
| 		self.Base._Description = tostring(str)
 | |
| 	else
 | |
| 		return self.Base._Description
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Offset(X, Y)
 | |
| 	if tonumber(X) or tonumber(Y) then
 | |
| 		if tonumber(X) then
 | |
| 			self.Base._Offset.X = tonumber(X)
 | |
| 		end
 | |
| 		if tonumber(Y) then
 | |
| 			self.Base._Offset.Y = tonumber(Y)
 | |
| 		end
 | |
| 	else
 | |
| 		return self.Base._Offset
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Text(Text)
 | |
| 	if tostring(Text) and Text ~= nil then
 | |
| 		self.Base.Text:Text(tostring(Text))
 | |
| 	else
 | |
| 		return self.Base.Text:Text()
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:RightLabel(Text, MainColour, HighlightColour)
 | |
|     if tostring(Text) and Text ~= nil then
 | |
|         if type(MainColour) == "table" then
 | |
|             self.Base.Label.MainColour = MainColour
 | |
|         end
 | |
|         if type(HighlightColour) == "table" then
 | |
|             self.Base.Label.HighlightColour = HighlightColour
 | |
|         end
 | |
|         self.Base.Label.Text:Text(tostring(Text))
 | |
|     else
 | |
|         return self.Base.Label.Text:Text()
 | |
|     end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:SetLeftBadge(Badge)
 | |
| 	if tonumber(Badge) then
 | |
| 		self.Base.LeftBadge.Badge = tonumber(Badge)
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:SetRightBadge(Badge)
 | |
| 	if tonumber(Badge) then
 | |
| 		self.Base.RightBadge.Badge = tonumber(Badge)
 | |
| 	end
 | |
| end
 | |
| 
 | |
| function UIMenuColouredItem:Draw()
 | |
| 	self.Rectangle:Size(431 + self.ParentMenu.WidthOffset, self.Rectangle.Height)
 | |
| 	self.Rectangle:Draw()
 | |
| 	self.Base:Draw()
 | |
| end | 
