記事一覧
プレイヤーがinteractionに触れたか判断する
@EventHandler public void onPlayerMove(PlayerMoveEvent event) { Player player = event.getPlayer(); Location playerLocation = player.getLocation(); Location targetLocation;
もっとみるマインクラフトのbukkitでプレイヤーのタグを扱う方法
if(player.getScoreboardTags().contains(Tag)){return;}
上記、コードは
指定したタグが無いと処理を中断するコード。
タグはString。
Interactionを右クリックした時、Interactionのタグに設定したコマンドを実行するプラグイン
public class interaction_clicked implements Listener { @EventHandler public void onPlayerInteractEntity(PlayerInteractEntityEvent event) { Player player = event.getPlayer(); Entity
もっとみるコマンドを遅延させて実行する方法
/schedule function <functionコマンド> 2t
データストレージの中身の確認方法
/execute if data storage <ストレージ名> {パス:中身} run <コマンド>
このコマンドを使うと
{パス:中身}が一致した時、<コマンド>が実行される。
NBTデータから文字列を抜き出す方法
/data modify storage <ストレージ名> <パス> string block <ブロックの座標> <NBTのパス> <抜き出す文字列の始まりの位置> <抜き出す文字列の終わりの位置>
このコマンドを使うと
<ストレージ名>の<パス>に抜き出した文字列が代入される。
村人のトレードを追加する方法
/data modify entity @e[tag=PL_NPC,limit=1] Offers.Recipes append value {buy:{id:"minecraft:diamond",Count:1b},sell:{id:"minecraft:emerald",Count:1b},maxUses:9}
この方法なら、
コマンドの度にトレードを追加する事が出来る。
マイクラのバージョン1.20.1で看板を右クリックした時にダイヤモンドを手に入れるコマンド
/data merge block ~ ~ ~ {front_text:{messages:['{"clickEvent":{"action":"run_command","value":"give @s minecraft:diamond"},"text":"文章1"}','"文章2"','"文章3"','"文章4"']}}
/data merge block ~ ~ ~ {front_tex
プラグインからゲームルールの変更方法
Bukkit.getServer().getWorld("world").setGameRule(GameRule.SEND_COMMAND_FEEDBACK,false);
このコードでsendCommandFeedbackがfalseになるので
サーバーメッセージが表示されなくなる。
trueに戻す時もサーバーメッセージは表示されない。
元々、falseの時はifで処理を切り替えれば、問
チャット欄を左クリックする事でダイヤとエメラルドを入手できるコマンド
/tellraw @a {"text":"あなたが選ぶのは、","extra":[{"text":"水色の石?","color":"aqua","hoverEvent":{"action":"show_text","value":{"text":"左クリックで選択"}},"clickEvent":{"action":"run_command","value":"/give @s minecraft
もっとみる落ちているプレイヤーヘッドのNBTを変更する方法
/data merge entity @e[nbt={Item:{tag:{SkullOwner:{Id:[I;<UUID>]}}}},limit=1] {Item:{tag:{Tags:['アイテムタグ'],display:{Name:'{"text":"アイテム名"}',Lore:['{"text":"アイテム説明"}']}}}}
このコマンドはプレイヤーヘッドのスカルオーナーのUUIDから
データパック:ルートテーブル:player_head.json
下記コードには欠陥が有り、
全てのプレイヤーヘッドに同じアイテム名とアイテム説明を付ける。
プレイヤーヘッドのスカルオーナーのUUIDが違うならば、
そのUUIDに合わせたアイテム名になるようにしたいが出来ていない。
{ "type": "minecraft:block", "pools": [ { "rolls": 1, "entries":
本の文字を右クリックする事で発動するコマンド
/give @p written_book{author:"製作者",title:"本のタイトル",pages:['[{"text":"ここをクリック","clickEvent": {"action":"run_command","value": "ここにコマンド"}}]']} 1
クリックイベントのアクションについて
net.minecraft.util.text.event ([Javadoc]MinecraftForge(forge:1.15.2-31.1.0 / mcp:SS_20200318-1.15.1)) (ad-debug-station.github.io)
カスタムプレイヤーヘッドを装備した村人の召喚方法
/summon minecraft:villager ~ ~ ~ {NoAI:1b,Tags:["PL_NPC"],ArmorItems:[{},{},{},{id:"minecraft:player_head",Count:1b,tag:{SkullOwner:"プレイヤー名"}}]}