Aprenda
Classe do mecanismo
ChangeHistoryService
Não criável
Serviço

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.


Resumo
Membros herdados

Referência API
Métodos
FinishRecording
Segurança do plugin
ChangeHistoryService:FinishRecording(
identifier:string, operation:Enum.FinishRecordingOperation, finalOptions:Dictionary?
):()
Parâmetros
identifier:string
finalOptions:Dictionary?
Devolução
()
Amostras de código
ChangeHistoryService:TryBeginRecording
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Exemplo de Plugin")
local button = toolbar:CreateButton("Neonize", "", "")
button.Click:Connect(function()
local parts = {}
for _, part in pairs(Selection:Get()) do
if part:IsA("BasePart") then
parts[#parts + 1] = part
end
end
if #parts < 1 then
-- Nada a fazer.
return
end
local recording = ChangeHistoryService:TryBeginRecording("Definir seleção para neon")
if not recording then
-- Lidar com o erro aqui. Isso indica que seu plugin começou um registro anterior
-- e nunca o completou. Você pode ter apenas um registro
-- por plugin ativo de cada vez.
return
end
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)

GetCanRedo
Segurança do plugin
ChangeHistoryService:GetCanRedo():Tuple
Devolução

GetCanUndo
Segurança do plugin
ChangeHistoryService:GetCanUndo():Tuple
Devolução

IsRecordingInProgress
Segurança do plugin
ChangeHistoryService:IsRecordingInProgress(identifier:string?):boolean
Parâmetros
identifier:string?
Devolução

Redo
Segurança do plugin
ChangeHistoryService:Redo():()
Devolução
()

ResetWaypoints
Segurança do plugin
ChangeHistoryService:ResetWaypoints():()
Devolução
()

SetEnabled
Segurança do plugin
ChangeHistoryService:SetEnabled(state:boolean):()
Parâmetros
state:boolean
Devolução
()

SetWaypoint
Segurança do plugin
ChangeHistoryService:SetWaypoint(name:string):()
Parâmetros
name:string
Devolução
()
Amostras de código
Serviço de Histórico de Mudanças:DefinirPontoDeVista
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Exemplo de Plugin")
local button = toolbar:CreateButton("Neonize", "", "")
button.Click:Connect(function()
local parts = {}
for _, part in pairs(Selection:Get()) do
if part:IsA("BasePart") then
parts[#parts + 1] = part
end
end
if #parts > 0 then
-- Chamar DefinirPontoDeVista antes do trabalho não causará problemas, no entanto
-- é redundante, apenas a chamada DEPOIS do trabalho é necessária.
--ChangeHistoryService:SetWaypoint("Definindo seleção para neon")
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
-- Chame DefinirPontoDeVista DEPOIS de completar o trabalho
ChangeHistoryService:SetWaypoint("Definir seleção para neon")
else
-- Nada a fazer. Você não precisa chamar DefinirPontoDeVista no caso em que
-- a ação não acabou fazendo nenhuma alteração na experiência.
end
end)

TryBeginRecording
Segurança do plugin
ChangeHistoryService:TryBeginRecording(
name:string, displayName:string?
Parâmetros
name:string
displayName:string?
Devolução
Amostras de código
ChangeHistoryService:TryBeginRecording
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Exemplo de Plugin")
local button = toolbar:CreateButton("Neonize", "", "")
button.Click:Connect(function()
local parts = {}
for _, part in pairs(Selection:Get()) do
if part:IsA("BasePart") then
parts[#parts + 1] = part
end
end
if #parts < 1 then
-- Nada a fazer.
return
end
local recording = ChangeHistoryService:TryBeginRecording("Definir seleção para neon")
if not recording then
-- Lidar com o erro aqui. Isso indica que seu plugin começou um registro anterior
-- e nunca o completou. Você pode ter apenas um registro
-- por plugin ativo de cada vez.
return
end
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)

Undo
Segurança do plugin
ChangeHistoryService:Undo():()
Devolução
()

Eventos
OnRecordingFinished
Segurança do plugin
ChangeHistoryService.OnRecordingFinished(
name:string, displayName:string?, identifier:string?, operation:Enum.FinishRecordingOperation, finalOptions:Dictionary?
Parâmetros
name:string
displayName:string?
identifier:string?
finalOptions:Dictionary?

OnRecordingStarted
Segurança do plugin
ChangeHistoryService.OnRecordingStarted(
name:string, displayName:string?
Parâmetros
name:string
displayName:string?

OnRedo
Segurança do plugin
ChangeHistoryService.OnRedo(waypoint:string):RBXScriptSignal
Parâmetros
waypoint:string

OnUndo
Segurança do plugin
ChangeHistoryService.OnUndo(waypoint:string):RBXScriptSignal
Parâmetros
waypoint:string

©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.