Lua Workspace.Gromaniak85.LocalScript:7:应为';)';(要关闭';(';在第25列),获取';.2xblock';
我想做的是得到chracters躯干到区块的距离。我不知道为什么,但当我引用文件夹时,它会给出那个错误 这是错误代码: Workspace.Gromaniak85.LocalScript:7:Expected')(要关闭'('在第25列),获得'.2xblock'Lua Workspace.Gromaniak85.LocalScript:7:应为';)';(要关闭';(';在第25列),获取';.2xblock';,lua,roblox,Lua,Roblox,我想做的是得到chracters躯干到区块的距离。我不知道为什么,但当我引用文件夹时,它会给出那个错误 这是错误代码: Workspace.Gromaniak85.LocalScript:7:Expected')(要关闭'('在第25列),获得'.2xblock' local DistanceRemote = game:GetService("ReplicatedStorage").DistanceFromBlock local player = script.Parent.
local DistanceRemote = game:GetService("ReplicatedStorage").DistanceFromBlock
local player = script.Parent.Parent
local BrickMultipliers = game.Workspace.BrickMultipliers
while true do
wait(0.5)
local distancefrom2x = (game.Workspace[player.Name].UpperTorso.Position - BrickMultipliers.2xblock.Position).magnitude --error happens there
print(distancefrom2x)
end
以下是studio中的情况:
我真的不知道该怎么办,所以我非常感谢您的帮助!!在Lua中,您不能引用以符号(包括数字)开头的对象。您必须将其用方括号和引号括起来。这意味着您还可以去掉点(.):
brickmulti钳s[“2xblock”].Position
这将整数(2)与字符串的其余部分(xblock)结合起来,使Roblox能够成功引用您的部件。根据名称,不能以数字开头
Lua中的名称(也称为标识符)可以是拉丁语的任意字符串
字母、阿拉伯-印度数字和下划线,不以字母开头
数字且不是保留字。标识符用于命名
变量、表字段和标签
以下关键字为保留关键字,不能用作名称:
and break do else elseif end
false for function goto if in
local nil not or repeat return
then true until while
因此,这是无效语法:brickmulti钳子.2xblock.Position
从
语法var.Name只是var[“Name”]的语法糖:
变量::=前缀xp'.'名称
因此,这种方便的语法只适用于Lua标识符(名称)
As2xblock
以数字开头,因此不能作为名称。因此brickmulti钳子.2xblock
会导致错误
对于任何不是Lua名称的表键,必须使用方括号表示法
brickmulti钳s[“2xblock”]
字段名不能以数字开头。请将其重命名为其他名称。或者以brickmulti钳s[“2xblock”]的身份访问它.Position
请选择代码而不是图像:tostring
不将整数与字符串组合。虽然您的解决方案是正确的,但您的推理非常幼稚、误导和错误。