Help with moving obby block

ok so im making obby and trying to make it so a block moves from one place to another but its not working

does anyone know why? I dont understand but this is what i tried after i saw a tutorial on tweens

local TweenService=game:GetService("TweenService")
local block=workspace.ObbyBlock
local info=TweenInfo.new(0.05,Enum.EasingStyle.Linear,Enum.EasingDirection.In,0,false,0)

local T1=TweenService:Create(block,info,{Position=Vector3.new(0,5,0)})
local T2=TweenService:Create(block,info,{Position=Vector3.new(1,5,0)})
local T3=TweenService:Create(block,info,{Position=Vector3.new(2,5,0)})
local T4=TweenService:Create(block,info,{Position=Vector3.new(3,5,0)})
local T5=TweenService:Create(block,info,{Position=Vector3.new(4,5,0)})
local T6=TweenService:Create(block,info,{Position=Vector3.new(5,5,0)})
local T7=TweenService:Create(block,info,{Position=Vector3.new(6,5,0)})
local T8=TweenService:Create(block,info,{Position=Vector3.new(7,5,0)})
local T9=TweenService:Create(block,info,{Position=Vector3.new(8,5,0)})
local T10=TweenService:Create(block,info,{Position=Vector3.new(9,5,0)})
local T11=TweenService:Create(block,info,{Position=Vector3.new(10,5,0)})
local T12=TweenService:Create(block,info,{Position=Vector3.new(11,5,0)})
local T13=TweenService:Create(block,info,{Position=Vector3.new(12,5,0)})
local T14=TweenService:Create(block,info,{Position=Vector3.new(13,5,0)})
local T15=TweenService:Create(block,info,{Position=Vector3.new(14,5,0)})
local T16=TweenService:Create(block,info,{Position=Vector3.new(15,5,0)})
local T17=TweenService:Create(block,info,{Position=Vector3.new(16,5,0)})
local T18=TweenService:Create(block,info,{Position=Vector3.new(17,5,0)})
local T19=TweenService:Create(block,info,{Position=Vector3.new(18,5,0)})
local T20=TweenService:Create(block,info,{Position=Vector3.new(19,5,0)})
local T21=TweenService:Create(block,info,{Position=Vector3.new(20,5,0)})
local T22=TweenService:Create(block,info,{Position=Vector3.new(21,5,0)})
local T23=TweenService:Create(block,info,{Position=Vector3.new(22,5,0)})
local T24=TweenService:Create(block,info,{Position=Vector3.new(23,5,0)})
local T25=TweenService:Create(block,info,{Position=Vector3.new(24,5,0)})
local T26=TweenService:Create(block,info,{Position=Vector3.new(25,5,0)})
local T27=TweenService:Create(block,info,{Position=Vector3.new(26,5,0)})
local T28=TweenService:Create(block,info,{Position=Vector3.new(27,5,0)})
local T29=TweenService:Create(block,info,{Position=Vector3.new(28,5,0)})
local T30=TweenService:Create(block,info,{Position=Vector3.new(29,5,0)})
local T31=TweenService:Create(block,info,{Position=Vector3.new(30,5,0)})
local T32=TweenService:Create(block,info,{Position=Vector3.new(31,5,0)})
local T33=TweenService:Create(block,info,{Position=Vector3.new(32,5,0)})
local T34=TweenService:Create(block,info,{Position=Vector3.new(33,5,0)})
local T35=TweenService:Create(block,info,{Position=Vector3.new(34,5,0)})
local T36=TweenService:Create(block,info,{Position=Vector3.new(35,5,0)})
local T37=TweenService:Create(block,info,{Position=Vector3.new(36,5,0)})
local T38=TweenService:Create(block,info,{Position=Vector3.new(37,5,0)})
local T39=TweenService:Create(block,info,{Position=Vector3.new(38,5,0)})
local T40=TweenService:Create(block,info,{Position=Vector3.new(39,5,0)})
local T41=TweenService:Create(block,info,{Position=Vector3.new(40,5,0)})
local T42=TweenService:Create(block,info,{Position=Vector3.new(41,5,0)})
local T43=TweenService:Create(block,info,{Position=Vector3.new(42,5,0)})
local T44=TweenService:Create(block,info,{Position=Vector3.new(43,5,0)})
local T45=TweenService:Create(block,info,{Position=Vector3.new(44,5,0)})
local T46=TweenService:Create(block,info,{Position=Vector3.new(45,5,0)})
local T47=TweenService:Create(block,info,{Position=Vector3.new(46,5,0)})
local T48=TweenService:Create(block,info,{Position=Vector3.new(47,5,0)})
local T49=TweenService:Create(block,info,{Position=Vector3.new(48,5,0)})
local T50=TweenService:Create(block,info,{Position=Vector3.new(49,5,0)})
local T51=TweenService:Create(block,info,{Position=Vector3.new(50,5,0)})
local T52=TweenService:Create(block,info,{Position=Vector3.new(51,5,0)})
local T53=TweenService:Create(block,info,{Position=Vector3.new(52,5,0)})
local T54=TweenService:Create(block,info,{Position=Vector3.new(53,5,0)})
local T55=TweenService:Create(block,info,{Position=Vector3.new(54,5,0)})
local T56=TweenService:Create(block,info,{Position=Vector3.new(55,5,0)})
local T57=TweenService:Create(block,info,{Position=Vector3.new(56,5,0)})
local T58=TweenService:Create(block,info,{Position=Vector3.new(57,5,0)})
local T59=TweenService:Create(block,info,{Position=Vector3.new(58,5,0)})
local T60=TweenService:Create(block,info,{Position=Vector3.new(59,5,0)})
local T61=TweenService:Create(block,info,{Position=Vector3.new(60,5,0)})
local T62=TweenService:Create(block,info,{Position=Vector3.new(61,5,0)})
local T63=TweenService:Create(block,info,{Position=Vector3.new(62,5,0)})
local T64=TweenService:Create(block,info,{Position=Vector3.new(63,5,0)})
local T65=TweenService:Create(block,info,{Position=Vector3.new(64,5,0)})
local T66=TweenService:Create(block,info,{Position=Vector3.new(65,5,0)})
local T67=TweenService:Create(block,info,{Position=Vector3.new(66,5,0)})
local T68=TweenService:Create(block,info,{Position=Vector3.new(67,5,0)})
local T69=TweenService:Create(block,info,{Position=Vector3.new(68,5,0)})
local T70=TweenService:Create(block,info,{Position=Vector3.new(69,5,0)})
local T71=TweenService:Create(block,info,{Position=Vector3.new(70,5,0)})
local T72=TweenService:Create(block,info,{Position=Vector3.new(71,5,0)})
local T73=TweenService:Create(block,info,{Position=Vector3.new(72,5,0)})
local T74=TweenService:Create(block,info,{Position=Vector3.new(73,5,0)})
local T75=TweenService:Create(block,info,{Position=Vector3.new(74,5,0)})
local T76=TweenService:Create(block,info,{Position=Vector3.new(75,5,0)})
local T77=TweenService:Create(block,info,{Position=Vector3.new(76,5,0)})
local T78=TweenService:Create(block,info,{Position=Vector3.new(77,5,0)})
local T79=TweenService:Create(block,info,{Position=Vector3.new(78,5,0)})
local T80=TweenService:Create(block,info,{Position=Vector3.new(79,5,0)})

