Maintened and improved RageUI Repository

Hi developers !

Rage UI is one of the best standalone menu framework around, and it’s very regrettable that its development has ceased…
I’m releasing a github repository containing the patches I’ve made to fix some bugs and add several Features.

You can find it Here, if you patch a bug on it, please make a pull request so that this bug will be patched for everyone, same if you add an interesting feature.

10 Likes

Changelog for the actual release

Patch

  • More functional panels
  • Checks for nil values done right (avoids “can’t index a nil value” bugs)
  • Better management of menu linking
  • Accented letters are now capitalized correctly in menu titles
  • You can now use Items without Panel function

Features

  • Added color panels
  • Added percentage panels
  • Added colors for color panels
  • Added menu colors
  • Added AutoList : List with auto-stock of Items, auto gestion of Index and callback SetIndex to set Index
  • Added Range : AutoList in a range and callback to set Label of list Item in Menu

You can see all the diff with older Rage UI Here

can you support lvc v3? this version doesn’t seem to work with luxart

It’s not up to rage ui to support scripts using it, but vice versa.
You need to contact luxart developers.
Normaly my Rage UI version is retro compatible.

Update

Big performances improvement
Old round function was really bad for performances :

function math.Timer()
    local timer = os.clock()
    return function()
        return (os.clock() - timer)
    end
end

local round1 = function(value, numDecimalPlaces)
	if numDecimalPlaces then
		local power = 10^numDecimalPlaces
		return math.floor((value * power) + 0.5) / (power)
	else
		return math.floor(value + 0.5)
	end
end

local round2 = function(num, numDecimalPlaces)
    return tonumber(string.format("%." .. (numDecimalPlaces or 0) .. "f", num))
end

local timer1 = math.Timer()
for i = 1, 1000000 do
     round1(1883.948364, 2)
end
print(timer1()) -- 0.077

local timer2 = math.Timer()
for i = 1, 1000000 do
     round2(1883.948364, 2)
end
print(timer2()) -- 1.176

Commit link