Lewati ke konten
Berfungsi

IY Infinite Yield plugin maker

CLclarkdevlinorg1 tayanganUniversal26 Jul 2026
Bagikan
IY Infinite Yield plugin maker

Kode Script

Lua
local UserInputService = game:GetService("UserInputService")
local TextService = game:GetService("TextService")
local TweenService = game:GetService("TweenService")

local function getSafeParent()
    if gethui then
        return gethui()
    elseif game:GetService("CoreGui") then
        return game:GetService("CoreGui")
    end
    return game:GetService("Players").LocalPlayer.PlayerGui
end

if getSafeParent():FindFirstChild("IYPluginMaker") then
    getSafeParent().IYPluginMaker:Destroy()
end

--------------------------------------------------------------------------------
-- UI CONSTRUCTION
--------------------------------------------------------------------------------

local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "IYPluginMaker"
ScreenGui.Parent = getSafeParent()
ScreenGui.ResetOnSpawn = false
ScreenGui.IgnoreGuiInset = true
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling

local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(0, 480, 0, 550)
MainFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
MainFrame.AnchorPoint = Vector2.new(0.5, 0.5)
MainFrame.BackgroundColor3 = Color3.fromRGB(35, 35, 40)
MainFrame.BorderSizePixel = 0
MainFrame.ClipsDescendants = true
MainFrame.Parent = ScreenGui

local UICorner = Instance.new("UICorner")
UICorner.CornerRadius = UDim.new(0, 8)
UICorner.Parent = MainFrame

local UIStroke = Instance.new("UIStroke")
UIStroke.Color = Color3.fromRGB(60, 60, 65)
UIStroke.Thickness = 1
UIStroke.Parent = MainFrame

local Dragging, DragInput, DragStart, StartPos

local function Update(input)
    local delta = input.Position - DragStart
    local newPos = UDim2.new(StartPos.X.Scale, StartPos.X.Offset + delta.X, StartPos.Y.Scale, StartPos.Y.Offset + delta.Y)
    TweenService:Create(MainFrame, TweenInfo.new(0.05), {Position = newPos}):Play()
end

MainFrame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        Dragging = true
        DragStart = input.Position
        StartPos = MainFrame.Position
        
        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                Dragging = false
            end
        end)
    end
end)

MainFrame.InputChanged:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
        if Dragging then Update(input) end
    end
end)

local TopBar = Instance.new("Frame")
TopBar.Name = "TopBar"
TopBar.Size = UDim2.new(1, 0, 0, 40)
TopBar.BackgroundColor3 = Color3.fromRGB(45, 45, 50)
TopBar.BorderSizePixel = 0
TopBar.Parent = MainFrame

local TopBarCorner = Instance.new("UICorner")
TopBarCorner.CornerRadius = UDim.new(0, 8)
TopBarCorner.Parent = TopBar

local BottomHider = Instance.new("Frame")
BottomHider.Size = UDim2.new(1, 0, 0, 10)
BottomHider.Position = UDim2.new(0, 0, 1, -10)
BottomHider.BorderSizePixel = 0
BottomHider.BackgroundColor3 = TopBar.BackgroundColor3
BottomHider.Parent = TopBar

local TitleLabel = Instance.new("TextLabel")
TitleLabel.Text = "IY Plugin Maker V2"
TitleLabel.Font = Enum.Font.GothamBold
TitleLabel.TextSize = 16
TitleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TitleLabel.Size = UDim2.new(1, -50, 1, 0)
TitleLabel.Position = UDim2.new(0, 15, 0, 0)
TitleLabel.BackgroundTransparency = 1
TitleLabel.TextXAlignment = Enum.TextXAlignment.Left
TitleLabel.Parent = TopBar

local CloseButton = Instance.new("TextButton")
CloseButton.Name = "Close"
CloseButton.Size = UDim2.new(0, 40, 1, 0)
CloseButton.Position = UDim2.new(1, -40, 0, 0)
CloseButton.BackgroundTransparency = 1
CloseButton.Text = "×"
CloseButton.TextSize = 24
CloseButton.TextColor3 = Color3.fromRGB(200, 200, 200)
CloseButton.Font = Enum.Font.Gotham
CloseButton.Parent = TopBar
CloseButton.MouseButton1Click:Connect(function() ScreenGui:Destroy() end)

local Container = Instance.new("ScrollingFrame")
Container.Name = "Content"
Container.Size = UDim2.new(1, 0, 1, -40) 
Container.Position = UDim2.new(0, 0, 0, 40)
Container.BackgroundTransparency = 1
Container.ScrollBarThickness = 4
Container.ScrollBarImageColor3 = Color3.fromRGB(100, 100, 100)
Container.AutomaticCanvasSize = Enum.AutomaticSize.Y
Container.CanvasSize = UDim2.new(0, 0, 0, 0)
Container.Parent = MainFrame

local UIList = Instance.new("UIListLayout")
UIList.Parent = Container
UIList.Padding = UDim.new(0, 15)
UIList.HorizontalAlignment = Enum.HorizontalAlignment.Center
UIList.SortOrder = Enum.SortOrder.LayoutOrder

