所以我有一个统一的 3D 文本上的文本网格脚本,我希望它从具有 OnMouseDown 函数的多维数据集访问变量,在该函数内它会更改分数,我希望该分数为输出到文本中。立方体脚本是用javascript编写的,而我是用cs编写文本脚本的。有人有主意吗?
最佳答案
如果我误解了您的问题,请纠正我,我可能会这样做。
选项 1:
C# 代码在 js 代码之前编译,这意味着您无法从 C# 代码访问用 javascript 编写的任何类/类型。然而,位于名为 Plugins
的文件夹中的脚本是在“游戏代码”之前编译的,因此您可以将 js 脚本移动到名为 Plugins 的文件夹中,然后从 C# 代码访问其类型。
这是一种 hacky 方法(如果它不是插件,则不应位于名为 Plugins 的文件夹中),但它会起作用。
选项 2:
在运行时通过反射从 js 文件访问您需要的任何内容。不过我不会推荐这样做,因为反射通常很慢。不过,可以采取一些技巧来加快速度。
仅当您绝对坚持不应将 javascript 文件转换为 c# 或位于 Plugins 文件夹中时才选择此选项。
选项 3:
将 JavaScript 文件转换为 C# 文件。这就是我推荐的。
关于javascript - unity 从一个脚本到另一个脚本的变量访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30699336/