教學:編寫腳本API/環境支援

出自Minecraft基岩版开发Wiki
環境支援
系列教學
所屬系列
難易度
初級
實踐裝置
WindowsAndroid
所需軟件

基本環境[編輯]

Minecraft 使用了他們自己的基於 QuickJS 的 JavaScript 版本。它使用 ECMAScript 模組 (ESM) 系統來組織和載入程式碼,從而允許採用更加模組化和有組織的方法來為遊戲編寫腳本。

擴充套件環境[編輯]

Minecraft 擴充套件[編輯]

manifest.json中可以加入並使用這些。

模組 介紹 版本提示 使用提示 其它注意
@minecraft/debug-utilities 包含與除錯內容相關的Class 最新測試: 1.0.0-beta 最新正式: ?
{
    "module_name": "@minecraft/debug-utilities",
    "version": "1.0.0-beta"
}
此模組仍處於預發佈階段。它可能會在將來的版本中變更或刪除。
@minecraft/server-admin 包含與管理 Bedrock 專用伺服器相關的Class。這些型別允許在 Bedrock Dedicated Server 資料夾中的 JSON 檔案中組態變數和密鑰。 最新測試: 1.0.0-beta 最新正式: ?
{
    "module_name": "@minecraft/server-admin",
    "version": "1.0.0-beta"
}
其不能在 Minecraft 用戶端或 Minecraft Realms 中使用。

此模組仍處於預發佈階段。它可能會在將來的版本中變更或刪除。

@minecraft/server-gametest 提供可編寫腳本的Class,用於在 Minecraft 中搭建測試內容體驗。 最新測試: 1.0.0-beta 最新正式: 0.1.0
{
    "module_name": "@minecraft/server-gametest",
    "version": "0.1.0"
}
其大部分功能仍處於預發佈階段。
@minecraft/server-net 包含用於執行基於 HTTP 的請求的Class。此模組只能在專用伺服器上使用。 最新測試: 1.0.0-beta 最新正式: ?
{
    "module_name": "@minecraft/server-net",
    "version": "1.0.0-beta"
}
其在 Minecraft 用戶端或 Minecraft Realms 中不起作用。

此模組仍處於預發佈階段。它可能會在將來的版本中變更或刪除。

@minecraft/server-ui 包含用於表達基於對話框的簡單用户體驗的Class 最新測試: 1.4.0-beta 最新正式: 1.2.0
{
    "module_name": "@minecraft/server-ui",
    "version": "1.2.0"
}
?
@minecraft/server 包含許多與操縱 Minecraft 世界相關的Class,包括實體等。 最新測試: 1.15.0-beta(2.0.0-alpha‌[需要验证]) 最新正式: 1.13.0
{
    "module_name": "@minecraft/server",
    "version": "1.13.0"
}
?
@minecraft/server-editor 包含許多與操縱 Minecraft 編輯器 相關的Class 最新測試: 0.0.1-beta 最新正式: ?
{
    "module_name": "@minecraft/server-editor",
    "version": "0.1.0-beta"
}
此模組仍處於預發佈階段。它可能會在將來的版本中變更或刪除。

更多內容見腳本API

QuickJS 擴充套件[編輯]

這裏的所謂「擴充套件」包含QuickJS定義上的擴充套件和與其它JS平台高度不同且自有的物件。

  • __date_clock - 內建 QuickJS 方法,用於取得目前時間
  • globalThis - 可以存取全域範圍變數的標準物件
  • Math - 具有主要數學函式的標準物件

QuickJS 原生內容支援性[編輯]

為方便以下僅提供不支援的。

  • WeakRef - 具有弱引用的物件處理類
  • BigInt - 大整數的標準類
  • setTimeout - 定時程式碼執行的標準功能(可用 @minecraft/server.system.runTimeout 代替)
  • setInterval - 定時程式碼間隔執行的標準功能(可用 @minecraft/server.system.setInterval 代替)
  • clearTimeout - 取消 setTimeout 執行的標準函式定時程式碼執行的標準功能
  • clearInterval - 取消 setInterval 執行的標準函式

引用[編輯]

  1. Bedrock Wiki: Engine Environment