エンジンクラス
ChangeHistoryService
*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。
概要
方法
FinishRecording(identifier: string,operation: Enum.FinishRecordingOperation,finalOptions: Dictionary?):() |
IsRecordingInProgress(identifier: string?):boolean |
Redo():() |
ResetWaypoints():() |
SetEnabled(state: boolean):() |
SetWaypoint(name: string):() |
TryBeginRecording(name: string,displayName: string?):string? |
Undo():() |
イベント
OnRecordingFinished(name: string,displayName: string?,identifier: string?,operation: Enum.FinishRecordingOperation,finalOptions: Dictionary?):RBXScriptSignal |
OnRecordingStarted(name: string,displayName: string?):RBXScriptSignal |
OnRedo(waypoint: string):RBXScriptSignal |
OnUndo(waypoint: string):RBXScriptSignal |
APIリファレンス
方法
FinishRecording
ChangeHistoryService:FinishRecording(
):()
パラメータ
戻り値
()
コードサンプル
ChangeHistoryService:TryBeginRecording
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("例のプラグイン")
local button = toolbar:CreateButton("ネオンにする", "", "")
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
-- 何もすることはありません。
return
end
local recording = ChangeHistoryService:TryBeginRecording("選択をネオンに設定")
if not recording then
-- ここでエラーを処理します。このエラーは、プラグインが以前の
-- 録音を開始したが、完了しなかったことを示します。プラグインごとに
-- アクティブな録音は1つのみです。
return
end
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)IsRecordingInProgress
Redo
ChangeHistoryService:Redo():()
戻り値
()
ResetWaypoints
ChangeHistoryService:ResetWaypoints():()
戻り値
()
SetWaypoint
パラメータ
戻り値
()
コードサンプル
ChangeHistoryService:SetWaypoint
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Example Plugin")
local button = toolbar:CreateButton("Neon it up", "", "")
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
-- 作業の前に SetWaypoint を呼び出しても問題はありませんが、
-- 冗長です、実際に作業の後に呼び出す必要があります。
--ChangeHistoryService:SetWaypoint("選択をネオンに設定")
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
-- 作業を完了した後に SetWaypoint を呼び出します
ChangeHistoryService:SetWaypoint("選択をネオンに設定")
else
-- 何もすることはありません。アクションが体験に変更を加えなかった場合は、
-- SetWaypoint を呼び出す必要はありません。
end
end)TryBeginRecording
戻り値
コードサンプル
ChangeHistoryService:TryBeginRecording
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("例のプラグイン")
local button = toolbar:CreateButton("ネオンにする", "", "")
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
-- 何もすることはありません。
return
end
local recording = ChangeHistoryService:TryBeginRecording("選択をネオンに設定")
if not recording then
-- ここでエラーを処理します。このエラーは、プラグインが以前の
-- 録音を開始したが、完了しなかったことを示します。プラグインごとに
-- アクティブな録音は1つのみです。
return
end
for _, part in pairs(parts) do
part.Material = Enum.Material.Neon
end
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)Undo
ChangeHistoryService:Undo():()
戻り値
()
イベント
OnRecordingFinished
ChangeHistoryService.OnRecordingFinished(
name:string, displayName:string?, identifier:string?, operation:Enum.FinishRecordingOperation, finalOptions:Dictionary?
パラメータ
OnRecordingStarted