You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编写Roblox函数时遇语法错误:expected identifier when parsing expression, got '='

问题解决:Roblox Lua 解析错误及功能修正

你的代码存在几处语法和逻辑问题,既触发了expected identifier when parsing expression, got '='解析错误,也无法实现点击生成Part的预期功能,以下是具体修正方案:

错误点及修正说明

  • 函数定义语法错误:Lua中函数定义不需要在括号后加冒号,function createPushBlock():里的冒号是多余的,这是触发解析错误的直接原因,需改为function createPushBlock()。
  • 无效对象引用:你提前销毁了初始的newPart,函数内newPart = newPart的赋值完全无意义,还会引用已销毁的对象,必须在函数内部重新创建Part实例。
  • 事件连接错误:MouseClick:Connect()需要传入函数引用,而不是函数调用结果,你写的createPushBlock()会立即执行函数,应改为createPushBlock(不带括号)。
  • BrickColor赋值错误:直接给BrickColor传字符串无效,需用BrickColor.new()方法或内置枚举值赋值。

修正后的完整代码

local clickdetector = script.Parent.ClickDetector

local function createPushBlock()
    -- 每次点击创建新Part
    local newPart = Instance.new('Part')
    newPart.Parent = workspace
    newPart.BrickColor = BrickColor.new("Neon orange")
    -- 可选:设置位置避免生成在原点(比如在点击部件上方生成)
    newPart.Position = script.Parent.Position + Vector3.new(0, 2, 0)
    newPart.Size = Vector3.new(2, 2, 2)
end

-- 连接点击事件,传入函数引用
clickdetector.MouseClick:Connect(createPushBlock)

额外建议:使用local声明变量避免全局变量污染,给新Part设置位置参数,防止生成在默认原点导致无法直观看到效果。

内容的提问来源于stack exchange,提问作者s_ecialkai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 06:41:00