World¶
Worldオブジェクトは主にブロック操作、Entity関連、ワールド設定などを行う事が出来ます。
Worldオブジェクトは EventEmitter オブジェクトを継承しています。
-
class
World
()¶ メソッド
-
World.
getDimension
()¶ ワールドの環境を取得します。
戻り値: String (NORMAL or NETHER or THE_END)
-
World.
getDifficulty
()¶ - 難易度を取得します。
戻り値: String (PEACEFUL or EASY or NORMAL or HARD)
-
World.
setDifficulty
(difficulty)¶ 難易度を設定します。
引数: - difficulty (String) -- 難易度 (PEACEFUL or EASY or NORMAL or HARD)
戻り値: void
-
World.
getPVP
()¶ PvPフラグを取得します。
戻り値: Boolean
-
World.
setPVP
(flag)¶ PvPフラグを設定します。
引数: - pvp (Boolean) -- trueで攻撃可
戻り値: void
-
World.
getWeather
()¶ 天候を取得します。
戻り値: String (THUNDER or STROM or SUNNY) 例
if (match.getWorld().getWeather() == 'SUNNY') { console.log('現在の天候は晴れです。'); }
-
World.
setWeather
(weather)¶ 天候を設定します。
引数: - weather (String) -- 天候 (THUNDER or STORM or SUNNY)
戻り値: void
例
// 天候を晴れにする match.getWorld().setWeather('SUNNY'); // 雷雨にする match.getWorld().setWeather('THUNDER');
-
World.
getTime
()¶ 時間を取得します。
戻り値: Number 例
console.log('現在ゲーム内時間の' + Math.round(match.getWorld().getTime() / 1000) + '時です。');
-
World.
setTime
(time)¶ 時間を設定します。
引数: - time (Number) -- 時 x 1000で表すゲーム時間
戻り値: void
例
// 午後2時にする match.getWorld().setTime(14000); // 午前3時にする match.getWorld().setTime(3000);
-
World.
getBlock
(x, y, z)¶ 指定座標のブロックを取得します。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
戻り値: 例
var block = match.getWorld().getBlock(30, 64, 0); console.log('座標30, 64, 0のブロックは羊毛' + (block.getType() == 'WOOL' ? 'です。' : 'ではありません。')); // 10, 64, 10のブロックを赤の色つきガラスに変える var block = match.getWorld().getBlock(10, 64, 10) block.setType('STAINED_GLASS'); block.setData(14); // 20x20の床を作る var world = match.getWorld(); for (var x = 100; x < 120; x++) { for (var z = 100; z < 120; z++) { world.getBlock(x, 64, z).setType('WOOD'); } }
-
World.
playSound
(x, y, z, soundName, volume, pitch)¶ 指定座標でサウンドを再生します。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
- soundName (String) -- サウンド名
- volume (Number) -- ボリューム
- pitch (Number) -- ピッチ
戻り値: void
-
World.
playEffect
(x, y, z, effectName, data, radius)¶ 指定座標でエフェクトを再生します。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
- effectName (String) -- エフェクト名
- data (Number) -- データ
- radius (Numbmer) -- 範囲
戻り値: void
-
World.
playParticle
(x, y, z, particleName, offset, speed, count)¶ 指定座標でパーティクルを表示します。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
- particleName (String) -- パーティクル名
- offset (Number) --
- speed (Number) --
- count (Number) --
戻り値: void
例
// 100x100の範囲内に20個のパーティクルを生成 setInterval(function() { for (var i = 0; i < 20; i++) { var x = getRandom(-50, 50); var y = 5; var z = getRandom(-50, 50); match.getWorld().playParticle(x, y, z, 'HEART', 1.0, 1.0, 3); } }, 1000); function getRandom(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; }
-
World.
createExplosion
(x, y, z, power)¶ 指定座標に爆発を生成します。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
- power (Number) -- 威力
戻り値: void
-
World.
strikeLightning
(x, y, z, damageFlag)¶ 指定座標に雷を落とします。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
- damageFlag (Boolean) -- プレイヤーへのダメージ有無
戻り値: void
-
World.
spawnEntity
(x, y, z, entityType)¶ 指定座標にEntityをスポーンさせます。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
- entityType (String) -- EntityType
戻り値: void
例
// 空からTNTを落とす match.getWorld().spawnEntity(0, 128, 0, 'PRIMED_TNT'); // Ocelotを50,64,50に召喚 match.getWorld().spawnEntity(50, 64, 50, 'OCELOT');
-
World.
spawnFallingBlock
(x, y, z, type, data)¶ 指定座標のブロックに落下ブロックを生成します。
引数: - x (Number) -- X座標
- y (Number) -- Y座標
- z (Number) -- Z座標
- type (String) -- Material
- data (Number) -- データ
戻り値: void
-
World.
sendMessage
(message)¶ ワールド内のプレイヤーにメッセージを送信します。
引数: - message (String) -- メッセージ
戻り値: void
-
World.
sendLocaleMessage
(name)¶ ワールド内のプレイヤーに <locale> で定義した多言語メッセージを送信します。
引数: - name (String) -- <string> ノードの name 属性
戻り値: void
イベント
イベントの設定方法は EventEmitter をご覧ください。
プレイヤーによるWood Button, Stone Button, Leverの操作時
イベントオブジェクト
メソッド 戻り値 説明 getPlayer() Player 操作したプレイヤー getBlock() Block 操作したブロック getState() Number レバーの状態(1=ON 0=OFF)、ボタンの場合は常に1 例
match.getWorld().on('button', function(event) { console.log(event.getPlayer().getName() + 'が' + event.getType() + 'を操作しました。'); });
-