ScriptAPI v1.20.40の主な変更点
バージョンの更新
- @minecraft/server 1.7.0-beta 追加
- @minecraft/server 1.6.0 追加
イベント
- PlayerInteractWithBlockAfter/BeforeEvent 追加
ブロックに対して右クリック(素手を含む)した時に動く。ItemUseOnと取れるものは同じ。 - PlayerInteractWithEntityAfter/BeforeEvent 追加
エンティティに対して右クリック(素手を含む)した時に動く。
例: ブタを右クリックした時にメッセージを表示
1world.afterEvents.playerInteractWithEntity.subscribe(event => { 2 if (event.target.typeId === "minecraft:pig") { 3 event.player.sendMessage("ぶー"); 4 } 5});
- ExplosionEventの変更
get/setImpactedBlocks()がVector3からBlockの配列を扱うようになった - PlayerDimensionChangeAfterEvent 追加
- PlayerLeaveBeforeEvent 追加 (キャンセルは不可)
Block
above()
,below()
,north()
,south()
,east()
,west()
,offset(offset: Vector3)
追加
ブロックの周りのブロックを取得できるcenter()
,bottomCenter()
ブロックの中心の座標を返す
DynamicProperty
登録不要で使えるようになった
- 全体の容量制限が撤廃
- 1プロパティあたりの文字数が32767バイトに制限された
- Number型が内部でDouble型として保存されるようになった
→ より多くの桁数(64bit)を保存できる - DynamicPropertiesDefinition, PropertyRegistryクラス削除
それに伴いWorldとEntity周りがいくつか変更された - 削除: removeDynamicProperty()
→ 今後はundefinedをsetして削除する
Entity
.matches(options: EntityQueryOptions): boolean
追加
エンティティが指定した条件に合ってるか確かめられる
例: プレイヤーがクリエイティブかどうかの判定
1if (player.matches({ gameMode: "creative" })) { 2 // creative!! 3}
Edit on Github