Learn
Motor Sınıfı
Plugin
Oluşturulamaz

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.


Özet
Yöntemler
Activate(exclusiveMouse: boolean):()
CreateDockWidgetPluginGui(pluginGuiId: string,dockWidgetPluginGuiInfo: DockWidgetPluginGuiInfo):DockWidgetPluginGui
Artık Kullanılmayan
CreatePluginAction(actionId: string,text: string,statusTip: string,iconName: string,allowBinding: boolean):PluginAction
GetSetting(key: string):Variant
GetStudioUserId():number
Artık Kullanılmayan
ImportFbxAnimation(rigModel: Instance,isR15: boolean):Instance
Artık Kullanılmayan
ImportFbxRig(isR15: boolean):Instance
Artık Kullanılmayan
Intersect(objects: Instances):Instance
Negate(objects: Instances):Instances
OpenScript(script: LuaSourceContainer,lineNumber: number):()
Artık Kullanılmayan
PromptSaveSelection(suggestedFileName: string):boolean
Artık Kullanılmayan
Separate(objects: Instances):Instances
SetSetting(key: string,value: Variant):()
StartDrag(dragData: Dictionary):()
Union(objects: Instances):Instance
Devralınan Üyeler
Kod Örnekleri
Script - Eklentinin Global'ını bir ModuleScript'e geçirin
assert(plugin, "Bu script bir eklenti olarak çalıştırılmalıdır!")
-- Bu noktadan sonraki kod yalnızca script bir eklenti olarak çalıştırıldığında yürütülecektir
-- Modülü yükleyin ve eklenti referansını geçin
local pluginModule = require(script.Parent.PluginModule)
pluginModule:Initialize(plugin)
-- Eklenti referansının başlatılıp başlatılmadığını doğrulayın
pluginModule:CheckForPluginGlobal()
ModülScript - Eklentinin Global'ini Al ve Sakla
local pluginModule = {}
local plugin -- Yerel eklenti referansı
-- Eklenti referansı daha önce ayarlanmamışsa başlat
function pluginModule:Initialize(pluginReference: Plugin)
if plugin ~= pluginReference then
plugin = pluginReference
else
error("Eklenti zaten başlatıldı")
end
end
-- Eklenti referansının ayarlanıp ayarlanmadığını kontrol et ve uygun bilgileri yazdır
function pluginModule:CheckForPluginGlobal()
if plugin ~= nil then
print("Eklenti referansı ayarlandı!")
else
warn("Eklenti referansı eksik!")
end
end
return pluginModule

API Referansı
Özellikler
CollisionEnabled
Salt Okunur
Çoğaltılmamış
Paralel oku
Plugin.CollisionEnabled:boolean

DisableUIDragDetectorDrags
Roblox Betik Güvenliği
Paralel oku
Plugin.DisableUIDragDetectorDrags:boolean

GridSize
Salt Okunur
Çoğaltılmamış
Paralel oku
Plugin.GridSize:number

IsDebuggable
Roblox Betik Güvenliği
Paralel oku
Plugin.IsDebuggable:boolean

Yöntemler
Activate
Eklenti Güvenliği
Plugin:Activate(exclusiveMouse:boolean):()
Parametreler
exclusiveMouse:boolean
Dönüşler
()

CreateDockWidgetPluginGui
Artık Kullanılmayan

