Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.

Paste

Pasted as Lua by xyz ( 6 years ago )
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")

local Lift = script.Parent

--local DURATION = 3

local Door11 = game.Workspace.Door11
local Door12 = game.Workspace.Door12
local Door21 = game.Workspace.Door21
local Door22 = game.Workspace.Door22
local Door31 = game.Workspace.Door31
local Door32 = game.Workspace.Door32

local LiftGroup = game.Workspace.LiftGroup

local InDoor1 = LiftGroup.InDoor1
local InDoor2 = LiftGroup.InDoor2

local CD1 = game.Workspace.Part1.ClickDetector
local CD2 = game.Workspace.Part2.ClickDetector
local CD3 = game.Workspace.Part3.ClickDetector

for _, Part0 in pairs (LiftGroup:GetChildren()) do
	if Part0:IsA("BasePart") and not (Part0 == Lift) then
		local WeldConstraint = Instance.new("WeldConstraint")
		WeldConstraint.Part0 = Part0
		WeldConstraint.Part1 = Lift
		WeldConstraint.Parent = WeldConstraint.Part0
	end
end

local Tweenfo = TweenInfo.new(
	3,
	Enum.EasingStyle.Sine,
	Enum.EasingDirection.In,
	0,
	false,
	0
)

local Goals1 = 
{
	CFrame = CFrame.new(0,0,0)
}

local Goals2 = 
{
	CFrame = CFrame.new(0,15,0)
}

local Goals3 = 
{
	CFrame = CFrame.new(0,30,0)
}

local TweenLift1 = TweenService:Create(Lift, Tweenfo, Goals1)

local TweenLift2 = TweenService:Create(Lift, Tweenfo, Goals2)

local TweenLift3 = TweenService:Create(Lift, Tweenfo, Goals3)

local DoorOpenTweenfo = TweenInfo.new(
	2,
	Enum.EasingStyle.Sine,
	Enum.EasingDirection.In,
	0,
	false,
	0
)

local DoorGoals11 = {Position = Vector3.new(7.85,5.75,-5.35)}
local DoorGoals12 = {Position = Vector3.new(-7.85,5.75,-5.35)}
local DoorGoals21 = {Position = Vector3.new(7.85,20.75,-5.35)}
local DoorGoals22 = {Position = Vector3.new(-7.85,20.75,-5.35)}
local DoorGoals31 = {Position = Vector3.new(7.85,35.75,-5.35)}
local DoorGoals32 = {Position = Vector3.new(-7.85,35.75,-5.35)}

local DoorCloseGoals11 = {Position = Vector3.new(2.96,5.75,-5.35)}
local DoorCloseGoals12 = {Position = Vector3.new(-2.96,5.75,-5.35)}
local DoorCloseGoals21 = {Position = Vector3.new(2.96,20.75,-5.35)}
local DoorCloseGoals22 = {Position = Vector3.new(-2.96,20.75,-5.35)}
local DoorCloseGoals31 = {Position = Vector3.new(2.96,35.75,-5.35)}
local DoorCloseGoals32 = {Position = Vector3.new(-2.96,35.75,-5.35)}

local InDoorGoals1 = {CFrame = Lift.CFrame*CFrame.new(-7.71,5.8,-5.5)}
local InDoorGoals2 = {CFrame = Lift.CFrame*CFrame.new(7.71,5.8,-5.5)}

local InDoorCloseGoals1 = {CFrame = Lift.CFrame*CFrame.new(-2.71,5.8,-5.5)}
local InDoorCloseGoals2 = {CFrame = Lift.CFrame*CFrame.new(2.71,5.8,-5.5)}

--local Doors = {{game.Workspace.Door11, game.Workspace.Door12}, {game.Workspace.Door21, game.Workspace.Door22}}

