<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://zh.doc.boardgamearena.com/index.php?action=history&amp;feed=atom&amp;title=SandboxScripts</id>
	<title>SandboxScripts - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://zh.doc.boardgamearena.com/index.php?action=history&amp;feed=atom&amp;title=SandboxScripts"/>
	<link rel="alternate" type="text/html" href="https://zh.doc.boardgamearena.com/index.php?title=SandboxScripts&amp;action=history"/>
	<updated>2026-10-09T11:05:48Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.39.0</generator>
	<entry>
		<id>https://zh.doc.boardgamearena.com/index.php?title=SandboxScripts&amp;diff=2330&amp;oldid=prev</id>
		<title>Dashuiweng：​创建页面，内容为“以下是您可以从 Sandbox 脚本中调用的函数参考。  === Javascript === BGA 沙箱脚本是用 Javascript 编写的。  使用Javascript，您可以编写脚本来让您的沙盒游戏具有更多的自动化规则。  重要：与 Javascript 最常见的用法相反，沙盒脚本在&#039;&#039;&#039;服务器端&#039;&#039;&#039;执行。  === BGA API === 为了与您的 BGA Sandbox 游戏交互，我们为您提供了一个 API。  使用此 API，您可以从当前游戏情…”</title>
		<link rel="alternate" type="text/html" href="https://zh.doc.boardgamearena.com/index.php?title=SandboxScripts&amp;diff=2330&amp;oldid=prev"/>
		<updated>2025-03-28T02:14:57Z</updated>

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