local function go()
T1:Play();T1.Completed:Wait()
T2:Play();T2.Completed:Wait()
T3:Play();T3.Completed:Wait()
T4:Play();T4.Completed:Wait()
T5:Play();T5.Completed:Wait()
T6:Play();T6.Completed:Wait()
T7:Play();T7.Completed:Wait()
T8:Play();T8.Completed:Wait()
T9:Play();T9.Completed:Wait()
T10:Play();T10.Completed:Wait()
T11:Play();T11.Completed:Wait()
T12:Play();T12.Completed:Wait()
T13:Play();T13.Completed:Wait()
T14:Play();T14.Completed:Wait()
T15:Play();T15.Completed:Wait()
T16:Play();T16.Completed:Wait()
T17:Play();T17.Completed:Wait()
T18:Play();T18.Completed:Wait()
T19:Play();T19.Completed:Wait()
T20:Play();T20.Completed:Wait()
T21:Play();T21.Completed:Wait()
T22:Play();T22.Completed:Wait()
T23:Play();T23.Completed:Wait()
T24:Play();T24.Completed:Wait()
T25:Play();T25.Completed:Wait()
T26:Play();T26.Completed:Wait()
T27:Play();T27.Completed:Wait()
T28:Play();T28.Completed:Wait()
T29:Play();T29.Completed:Wait()
T30:Play();T30.Completed:Wait()
T31:Play();T31.Completed:Wait()
T32:Play();T32.Completed:Wait()
T33:Play();T33.Completed:Wait()
T34:Play();T34.Completed:Wait()
T35:Play();T35.Completed:Wait()
T36:Play();T36.Completed:Wait()
T37:Play();T37.Completed:Wait()
T38:Play();T38.Completed:Wait()
T39:Play();T39.Completed:Wait()
T40:Play();T40.Completed:Wait()
T41:Play();T41.Completed:Wait()
T42:Play();T42.Completed:Wait()
T43:Play();T43.Completed:Wait()
T44:Play();T44.Completed:Wait()
T45:Play();T45.Completed:Wait()
T46:Play();T46.Completed:Wait()
T47:Play();T47.Completed:Wait()
T48:Play();T48.Completed:Wait()
T49:Play();T49.Completed:Wait()
T50:Play();T50.Completed:Wait()
T51:Play();T51.Completed:Wait()
T52:Play();T52.Completed:Wait()
T53:Play();T53.Completed:Wait()
T54:Play();T54.Completed:Wait()
T55:Play();T55.Completed:Wait()
T56:Play();T56.Completed:Wait()
T57:Play();T57.Completed:Wait()
T58:Play();T58.Completed:Wait()
T59:Play();T59.Completed:Wait()
T60:Play();T60.Completed:Wait()
T61:Play();T61.Completed:Wait()
T62:Play();T62.Completed:Wait()
T63:Play();T63.Completed:Wait()
T64:Play();T64.Completed:Wait()
T65:Play();T65.Completed:Wait()
T66:Play();T66.Completed:Wait()
T67:Play();T67.Completed:Wait()
T68:Play();T68.Completed:Wait()
T69:Play();T69.Completed:Wait()
T70:Play();T70.Completed:Wait()
T71:Play();T71.Completed:Wait()
T72:Play();T72.Completed:Wait()
T73:Play();T73.Completed:Wait()
T74:Play();T74.Completed:Wait()
T75:Play();T75.Completed:Wait()
T76:Play();T76.Completed:Wait()
T77:Play();T77.Completed:Wait()
T78:Play();T78.Completed:Wait()
T79:Play();T79.Completed:Wait()
T80:Play();T80.Completed:Wait()
end