local TweenDoor1 = TweenService:Create(Door11, DoorOpenTweenfo, DoorGoals11)
local TweenDoor12 = TweenService:Create(Door12, DoorOpenTweenfo, DoorGoals12)
local TweenDoor2 = TweenService:Create(Door21, DoorOpenTweenfo, DoorGoals21)
local TweenDoor22 = TweenService:Create(Door22, DoorOpenTweenfo, DoorGoals22)
local TweenDoor3 = TweenService:Create(Door31, DoorOpenTweenfo, DoorGoals31)
local TweenDoor32 = TweenService:Create(Door32, DoorOpenTweenfo, DoorGoals32)

local TweenIndoor1 = TweenService:Create(InDoor1, DoorOpenTweenfo, InDoorGoals1)
local TweenIndoor2 = TweenService:Create(InDoor2, DoorOpenTweenfo, InDoorGoals2)

local TweenCloseIndoor1 = TweenService:Create(InDoor1, DoorOpenTweenfo, InDoorCloseGoals1)
local TweenCloseIndoor2 = TweenService:Create(InDoor2, DoorOpenTweenfo, InDoorCloseGoals2)

local TweenCloseDoor1 = TweenService:Create(Door11, DoorOpenTweenfo, DoorCloseGoals11)
local TweenCloseDoor12 = TweenService:Create(Door12, DoorOpenTweenfo, DoorCloseGoals12)
local TweenCloseDoor2 = TweenService:Create(Door21, DoorOpenTweenfo, DoorCloseGoals21)
local TweenCloseDoor22 = TweenService:Create(Door22, DoorOpenTweenfo, DoorCloseGoals22)
local TweenCloseDoor3 = TweenService:Create(Door31, DoorOpenTweenfo, DoorCloseGoals31)
local TweenCloseDoor32 = TweenService:Create(Door32, DoorOpenTweenfo, DoorCloseGoals32)

local TweenCloseDoor = {{TweenCloseDoor1, TweenCloseDoor12},{TweenCloseDoor2, TweenCloseDoor22},{TweenCloseDoor3, TweenCloseDoor32}}
local TweenDoor = {{TweenDoor1, TweenDoor12},{TweenDoor2, TweenDoor22},{TweenDoor3, TweenDoor32}}

local function CloseInDoors ()
TweenCloseIndoor1:Play()
TweenCloseIndoor2:Play()
end

local function InDoors ()
TweenIndoor1:Play()
TweenIndoor2:Play()
end
--local inc = 5*(tick()%DURATION)/DURATION
local function CloseDoors(Door)
    for _,Door in pairs(TweenCloseDoor) do
	Door[1]:Play()
	Door[2]:Play()
	end
		
        --Door[1].CFrame = Door[1].CFrame * CFrame.new(0, 0, inc)
        --Door[2].CFrame = Door[2].CFrame * CFrame.new(0, 0, -inc)
   -- end
end

--- Insert a Vector3 to return to?

local function OpenDoor(Door)
	Door[1]:Play()
	Door[2]:Play()
    --Door[1].CFrame = Door[1].CFrame * CFrame.new(0, 0, -inc)
    --Door[2].CFrame = Door[2].CFrame * CFrame.new(0, 0, inc)
end

function OpenDoors()
    for _,Door in pairs(TweenDoor) do
        OpenDoor(Door)
    end
end

CD1.MouseClick:Connect(function()
	CloseDoors()
	wait()
	CloseInDoors()
	wait(2)
	--BoolVal = true
	TweenLift1:Play()
	TweenLift1.Completed:Connect(function()
			InDoors()
			wait()
        	OpenDoor(TweenDoor[1])
	end)
end)

CD2.MouseClick:Connect(function()
	CloseDoors()
	wait()
	CloseInDoors()
	wait(2)
	--BoolVal = true
	TweenLift2:Play()
	TweenLift2.Completed:Connect(function()
			InDoors()
			wait()
        	OpenDoor(TweenDoor[2])
	end)
end)

CD3.MouseClick:Connect(function()
	CloseDoors()
	wait()
	CloseInDoors()
	wait(2)
	--BoolVal = true
	TweenLift3:Play()
	TweenLift3.Completed:Connect(function()
			InDoors()
			wait()
        	OpenDoor(TweenDoor[3])
	end)
end)

 

Revise this Paste

Children: 105707
Your Name: Code Language: