我想只使用y位置而不是x,y,z位置。这是我的代码
答案 0 :(得分:1)
没有办法单独编辑Y值,但您可以在当前向量中附加一个新向量,或者使用一些旧组件重新创建向量。
示例:
local Position = Vector3.new(12, 5, 9)
local newPosition = Position + Vector3.new(0, 10, 0)
print(newPosition) -- prints (12, 15, 9)
CFrame的原理是相同的。如果您只需要在世界轴上进行干净移动,也可以向CFrame添加矢量。
local myCf = CFrame.new(12, 5, 9, ...) -- some CFrame, '...' corresponding to the CFrame-components for rotation.
local newCf = myCf + Vector3.new(0, 10, 0)
print(newCf) -- prints (12, 15, 9, ...)
或者,您可以使用现有组件重新创建Vector / CFrame
local Position = Vector3.new(12, 5, 9)
local newPosition = Vector3.new(Position.X, 15, Position.Z)
答案 1 :(得分:0)
您是说要获取对象的y位置还是仅将其移动到y属性,这是这两个示例
ypos = part.Position.Y
或
part.CFrame = CFrame.new(part.CFrame.X,part.CFrame.Y,part.CFrame.Z)
第二个参数保持不变,但更改y值,也可以通过将其保持不变并将其从当前y值移到该部分上。代码中的CFrame.Y部分仅添加+1或您很想在之后正确地移动它,希望这对我有帮助,否则我不会清楚地理解问题