go()

3 Likes
local TweenService = game:GetService("TweenService")
local block = workspace.ObbyBlock
local tweenInfo = TweenInfo.new(4, Enum.EasingStyle.Linear, Enum.EasingDirection.In)

block.Position = Vector3.new(79, 5, 0)

local tween = TweenService:Create(block, tweenInfo, {
	Position = Vector3.new(79, 5, 0)
})

tween:Play()

You’re allowed to move the part more than one stud at a time.

1 Like

Are you sure this is the most efficient way of tweening a block?

2 Likes

It’s pretty good. Could be shortened by give or take 100 lines but yeah.

1 Like

If you want players to stay on the moving block then a tween isn’t the way to do it.
Tweening the CFrame isn’t a physical movement, so the block slides out from under the player.

Try using a PrismaticConstraint, set it to servo, and all you need to do is set the start point and end point with your script.
Here’s a sample model I made for people to inspect to see how to do this:
https://www.roblox.com/library/7645980152/PlatformModel

this is the most inefficient script, OP is doing it the REAL way

ok thanks i Just had to make sure, im gonna keep doing it my way for now .

1 Like

What @ScrollFrameRotation said was sarcasm. Please don’t do it your way…

As I said, it won’t move players if they stand on it.

1 Like

He has to adhere to the UGC emote animation guidelines. Can’t move that fast buddy

this isn’t the best way to write code
just learn loops here: Intro to for loops | Documentation - Roblox Creator Hub

@ScrollFrameRotation is just being sarcastic.

hate to break it to you but they don’t use tweens for animating

im gonna be honest i thought this was a troll post

2 Likes

I kinda thought the same, but you know…