This is a documentation for Board Game Arena: play board games online !
SandboxScripts
跳到导航
跳到搜索
以下是您可以从 Sandbox 脚本中调用的函数参考。
Javascript
BGA 沙箱脚本是用 Javascript 编写的。
使用Javascript,您可以编写脚本来让您的沙盒游戏具有更多的自动化规则。
重要:与 Javascript 最常见的用法相反,沙盒脚本在服务器端执行。
BGA API
为了与您的 BGA Sandbox 游戏交互,我们为您提供了一个 API。
使用此 API,您可以从当前游戏情况中获取游戏元素的属性值、修改它们和/或触发游戏行动(例如:移动配件、翻卡等)。
快速开始
Hello World
从 Sandbox 编辑器的“界面视图【interface view】”选项卡中,选择一个元素,并访问其属性(右上角的图标)。
转到“脚本(高级)【Scripts (advanced)】”部分。
在“单击此元素时【When this element is clicked】”前面,输入“onMyClick”。
关闭窗口。转到 “script view” 选项卡。
输入以下内容 :
function onMyClick( element_id ) { bga.log("Hello world! You just clicked on element " + element_id + ". Congrats!"); }
保存并发布您的项目,开始测试会话,点击前一个元素:您的消息会出现在右侧的日志中!
重要提示
- 您不必为脚本的每次修改都执行保存并发布:每次保存脚本(control+S)时,用于所有测试会话的脚本都会更新。请注意,BGA 上的生产版本当然不会更新,直到您再次明确保存和发布您的项目。
- 要检查变量的内容,您可以将bga.log()与JSON.stringify()结合使用。例如:
bga.log( JSON.stringify( bga.getPlayers()) );
- 除了log() 之外,您还可以使用 bga.exit( "my message" ) 来调试脚本。使用 bga.exit,脚本会立即停止执行,并且所有以前的游戏更改都会被取消,因此尝试重试作直到脚本正常。
- 我们建议您先开发一个没有脚本的完整可玩游戏版本,然后再编写脚本。
- 在Board Game Arena 上,玩家们期待可以自动执行所有规则的游戏。因此,即使从技术上讲可以只编写一部分脚本也能畅玩游戏,但是在大多数情况下,我们也会只发布完全脚本化的游戏:)