Track
트랙 관련 제어를 하는 객체에요.
함수
void AddLocalMove(string TrackName, Vector Pos, number Time, bool CheckCollision)
로컬 좌표를 기준으로 이동 변화를 추가할 수 있어요. (설정할 Track 이름, 이동 변화를 줄 값, 완료까지 걸리는 시간, 충돌 처리 여부)
-- 샘플 --
local cube = Workspace.Cube
local pos = Vector.new(0, 500, 0)
local moveSpeed = 2
local waitTime = 1
cube.Track:AddLocalMove("Move", Vector.new(pos.X, pos.Y, pos.Z), moveSpeed, false) --이동 트랙을 등록해요. (이동 트랙은 여러개도 등록할 수 있어요.)
cube.Track:AddEmpty("Move", waitTime) --대기 트랙을 등록해요.
cube.Track:AddLocalMove("Move", Vector.new(-pos.X, -pos.Y, -pos.Z), moveSpeed, false)
cube.Track:AddEmpty("Move", waitTime)
cube.Track:PlayTransformTrack("Move", Enum.TransformPlayType.Repeat, InfinityPlay) --이름에 해당하는 트랙을 재생해요.
void AddLocalRot(string TrackName, Vector Rot, number Time)
로컬 좌표를 기준으로 회전 변화를 추가할 수 있어요. (설정할 Track 이름, 회전 변화를 줄 값, 완료까지 걸리는 시간)
-- 샘플 --
local cube = Workspace.Cube
local moveSpeed = 2
cube.Track:AddLocalRot("Rot", Vector.new(0, 0, 360), moveSpeed) --회전 트랙을 등록해요.
cube.Track:AddLocalRot("Rot", Vector.new(0, 360, 0), moveSpeed) --회전 트랙은 여러개도 등록할 수 있어요.
cube.Track:PlayTransformTrack("Rot", Enum.TransformPlayType.Repeat, InfinityPlay) --이름에 해당하는 트랙을 재생해요.
void AddLocalScale(string TrackName, Vector Scale, number Time)
로컬 좌표를 기준으로 스케일 변화를 추가할 수 있어요. (설정할 Track 이름, 스케일 변화를 줄 값, 완료까지 걸리는 시간)
-- 샘플 --
local cube = Workspace.Cube
local moveSpeed = 2
cube.Track:AddLocalScale("Size", Vector.new(0.6, 0.6, 0.6), moveSpeed) --크기 트랙을 등록해요.
cube.Track:AddLocalScale("Size", Vector.new(-0.6, -0.6, -0.6), moveSpeed) --크기 트랙은 여러개도 등록할 수 있어요.
cube.Track:PlayTransformTrack("Size", Enum.TransformPlayType.Repeat, InfinityPlay) --이름에 해당하는 트랙을 재생해요.
void AddWorldMove(string TrackName, Vector Pos, number Time, bool CheckCollision)
월드 좌표를 기준으로 이동 변화를 추가할 수 있어요. (설정할 Track 이름, 이동 변화를 줄 값, 완료까지 걸리는 시간, 충돌 처리 여부)
-- 샘플 --
local cube = Workspace.Cube
local pos = Vector.new(0, 500, 0)
local moveSpeed = 2
local waitTime = 1
cube.Track:AddWorldMove("Move", Vector.new(pos.X, pos.Y, pos.Z), moveSpeed, false) --이동 트랙을 등록해요. (이동 트랙은 여러개도 등록할 수 있어요.)
cube.Track:AddEmpty("Move", waitTime) --대기 트랙을 등록해요.
cube.Track:AddWorldMove("Move", Vector.new(-pos.X, -pos.Y, -pos.Z), moveSpeed, false)
cube.Track:AddEmpty("Move", waitTime)
cube.Track:PlayTransformTrack("Move", Enum.TransformPlayType.Repeat, InfinityPlay) --이름에 해당하는 트랙을 재생해요.
void AddWorldRot(string TrackName, Vector Rot, number Time)
월드 좌표를 기준으로 회전 변화를 추가할 수 있어요. (설정할 Track 이름, 회전 변화를 줄 값, 완료까지 걸리는 시간)
-- 샘플 --
local cube = Workspace.Cube
local moveSpeed = 2
cube.Track:AddWorldRot("Rot", Vector.new(0, 0, 360), moveSpeed) --회전 트랙을 등록해요.
cube.Track:AddWorldRot("Rot", Vector.new(0, 360, 0), moveSpeed) --회전 트랙은 여러개도 등록할 수 있어요.
cube.Track:PlayTransformTrack("Rot", Enum.TransformPlayType.Repeat, InfinityPlay) --이름에 해당하는 트랙을 재생해요.
void AddEmpty(string TrackName, number Time)
객체 변환에 대기 시간을 추가할 수 있어요. (추가할 Track 이름, 대기 시간)
-- 샘플 --
local cube = Workspace.Cube
local pos = Vector.new(0, 500, 0)
local moveSpeed = 2
local waitTime = 1
cube.Track:AddLocalMove("Move", Vector.new(pos.X, pos.Y, pos.Z), moveSpeed, false) --이동 트랙을 등록해요. (이동 트랙은 여러개도 등록할 수 있어요.)
cube.Track:AddEmpty("Move", waitTime) --대기 트랙을 등록해요.
cube.Track:AddLocalMove("Move", Vector.new(-pos.X, -pos.Y, -pos.Z), moveSpeed, false)
cube.Track:AddEmpty("Move", waitTime)
cube.Track:PlayTransformTrack("Move", Enum.TransformPlayType.Repeat, InfinityPlay) --이름에 해당하는 트랙을 재생해요.
void PlayTransformTrack(string TrackName, TransformPlayType Type, number PlayCount)
설정된 변환 컨트롤러를 실행시켜요. (실행할 Track 이름, Enum.TransformPlayType.타입 , 실행 횟수)
-- 샘플 --
local cube = Workspace.Cube
local pos = Vector.new(0, 500, 0)
local moveSpeed = 2
local waitTime = 1
cube.Track:AddLocalMove("Move", Vector.new(pos.X, pos.Y, pos.Z), moveSpeed, false) --이동 트랙을 등록해요.
cube.Track:AddLocalMove("Move", Vector.new(0, 0, 0), waitTime, false) --이동 트랙은 여러개도 등록할 수 있어요.
cube.Track:AddLocalMove("Move", Vector.new(-pos.X, -pos.Y, -pos.Z), moveSpeed, false)
cube.Track:AddLocalMove("Move", Vector.new(0, 0, 0), waitTime, false)
cube.Track:PlayTransformTrack("Move", Enum.TransformPlayType.Repeat, InfinityPlay) --이름에 해당하는 트랙을 재생해요.
void StopTransformTrack(string TrackName)
변환 컨트롤러를 정지시켜요. (정지할 Track 이름)
-- 샘플 --
local cube = Workspace.Cube
cube.Track:StopTransformTrack("Move") --이름에 해당하는 트랙을 멈춰요.
void PauseTransformTrack(string TrackName)
변환 컨트롤러를 일시 정지시켜요 (일시 정지할 Track 이름)
-- 샘플 --
local cube = Workspace.Cube
cube.Track:PauseTransformTrack("Move") --이름에 해당하는 트랙을 일시정지해요.
void ResumeTransformTrack(string TrackName)
변환 컨트롤러를 다시 플레이시켜요. (플레이할 Track 이름)
-- 샘플 --
local cube = Workspace.Cube
cube.Track:ResumeTransformTrack("Move") --이름에 해당하는 일시정지된 트랙을 다시 재생해요.
bool IsPlayingTransformTrack(string TrackName)
해당 TransformTrack이 플레이 중인지 확인할 수 있어요. (확인할 Track 이름)
-- 샘플 --
local cube = Workspace.Cube
if cube.Track:IsPlayingTransformTrack("Move") == true then --이름에 해당하는 트랙이 재생중이면 true를 반환해요.
print("Track is Playing")
end
void ResetTransformTrack(string TrackName)
해당 TransformTrack 이 적용되기 전의 Transform으로 리셋시켜요. (리셋할 Track 이름)
-- 샘플 --
local cube = Workspace.Cube
cube.Track:ResetTransformTrack("Move") --이름에 해당하는 트랙이 적용되기전의 트랜스폼으로 리셋해요. (트랙이 멈추진 않아요.)
void RemoveTransformTrack(string TrackName)
해당 Track을 제거해요. (제거할 Track 이름)
-- 샘플 --
local cube = Workspace.Cube
cube.Track:RemoveTransformTrack("Move") --이름에 해당하는 트랙을 제거해요.
void ResetTransform()
TransformTrack 이 적용되기 전의 최초 Transform으로 리셋시켜요.
-- 샘플 --
local cube = Workspace.Cube
cube.Track:ResetTransform() --적용되기전의 트랜스폼으로 리셋해요. (트랙이 멈추진 않아요.)
void SetEndEventTransformTrack(string TrackName, function TargetFunction)
TransformTrack 이 끝나면 등록한 function 을 호출합니다.
-- 샘플 --
local cube = Workspace.Cube
local pos = Vector.new(200, 0, 0)
local moveSpeed = 2
cube.Track:AddLocalMove("Move", pos, moveSpeed, false)
local function EndMove()
print("EndMove!")
end
cube.Track:SetEndEventTransformTrack("Move", EndMove) --이름에 해당하는 트랙이 끝나면 호출되는 함수를 연결해요.
cube.Track:PlayTransformTrack("Move", Enum.TransformPlayType.Repeat, 1)
Last updated
Was this helpful?