local UIPadding = Instance.new("UIPadding")
UIPadding.Parent = Container
UIPadding.PaddingTop = UDim.new(0, 15)
UIPadding.PaddingBottom = UDim.new(0, 80)

--------------------------------------------------------------------------------
-- HELPER FUNCTION: CREATE INPUTS
--------------------------------------------------------------------------------
local function CreateInput(labelText, placeholder, height, multiLine, layoutOrder)
    local Wrapper = Instance.new("Frame")
    Wrapper.Name = "Input_" .. labelText
    Wrapper.Size = UDim2.new(0.9, 0, 0, height + 25) 
    Wrapper.BackgroundTransparency = 1
    Wrapper.LayoutOrder = layoutOrder
    Wrapper.Parent = Container
    
    local Label = Instance.new("TextLabel")
    Label.Text = labelText
    Label.Size = UDim2.new(1, 0, 0, 20)
    Label.BackgroundTransparency = 1
    Label.Font = Enum.Font.GothamBold
    Label.TextColor3 = Color3.fromRGB(200, 200, 200)
    Label.TextSize = 13
    Label.TextXAlignment = Enum.TextXAlignment.Left
    Label.Parent = Wrapper
    
    local BoxFrame = Instance.new("Frame")
    BoxFrame.Size = UDim2.new(1, 0, 0, height)
    BoxFrame.Position = UDim2.new(0, 0, 0, 25)
    BoxFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
    BoxFrame.BorderSizePixel = 0
    BoxFrame.Parent = Wrapper
    
    local BoxCorner = Instance.new("UICorner")
    BoxCorner.CornerRadius = UDim.new(0, 6)
    BoxCorner.Parent = BoxFrame
    
    local BoxStroke = Instance.new("UIStroke")
    BoxStroke.Color = Color3.fromRGB(50, 50, 55)
    BoxStroke.Transparency = 0.5
    BoxStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
    BoxStroke.Parent = BoxFrame

    local InputObject
    if multiLine then
        Wrapper.AutomaticSize = Enum.AutomaticSize.Y
        BoxFrame.AutomaticSize = Enum.AutomaticSize.Y
        
        InputObject = Instance.new("TextBox")
        InputObject.Size = UDim2.new(1, -16, 0, height)
        InputObject.Position = UDim2.new(0, 8, 0, 8)
        InputObject.AutomaticSize = Enum.AutomaticSize.Y
        InputObject.MultiLine = true
        InputObject.TextXAlignment = Enum.TextXAlignment.Left
        InputObject.TextYAlignment = Enum.TextYAlignment.Top
        
        local TextPadding = Instance.new("UIPadding")
        TextPadding.PaddingBottom = UDim.new(0, 8)
        TextPadding.Parent = BoxFrame
        InputObject.Parent = BoxFrame
    else
        InputObject = Instance.new("TextBox")
        InputObject.Size = UDim2.new(1, -16, 1, 0)
        InputObject.Position = UDim2.new(0, 8, 0, 0)
        InputObject.TextXAlignment = Enum.TextXAlignment.Left
        InputObject.Parent = BoxFrame
    end
    
    InputObject.BackgroundTransparency = 1
    InputObject.Text = ""
    InputObject.PlaceholderText = placeholder
    InputObject.TextColor3 = Color3.fromRGB(255, 255, 255)
    InputObject.PlaceholderColor3 = Color3.fromRGB(120, 120, 120)
    InputObject.Font = Enum.Font.Gotham
    InputObject.TextSize = 14
    
    InputObject.ClearTextOnFocus = false
    
    InputObject.Focused:Connect(function()
        TweenService:Create(BoxStroke, TweenInfo.new(0.2), {Color = Color3.fromRGB(100, 150, 255), Transparency = 0}):Play()
    end)
    InputObject.FocusLost:Connect(function()
        TweenService:Create(BoxStroke, TweenInfo.new(0.2), {Color = Color3.fromRGB(50, 50, 55), Transparency = 0.5}):Play()
    end)

    return InputObject
end

--------------------------------------------------------------------------------
-- FIELDS
--------------------------------------------------------------------------------

local inputs = {}
inputs.pluginName = CreateInput("Plugin Name", "SuperFly", 35, false, 1)
inputs.pluginDesc = CreateInput("Plugin Description", "Allows you to fly super fast", 35, false, 2)
inputs.cmdName = CreateInput("Command Name", "superfly", 35, false, 3)
inputs.aliases = CreateInput("Aliases", "sfly, fastfly", 35, false, 4)
inputs.cmdDesc = CreateInput("Command Description", "Enable super flight", 35, false, 5)
inputs.funcCode = CreateInput("Function (Lua Code)", "-- Type your code here\nlocal hum = speaker.Character.Humanoid...", 200, true, 6)

--------------------------------------------------------------------------------
-- CREATE BUTTON
--------------------------------------------------------------------------------