CreateDockWidgetPluginGuiAsync
Bekletir
Eklenti Güvenliği
Plugin:CreateDockWidgetPluginGuiAsync(
pluginGuiId:string, dockWidgetPluginGuiInfo:DockWidgetPluginGuiInfo
Parametreler
pluginGuiId:string
dockWidgetPluginGuiInfo:DockWidgetPluginGuiInfo
Kod Örnekleri
Widget GUI Metin Butonu
-- Yeni 'DockWidgetPluginGuiInfo' nesnesi oluştur
local widgetInfo = DockWidgetPluginGuiInfo.new(
Enum.InitialDockState.Float, -- Widget yüzen panelde başlatılacak
true, -- Widget başlangıçta etkin olacak
false, -- Önceki etkin durumu geçersiz kılma
200, -- Yüzen pencerenin varsayılan genişliği
300, -- Yüzen pencerenin varsayılan yüksekliği
150, -- Yüzen pencerenin minimum genişliği (isteğe bağlı)
150 -- Yüzen pencerenin minimum yüksekliği (isteğe bağlı)
)
-- Yeni widget GUI oluştur
local testWidget = plugin:CreateDockWidgetPluginGuiAsync("TestWidget", widgetInfo)
local testButton = Instance.new("TextButton")
testButton.BorderSizePixel = 0
testButton.TextSize = 20
testButton.TextColor3 = Color3.new(1, 0.2, 0.4)
testButton.AnchorPoint = Vector2.new(0.5, 0.5)
testButton.Size = UDim2.new(1, 0, 1, 0)
testButton.Position = UDim2.new(0.5, 0, 0.5, 0)
testButton.SizeConstraint = Enum.SizeConstraint.RelativeYY
testButton.Text = "Bana Tıkla"
testButton.Parent = testWidget

CreatePluginAction
Eklenti Güvenliği
Plugin:CreatePluginAction(
actionId:string, text:string, statusTip:string, iconName:string, allowBinding:boolean
Parametreler
actionId:string
text:string
statusTip:string
iconName:string
allowBinding:boolean
Varsayılan değer: true
Dönüşler
Kod Örnekleri
Bir PluginAction Oluşturma
local pluginAction = plugin:CreatePluginAction(
"MerhabaDunyaEylemi",
"Merhaba Dünya",
"'Merhaba dünya!' yazdırır",
"rbxasset://textures/sparkle.png",
true
)
pluginAction.Name = "Test Eylemi"
local function actionTriggered()
print("Merhaba dünya!")
end
pluginAction.Triggered:Connect(actionTriggered)

CreatePluginMenu
Eklenti Güvenliği
Plugin:CreatePluginMenu(
id:string, title:string, icon:string
Parametreler
title:string
icon:string
Dönüşler
Kod Örnekleri
Bir PluginMenu ve PluginMenuAction Oluşturma
-- Bu kod Komut Çubuğu'na yapıştırılabilir, ancak yalnızca bir kez
local pluginMenu = plugin:CreatePluginMenu(math.random(), "Test Menüsü")
pluginMenu.Name = "Test Menüsü"
pluginMenu:AddNewAction("EylemA", "A", "rbxasset://textures/loading/robloxTiltRed.png")
pluginMenu:AddNewAction("EylemB", "B", "rbxasset://textures/loading/robloxTilt.png")
local subMenu = plugin:CreatePluginMenu(math.random(), "C", "rbxasset://textures/explosion.png")
subMenu.Name = "Alt Menü"
subMenu:AddNewAction("EylemD", "D", "rbxasset://textures/whiteCircle.png")
subMenu:AddNewAction("EylemE", "E", "rbxasset://textures/icon_ROBUX.png")
pluginMenu:AddMenu(subMenu)
pluginMenu:AddSeparator()
pluginMenu:AddNewAction("EylemF", "F", "rbxasset://textures/sparkle.png")
local toggle = Instance.new("BoolValue")
toggle.Name = "TogglePluginMenu"
toggle.Parent = workspace
local function onToggled()
if toggle.Value then
toggle.Value = false
local selectedAction = pluginMenu:ShowAsync()
if selectedAction then
print("Seçilen Eylem:", selectedAction.Text, " ile ActionId:", selectedAction.ActionId)
else
print("Kullanıcı bir eylem seçmedi!")
end
end
end
toggle.Changed:Connect(onToggled)

CreateToolbar
Eklenti Güvenliği
Plugin:CreateToolbar(name:string):PluginToolbar
Parametreler
name:string
Dönüşler
Kod Örnekleri
Eklenti:Araç Çubuğu Oluştur
plugin:CreateToolbar("ÖrnekAraçÇubuğu")

Deactivate
Eklenti Güvenliği
Plugin:Deactivate():()
Dönüşler
()

GetJoinMode
Eklenti Güvenliği
Plugin:GetJoinMode():Enum.JointCreationMode

GetMouse
Eklenti Güvenliği
Plugin:GetMouse():PluginMouse
Dönüşler
Kod Örnekleri
Eklenti:FareyiAl
local mouse = plugin:GetMouse()
local function button1Down()
print("PluginMouse'tan Buton 1 basıldı")
end
mouse.Button1Down:Connect(button1Down)

GetSelectedRibbonTool
Eklenti Güvenliği
Plugin:GetSelectedRibbonTool():Enum.RibbonTool
Dönüşler
Kod Örnekleri
Eklenti:SeçiliŞeritAracınıAl
plugin:SelectRibbonTool(Enum.RibbonTool.Move, UDim2.new())
task.wait() -- bir sonraki kareyi bekleyin
local selectedRibbonTool = plugin:GetSelectedRibbonTool()
print("Seçili RibbonTool şudur:", selectedRibbonTool)

GetSetting
Eklenti Güvenliği
Plugin:GetSetting(key:string):Variant
Parametreler
key:string
Dönüşler
Variant
Kod Örnekleri
Eklenti:AyarıAl
local RAN_BEFORE_KEY = "RanBefore"
local didRunBefore = plugin:GetSetting(RAN_BEFORE_KEY)
if didRunBefore then
print("Hoş geldin geri!")
else
plugin:SetSetting(RAN_BEFORE_KEY, true)
print("Hoş geldin! Bu eklentiyi yüklediğin için teşekkürler!")
end

GetStudioUserId
Artık Kullanılmayan

ImportFbxAnimation
Artık Kullanılmayan

ImportFbxAnimationAsync
Bekletir
Eklenti Güvenliği
Plugin:ImportFbxAnimationAsync(
rigModel:Instance, isR15:boolean
Parametreler
rigModel:Instance
isR15:boolean
Varsayılan değer: true
Dönüşler

ImportFbxRig
Artık Kullanılmayan

ImportFbxRigAsync
Bekletir
Eklenti Güvenliği
Plugin:ImportFbxRigAsync(isR15:boolean):Instance
Parametreler
isR15:boolean
Varsayılan değer: true
Dönüşler

Intersect
Eklenti Güvenliği
Plugin:Intersect(objects:Instances):Instance
Parametreler
objects:Instances
Dönüşler

IsActivated
Eklenti Güvenliği
Plugin:IsActivated():boolean
Dönüşler

IsActivatedWithExclusiveMouse
Eklenti Güvenliği
Plugin:IsActivatedWithExclusiveMouse():boolean
Dönüşler

Negate
Eklenti Güvenliği
Plugin:Negate(objects:Instances):Instances
Parametreler
objects:Instances
Dönüşler
Instances

OpenScript
Artık Kullanılmayan

OpenWikiPage
Eklenti Güvenliği
Plugin:OpenWikiPage(url:string):()
Parametreler
url:string
Dönüşler
()
Kod Örnekleri
Eklenti:AçWikiSayfası
plugin:AçWikiSayfası("API:Sınıf/BasePart")

PromptForExistingAssetId
Bekletir
Eklenti Güvenliği
Plugin:PromptForExistingAssetId(assetType:string):number
Parametreler
assetType:string
Dönüşler

PromptForExistingAssetIdAsync
Bekletir
Eklenti Güvenliği
Plugin:PromptForExistingAssetIdAsync(assetType:string):number
Parametreler
assetType:string
Dönüşler

PromptSaveSelection
Artık Kullanılmayan

PromptSaveSelectionAsync
Bekletir
Eklenti Güvenliği
Plugin:PromptSaveSelectionAsync(suggestedFileName:string):boolean
Parametreler
suggestedFileName:string
Dönüşler

SaveSelectedToRoblox
Eklenti Güvenliği
Plugin:SaveSelectedToRoblox():()
Dönüşler
()

SelectRibbonTool
Eklenti Güvenliği
Plugin:SelectRibbonTool(
tool:Enum.RibbonTool, position:UDim2
):()
Parametreler
position:UDim2
Dönüşler
()

Separate
Eklenti Güvenliği
Plugin:Separate(objects:Instances):Instances
Parametreler
objects:Instances
Dönüşler
Instances

SetSetting
Eklenti Güvenliği
Plugin:SetSetting(
key:string, value:Variant
):()
Parametreler
key:string
value:Variant
Dönüşler
()
Kod Örnekleri
Eklenti:GetSetting ve Eklenti:SetSetting
local RAN_BEFORE_KEY = "RunBefore"
local hasRunBefore = plugin:GetSetting(RAN_BEFORE_KEY)
if hasRunBefore then
print("Hoş geldin tekrar!")
else
print("Bu eklentiyi yüklediğiniz için teşekkürler!")
plugin:SetSetting(RAN_BEFORE_KEY, true)
end

StartDrag
Eklenti Güvenliği
Plugin:StartDrag(dragData:Dictionary):()
Parametreler
dragData:Dictionary
Dönüşler
()
Kod Örnekleri
Eklenti Sürükle ve Bırak
assert(plugin, "Bu betik bir Studio eklentisi olarak çalıştırılmalıdır")
local widgetInfo = DockWidgetPluginGuiInfo.new(Enum.InitialDockState.Float, true, true, 300, 200)
local dragSourceWidget = plugin:CreateDockWidgetPluginGuiAsync("Sürükleme Kaynağı", widgetInfo)
dragSourceWidget.Title = "Sürükleme Kaynağı"
local textBox = Instance.new("TextBox")
textBox.Parent = dragSourceWidget
textBox.Size = UDim2.new(1, 0, 0, 32)
textBox.Text = "Merhaba, eklenti sürüklemeleri"
local dragButton = Instance.new("TextButton")
dragButton.Size = UDim2.new(1, 0, 1, -32)
dragButton.Position = UDim2.new(0, 0, 0, 32)
dragButton.Text = "Yukarıdaki metni düzenle, sonra buradan sürüklemeye başla"
dragButton.Parent = dragSourceWidget
function onMouseButton1Down()
local dragData = {
Sender = "BazıSürüklemeKaynağı",
MimeType = "text/plain",
Data = textBox.Text,
MouseIcon = "",
DragIcon = "",
HotSpot = Vector2.new(0, 0),
}
plugin:StartDrag(dragData)
end
dragButton.MouseButton1Down:Connect(onMouseButton1Down)
-- Bu widget bırakmaları alacak
local dragTargetWidget = plugin:CreateDockWidgetPluginGuiAsync("Bırakma Hedefi", widgetInfo)
dragTargetWidget.Title = "Bırakma Hedefi"
-- Bu TextLabel bırakılanı gösterecek
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.Text = "Buraya bırak..."
textLabel.Parent = dragTargetWidget
local function onDragDrop(dragData)
if dragData.MimeType == "text/plain" then
textLabel.Text = dragData.Data
else
textLabel.Text = dragData.MimeType
end
end
dragTargetWidget.PluginDragDropped:Connect(onDragDrop)
dragTargetWidget.PluginDragEntered:Connect(function(_dragData)
print("PluginDragEntered")
end)
dragTargetWidget.PluginDragLeft:Connect(function(_dragData)
print("PluginDragLeft")
end)
dragTargetWidget.PluginDragMoved:Connect(function(_dragData)
print("PluginDragMoved")
end)

Union
Eklenti Güvenliği
Plugin:Union(objects:Instances):Instance
Parametreler
objects:Instances
Dönüşler

Olaylar
Deactivation
Eklenti Güvenliği
Plugin.Deactivation():RBXScriptSignal

Unloading
Eklenti Güvenliği
Plugin.Unloading():RBXScriptSignal

©2026 Roblox Corporation. Roblox, the Roblox logo and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.