function module:CarSpawn(player,Pos,par) wait() local car local val = player:WaitForChild("Values") local kt = val:WaitForChild("KartChosen") repeat wait() until (carModels:FindFirstChild(val.KartChosen.Value)) car = carModels:FindFirstChild(val.KartChosen.Value):Clone() --anchor(car,true,true,"VehicleSeat") local center = car:GetModelCFrame() TransformObjects(car:GetChildren(),center,Pos +Vector3.new(0, (car:GetExtentsSize().Y /2) + 1,0),true) car:MakeJoints() wait() repeat wait() until player.Character repeat wait() until player.Character.Torso player.Character.Humanoid.WalkSpeed = 0 car.Parent=par car:MakeJoints() Instance.new("Model",car).Name = "DestoryOnLeave" --player.Character.Torso.CFrame = car.VehicleSeat.CFrame + Vector3.new(0,car:GetExtentsSize().Y + 1 ,0) local Xeld = Instance.new("Weld",car.VehicleSeat) -- makes a weld Xeld.Name = "SeatWeld" Xeld.Part0,Xeld.Part1 = Xeld.Parent, player.Character.HumanoidRootPart -- welds the parts player.Character.Humanoid.Sit = true -- makes the player sit Xeld.C0,Xeld.C1 = CFrame.new( 0, 0.6, 0, 1, 0, -0, 0, 0, 1, 0, -1, -0),CFrame.new(0, -1.5, 0, 1, 0, -0, 0, 0, 1, 0, -1, -0) --Aujust the positions. return car end
Thats the code, All works as expected aparting from welding the player to the seat.
local Xeld = Instance.new("Weld",car.VehicleSeat) -- makes a weld Xeld.Name = "SeatWeld" Xeld.Part0,Xeld.Part1 = Xeld.Parent, player.Character.HumanoidRootPart -- welds the parts player.Character.Humanoid.Sit = true -- makes the player sit Xeld.C0,Xeld.C1 = CFrame.new( 0, 0.6, 0, 1, 0, -0, 0, 0, 1, 0, -1, -0),CFrame.new(0, -1.5, 0, 1, 0, -0, 0, 0, 1, 0, -1, -0) --Aujust the positions
The exact code "sniped" that dose not work as expected.
Any question feel free to ask though pm on roblox or comment below, Username : DarkBeemo
I would use a script to position the Character with 0 Speed and a No-Jump feature
player.Character.Humanoid.WalkSpeed=0 player.Character.Humanoid.Jumping:connect(function() player.Character.Humanoid.Jump=false end) player.Character.Torso.CFrame=car.VehicleSeat.CFrame+Vector3.new(0,3,0)
Although I don't think this is the best way to do it