local Footer = Instance.new("Frame")
Footer.Size = UDim2.new(1, 0, 0, 60)
Footer.Position = UDim2.new(0, 0, 1, -60)
Footer.BackgroundColor3 = Color3.fromRGB(40, 40, 45)
Footer.BorderSizePixel = 0
Footer.ZIndex = 5 
Footer.Parent = MainFrame

local FooterLine = Instance.new("Frame")
FooterLine.Size = UDim2.new(1, 0, 0, 1)
FooterLine.BackgroundColor3 = Color3.fromRGB(60, 60, 65)
FooterLine.BorderSizePixel = 0
FooterLine.Parent = Footer

local GenerateBtn = Instance.new("TextButton")
GenerateBtn.Size = UDim2.new(1, -40, 0, 35)
GenerateBtn.Position = UDim2.new(0.5, 0, 0.5, 0)
GenerateBtn.AnchorPoint = Vector2.new(0.5, 0.5)
GenerateBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 100)
GenerateBtn.Text = "Save Plugin (.iy)"
GenerateBtn.Font = Enum.Font.GothamBold
GenerateBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
GenerateBtn.TextSize = 14
GenerateBtn.AutoButtonColor = true
GenerateBtn.Parent = Footer

local BtnCorner = Instance.new("UICorner")
BtnCorner.CornerRadius = UDim.new(0, 6)
BtnCorner.Parent = GenerateBtn

GenerateBtn.MouseButton1Click:Connect(function()
    local name = inputs.pluginName.Text
    local desc = inputs.pluginDesc.Text
    local cmd = inputs.cmdName.Text
    local cmdD = inputs.cmdDesc.Text
    local aliasRaw = inputs.aliases.Text
    local code = inputs.funcCode.Text
    
    if name == "" or cmd == "" then
        if notify then notify("Plugin Creator: Name and Command are required.") end
        GenerateBtn.Text = "Error: Missing Fields!"
        wait(1)
        GenerateBtn.Text = "Export to Workspace (.iy)"
        return
    end

    local aliasFormatted = ""
    local count = 0
    for s in string.gmatch(aliasRaw, "([^,]+)") do
        local clean = s:gsub("^%s*", ""):gsub("%s*$", "")
        if clean ~= "" then
            aliasFormatted = aliasFormatted .. '"' .. clean .. '", '
            count = count + 1
        end
    end
    if count > 0 then
        aliasFormatted = aliasFormatted:sub(1, -3)
    end
    
    local listName = cmd
    if count > 0 then
        listName = cmd .. " / " .. aliasRaw:gsub(",", " /")
    end

    local finalStr = string.format(
[[local Plugin = {
    ["PluginName"] = "%s",
    ["PluginDescription"] = "%s",
    ["Commands"] = {
        ["%s"] = {
            ["ListName"] = "%s",
            ["Description"] = "%s",
            ["Aliases"] = {%s},
            ["Function"] = function(args, speaker)
%s
            end,
        },
    },
}

return Plugin]], 
    name, 
    desc, 
    cmd, 
    listName, 
    cmdD, 
    aliasFormatted, 
    code
    )
    
    local fileName = name .. ".iy"
    local success, err = pcall(function()
        writefile(fileName, finalStr)
    end)
    
    if success then
        if notify then
            notify("Plugin Saved: " .. fileName)
        end
        GenerateBtn.Text = "Success! Saved " .. fileName
        task.wait(2)
        GenerateBtn.Text = "Export to Workspace (.iy)"
    else
        warn("Writefile Error: ", err)
        if notify then notify("Plugin Creator Error: Check console") end
        GenerateBtn.Text = "Write Failed"
    end
end)

return "UI Loaded"

Deskripsi

credits to the original creator who im too lazy to look for

Komentar (0)

Masuk untuk ikut berdiskusi

  • Jadilah yang pertama berkomentar.

Pertanyaan yang sering diajukan

Bagaimana cara menggunakan script IY Infinite Yield plugin maker?
Salin kode script di atas, buka executor Roblox Anda, tempel kodenya, lalu tekan execute saat Anda berada di dalam game. Fitur akan aktif seketika setelah script berjalan.
Apakah script IY Infinite Yield plugin maker gratis?
Ya. Script ini gratis untuk disalin dan digunakan. Jika menggunakan sistem kunci, ikuti tautan "Dapatkan kunci" untuk membukanya tanpa biaya.
Apakah script IY Infinite Yield plugin maker aman digunakan?
Kode sumber lengkap ditampilkan di halaman ini sehingga Anda bisa membaca persis apa yang dilakukannya sebelum menjalankannya. Selalu gunakan executor tepercaya, dan ingat bahwa menggunakan script melanggar ketentuan layanan Roblox, jadi gunakan dengan risiko Anda sendiri.
Executor mana yang kompatibel dengan IY Infinite Yield plugin maker?
Script ini bekerja dengan sebagian besar executor Roblox populer. Lihat halaman executor kami untuk menemukan executor gratis atau berbayar yang tepercaya untuk perangkat Anda.
IY Infinite Yield plugin maker | BloxScripter