Lua (Roblox) 如何从 Localscript 调用某些东西
Posted
技术标签:
【中文标题】Lua (Roblox) 如何从 Localscript 调用某些东西【英文标题】:Lua (Roblox) how to call something from Localscript 【发布时间】:2018-07-28 14:25:18 【问题描述】:服务器脚本中有这段代码。当玩家触摸砖块时会发生这种情况......
game.workspace.CurrentCamera.CameraSubject = clone.Head
如果在 Roblox 工作室中运行,这段代码可以正常工作。但从 roblox 服务器运行时,不起作用。
我明白为什么它不起作用,因为必须从本地脚本更改当前相机。我的问题是我找不到从服务器脚本调用本地脚本的方法...
我尝试在本地脚本中创建一个函数
function changeCameraSubj(newSubj)
game.workspace.CurrentCamera.CameraSubject = clone.Head
end
但似乎不能直接从服务器脚本调用 LocalScript 函数...
所以我的问题是,从服务器脚本调用必须在 LocalScript 中执行的函数的最佳方法是什么?我在上面尝试了很多变化,但似乎没有什么能正常沟通。 常识会告诉我,我需要创建一个本地脚本可以侦听的自定义服务器事件,但我似乎也找不到任何工作方式。
任何帮助将不胜感激。
【问题讨论】:
【参考方案1】:我个人想不出任何需要通过 ServerScript 执行此操作的原因;如果可能的话,我建议通过 LocalScript 简单地执行此操作。
也就是说,如果您必须为此使用 ServerScript,请将您的本地代码放在 LocalScript 中,并通过 RemoteEvent 在您的 ServerScript 上触发它。如果您需要教程,这里有一个内容丰富的指南here。
【讨论】:
感谢您的回复...播放器在服务器脚本中做了一些需要更改摄像机主题的操作...但是摄像机主题只能在本地脚本中更改。所以我需要向客户端发送一个远程事件。我之前看过您引用的页面,我注意到在每个示例中,他们都假设事件总是在添加播放器时立即发生,我从未找到创建可以在实际中发生的事件的精简示例游戏玩法(不仅在添加玩家时) 您能否给我一个示例,说明两个脚本中所需的最少调用次数,以便它们都能正常通信..例如,创建事件所需的服务器脚本代码..以及监听所需的本地脚本代码对于事件.. 我无法轻松地整理他们示例中的所有额外代码,以具体了解两个脚本上的事件需要什么,以及该特定情况的额外填充物是什么 第二个链接坏了以上是关于Lua (Roblox) 如何从 Localscript 调用某些东西的主要内容,如果未能解决你的问题,请参考以下文章