Найти в Дзене
257 подписчиков

local textButton = script.Parent -- Ссылка на TextButton

local originalMaterials = {} -- Таблица для хранения оригинальных материалов
local decalId = "rbxassetid://YOUR_DECAL_ID" -- Замените YOUR_DECAL_ID на ID вашего Decal
local isTransformed = false -- Флаг для отслеживания состояния

-- Функция для замены всех Parts на Decal
local function transformParts()
for _, obj in pairs(workspace:GetChildren()) do
if obj:IsA("Part") then
-- Сохраняем оригинальный материал
originalMaterials[obj] = obj.Material
-- Удаляем все Decal, чтобы избежать дублирования
for _, child in pairs(obj:GetChildren()) do
if child:IsA("Decal") then
child:Destroy()
end
end
-- Заменяем материал на SmoothPlastic
obj.Material = Enum.Material.SmoothPlastic
-- Добавляем Decal на каждую сторону Part
for _, face in pairs(Enum.NormalId:GetEnumItems()) do
local decal = Instance.new("Decal")
decal.Texture = decalId
decal.Face = face
decal.Parent = obj
end
end
end
end

-- Функция для восстановления оригинальных Parts
local function restoreParts()
for part, material in pairs(originalMaterials) do
part.Material = material -- Восстанавливаем оригинальный материал
-- Удаляем все Decal, чтобы вернуть Part в исходное состояние
for _, child in pairs(part:GetChildren()) do
if child:IsA("Decal") then
child:Destroy() -- Удаляем Decal
end
end
end
originalMaterials = {} -- Очищаем таблицу оригинальных материалов
end

-- Основная функция для переключения состояния
local function toggleTransformation()
if isTransformed then
restoreParts() -- Восстанавливаем оригинальные Parts
else
transformParts() -- Заменяем на Decal
end
isTransformed = not isTransformed -- Переключаем состояние
end

-- Привязываем функцию к событию наж
1 минута