- UI Library made for Roblox, inspired by the Counter-Strike cheat "Gamesense" aka "Skeet.cc"
loadstring(
game:HttpGetAsync("https://raw.githubusercontent.com/focat69/gamesense/refs/heads/main/example.luau")
)()
local Library = loadstring(
game:HttpGetAsync(`https://raw.githubusercontent.com/focat69/gamesense/refs/heads/main/source?t={tostring(tick())}`)
)()
Creates a new window for the UI library.
Argument | Type | Default | Description |
---|---|---|---|
Name |
string |
"gamesense.lua" |
The name of the UI window. If the name starts with gamesense , the word sense will appear green. |
Padding |
number |
6 |
Padding between UI components. |
Example:
local Window = Library:New({
Name = "gamesense | Rivals Premium", -- Supports Rich Text!
Padding = 8
})
Window:Destroy() -- destroys window (wow)
Creates a new tab inside the UI window.
Argument | Type | Default | Description |
---|---|---|---|
Name |
string |
"Tab" |
The name of the tab. |
Example:
local aimbotTab = Window:CreateTab({ Name = "Aimbot" })
local visualsTab = Window:CreateTab({ Name = "Visuals" })
Adds a button to the tab.
Argument | Type | Default | Description |
---|---|---|---|
Name |
string |
"Button" |
The name of the button. |
Callback |
function |
function() |
A function to run when the button is clicked. |
-
Button:SetText(text: string)
Updates the button's display text. -
Button:SetCallback(fn: function)
Changes the button's callback function.
Example:
local btn = aimbotTab:Button({
Name = "Click me!",
Callback = function()
print("Button clicked")
end
})
local i = 0
btn:SetCallback(function()
i += 1
btn:SetText("Clicked " .. tostring(i) .. " times")
end)
-- Now upon clicking, instead of "Button clicked", the button will display
-- the number of times it has been clicked.
Adds a label (text display) to the tab. This label supports Rich Text.
Argument | Type | Default | Description |
---|---|---|---|
Message |
string |
"This is an example label." |
The text to display in the label. |
Label:SetText(text: string)
Updates the label's message.
Example:
local label = aimbotTab:Label({
Message = "Silent aim is currently detected. Use with caution."
})
label:SetText("Silent aim is FUD! :D")
Adds a slider to the tab.
Argument | Type | Default | Description |
---|---|---|---|
Name |
string |
"Slider" |
The name of the slider. |
Min |
number |
0 |
The minimum value for the slider. |
Max |
number |
100 |
The maximum value for the slider. |
Default |
number |
50 |
The initial value of the slider. |
Step |
number |
1 |
How much the value increments by |
Callback |
function |
function() |
A function called when the slider value changes. |
-
Slider:SetValue(v: number)
Sets the slider's value programmatically. -
Slider:GetValue()
Returns the slider's current value.
Example:
local slider = miscTab:Slider({
Name = "Walkspeed",
Min = 0,
Max = 100,
Default = 10,
Step = 1,
Callback = function(v)
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = v
end
})
slider:SetValue(20) -- Sets the slider value to 20
print(slider:GetValue()) -- Prints the current value of the slider
Adds a toggle switch to the tab.
Argument | Type | Default | Description |
---|---|---|---|
Name |
string |
"Toggle" |
The name of the toggle. |
State |
boolean |
false |
The initial state of the toggle (on/off). |
Callback |
function |
function() |
A function called when the toggle changes. |
-
Toggle:SetValue(bool: boolean)
Sets the toggle's state. -
Toggle:GetValue()
Returns the current state of the toggle.
Example:
local toggle3d = miscTab:Toggle({
Name = "3D Rendering",
State = true,
Callback = function(state)
print("3D Rendering: ", state)
end
})
toggle3d:SetValue(false) -- Turns off the toggle
print(toggle3d:GetValue()) -- Prints false
Adds a textbox input field to the tab.
Argument | Type | Default | Description |
---|---|---|---|
Placeholder |
string |
"Enter your username..." |
Placeholder text displayed in the textbox. |
Callback |
function |
function() |
A function called when input is submitted. |
-
Textbox:SetValue(text: string)
Sets the textbox value programmatically. -
Textbox:GetValue()
Returns the current text in the textbox.
Example:
local webhookTextbox = webhookTab:Textbox({
Placeholder = "Enter webhook URL...",
Callback = function(input)
print("Webhook URL entered: " .. input)
end
})
webhookTextbox:SetValue("https://discord.com/api/webhooks/1234567890/abcdefg")
print(webhookTextbox:GetValue()) -- Prints the current input value
Displays a temporary notification.
Argument | Type | Default | Description |
---|---|---|---|
Description |
string |
"This is an example notification!" |
The notification text. |
Duration |
number |
5 |
Duration of the notification (in seconds). |
Example:
Library:Notify({
Description = "Script executed successfully!",
Duration = 3
})
- The library automatically handles validation for all arguments using
Library:_validate()
. - Meaning if you miss a field (like
Name
for a Button) it will set it self to the default value.
This is my first ever proper UI library, so any feedback is appreciated. I hope you find this useful! :)
Made with 💕 by @focat69
Check out https://weao.xyz & https://juggi.ng whilst you're at it.
Thank you to all contributors for adding little fixes!