เรียนรู้เทคนิคการใช้ Command Block กับแท่นวางชุดเกราะใน Minecraft: สร้างป้ายและจอแสดงผลแบบลอยตัว
เทคนิคการใช้บล็อกคำสั่งสำหรับแท่นวางชุดเกราะใน Minecraftสามารถเปลี่ยนแกลเลอรี่ธรรมดาให้กลายเป็นนิทรรศการที่น่าสนใจได้: ใช้แท่นวางที่มองไม่เห็นพร้อมแท็กสำหรับป้ายกำกับแบบลอยตัว สวมใส่และจัดวางแท่นวางที่สองเพื่อจัดแสดงอาวุธ จากนั้นหมุนจอแสดงผลนั้นด้วยคำสั่งแบบวนซ้ำที่มีขอบเขตแคบ ตัวอย่างเหล่านี้ใช้ได้กับMinecraft Java Edition 1.21.xเท่านั้น Bedrock Edition ใช้ระบบคำสั่งและข้อมูลเอนทิตีที่แตกต่างกัน ดังนั้นตัวอย่าง Java NBT จะใช้ไม่ได้ในเวอร์ชันนั้น
ใช้พื้นที่ทดสอบขนาดเล็กที่สร้างสรรค์เพื่อตรวจสอบไวยากรณ์คำสั่งและแท็กก่อนที่จะเพิ่มหน้าจอแสดงผลลงในเวอร์ชันที่สร้างเสร็จแล้ว
ตั้งค่าการทดสอบบล็อกคำสั่งที่ปลอดภัย
ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานคำสั่งในโลกเล่นคนเดียวแล้ว หรือคุณมีสิทธิ์ที่จำเป็นบนเซิร์ฟเวอร์แล้ว สำหรับเซิร์ฟเวอร์ Java ผู้ดูแลระบบอาจต้องเปิดใช้งานบล็อกคำสั่งด้วยคู่มือคำสั่ง ของ Mojang อธิบายวิธีการเข้าถึงและการป้อนคำสั่ง ในช่องแชท ให้รับบล็อกคำสั่งด้วยข้อความต่อไปนี้:
/give @s minecraft:command_block
วางไว้ในพื้นที่ทดสอบสร้างสรรค์ ใช้ บล็อก Impulseสำหรับการเรียกใช้หรือเปลี่ยนอุปกรณ์เพียงครั้งเดียว และเรียกใช้งานด้วยปุ่ม ใช้ บล็อก Repeatเฉพาะสำหรับพฤติกรรมต่อเนื่อง เช่น การหมุน เมื่อวางคำสั่งลงในบล็อกคำสั่ง เครื่องหมายทับนำหน้าเป็นตัวเลือก ในแชทให้ใส่ไว้ด้วย
ตัวอย่างแต่ละข้อด้านล่างใช้แท็ก เช่นholo_titleหรือsword_displayแท็กช่วยให้ตัวเลือกมีความแม่นยำและช่วยป้องกันไม่ให้คำสั่งเปลี่ยนแปลงแท่นวางชุดเกราะที่ไม่เกี่ยวข้อง หากคำสั่งแจ้งว่าไม่พบเอนทิตี ให้ตรวจสอบว่าแท่นวางนั้นถูกโหลดแล้ว และการสะกดแท็กตรงกันทุกประการ
เทคนิคที่ 1: สร้างป้ายชื่อแท่นวางชุดเกราะแบบลอยตัว
แท่นวางชุดเกราะล่องหนที่มีชื่อที่กำหนดเองซึ่งมองเห็นได้ตลอดเวลา ทำงานเหมือนป้ายลอยธรรมดา เรียกใช้คำสั่งนี้เพียงครั้งเดียวในแชทหรือจากบล็อกคำสั่ง Impulse:
/summon minecraft:armor_stand ~ ~2 ~ {Tags:["holo_title"],Invisible:1b,Marker:1b,NoGravity:1b,Invulnerable:1b,CustomName:'{"text":"WEAPONS","color":"aqua","bold":true}',CustomNameVisible:1b}
ชื่อที่กำหนดเองจะยังคงมองเห็นได้ ในขณะที่แท่นวางชุดเกราะจะถูกซ่อนไว้ ทำให้เหลือเพียงป้ายกำกับที่ดูเรียบร้อยอยู่เหนือแท่นวาง
แทนที่ <label> WEAPONSและaqua<label> ด้วยป้ายกำกับและสีข้อความของคุณเอง สำหรับบรรทัดที่สอง ให้เรียกสแตนด์อีกตัวที่ความสูงต่างกันเล็กน้อยและกำหนดแท็กที่แตกต่างกัน เช่น <label> holo_subtitleธงMarkerจะย่อขนาด hitbox ของสแตนด์ให้เล็กที่สุด ลบออกหากคุณต้องการกำหนดเป้าหมายสแตนด์โดยการเล็งไปที่มัน นี่คือป้ายชื่อของเอนทิตี ไม่ใช่เอนทิตีแสดงข้อความ ดังนั้นตำแหน่งและพฤติกรรมจึงแตกต่างจากวัตถุข้อความที่กำหนดตำแหน่งได้อย่างอิสระ
เทคนิคที่ 2: จัดเตรียมและจัดท่าทางแสดงอาวุธ
เรียกสแตนด์ที่มีแท็กพร้อมแขนที่มองเห็นได้ ไม่มีแรงโน้มถ่วง และไม่มีฐานรอง:
/summon minecraft:armor_stand ~ ~1 ~ {Tags:["sword_display"],ShowArms:1b,NoGravity:1b,Invulnerable:1b,NoBasePlate:1b}
สวมใส่ดาบเพชรและเอียงแขนขวา:
/item replace entity @e[type=minecraft:armor_stand,tag=sword_display,limit=1] weapon.mainhand with minecraft:diamond_sword
/data merge entity @e[type=minecraft:armor_stand,tag=sword_display,limit=1] {Pose:{RightArm:[-90f,0f,0f]}}
สวมใส่อุปกรณ์ก่อน จากนั้นปรับท่าทางแขนเพื่อให้มองเห็นดาบได้ชัดเจนจากเส้นทางในแกลเลอรี
ใช้weapon.offhandสำหรับมืออีกข้าง ในการเพิ่มเกราะ ให้ใช้/item replace entityกับช่องต่างๆ เช่นarmor.headและarmor.chestค่าท่าทางใช้ตัวเลขการหมุนสามค่าสำหรับส่วนของร่างกายที่เลือก เริ่มต้นด้วยการเปลี่ยนแปลงเล็กน้อยหากแขนขาหมุนไปไกลกว่าที่คาดไว้ Mojang ได้เปลี่ยนข้อมูลอุปกรณ์ของเอนทิตีใน Java 1.21.5 ดังนั้นควรหลีกเลี่ยงการคัดลอกตัวอย่างเก่าๆ ที่แทนที่ฟิลด์ legacy ArmorItemsหรือHandItemsฟิลด์อื่นๆ โดยตรง /item replaceวิธีการข้างต้นหลีกเลี่ยงรูปแบบ NBT แบบเรียงซ้อนไอเทมแบบเก่า
เทคนิคที่ 3: ค่อยๆ หมุนสิ่งจัดแสดง
หากต้องการเปิดเฉพาะจอแสดงผลที่ติดแท็ก ให้ใส่โค้ดนี้ลงใน บล็อกคำสั่ง Repeat :
/execute as @e[type=minecraft:armor_stand,tag=sword_display] at @s run tp @s ~ ~ ~ ~1 ~
คำสั่งแบบวนซ้ำสามารถหมุนชิ้นงานจัดแสดงที่มีป้ายกำกับให้อยู่กับที่ได้ ในขณะที่ชิ้นงานจัดแสดงอื่นๆ ยังคงหันหน้าไปทางเดิม
ตั้งค่าบล็อกให้ทำงานตลอดเวลาและเริ่มต้นด้วยการหน่วงเวลาหลายติ๊ก การหน่วงเวลาที่นานขึ้นจะทำให้การหมุนช้าลง คำสั่งนี้จะเปลี่ยนมุมการหมุน (yaw) ทีละหนึ่งองศาในแต่ละครั้งที่เรียกใช้ โดยคงตำแหน่งของแท่นวางไว้ที่ตำแหน่งปัจจุบัน ปิดใช้งานบล็อกเพื่อหยุดการเคลื่อนไหว อย่าลบตัวกรองแท็กหรือใช้ตัวเลือกแบบกว้าง เช่น@e[type=minecraft:armor_stand]ในการสร้างแบบใช้ร่วมกัน เว้นแต่คุณตั้งใจที่จะหมุนแท่นวางเกราะทุกอันที่โหลดไว้
รักษาจอแสดงผลให้ดูแลรักษาง่าย
- ใช้แท็กที่ไม่ซ้ำกันเพียงหนึ่งแท็กต่อชิ้นงานจัดแสดงเพิ่มแท็ก
limit=1เมื่อคำสั่งนั้นควรมีผลต่อบูธเดียว หากคุณใช้แท็กซ้ำ ตัวเลือกอาจตรงกับเอนทิตีมากกว่าหนึ่งรายการ
- สร้างคำสั่งล้างข้อมูลก่อนตกแต่งหากต้องการลบเฉพาะแท่นทดสอบ ให้ใช้คำสั่งนี้
/kill @e[type=minecraft:armor_stand,tag=sword_display]หลังจากตรวจสอบแล้วว่าแท็กนั้นเป็นของจอแสดงผลนั้นเท่านั้น ใช้แท็กแยกกันสำหรับแต่ละแถวของโฮโลแกรม
- ควรทำซ้ำคำสั่งอย่างมีจุดประสงค์บล็อกคำสั่งที่ทำซ้ำจะทำงานอย่างต่อเนื่องขณะที่เปิดใช้งาน หยุดการทำงานเมื่อไม่ต้องการให้หน้าจอเคลื่อนไหว และจำกัดตัวเลือกเป้าหมายให้แคบลง
- เลือกวิธีการโต้ตอบที่เหมาะสมปุ่มสามารถใช้กระตุ้นบล็อก Impulse ได้ เป้าหมายพื้นฐานของกระดานคะแนนจะไม่ตรวจจับการคลิกแท่นวางชุดเกราะของผู้เล่น สำหรับการโต้ตอบกับผู้เยี่ยมชมที่ซับซ้อนมากขึ้น ให้สร้างอินพุตเรดสโตนที่ชัดเจน หรือใช้ฟังก์ชันดาต้าแพ็ค
แก้ไขข้อผิดพลาดทั่วไปของคำสั่งแท่นวางเกราะ
คำสั่งเรียกตัวล้มเหลว:ตรวจสอบเครื่องหมายจุลภาค วงเล็บปีกกา และเครื่องหมายอัญประกาศ และยืนยันว่าคุณกำลังใช้ Java Edition เก็บ JSON ชื่อที่กำหนดเองไว้ภายในเครื่องหมายอัญประกาศเดี่ยวตามที่แสดงป้ายกำกับหายไป:ตรวจสอบCustomNameVisible:1bและจำไว้ว่าเทคนิคนี้แสดงป้ายชื่อแทนที่จะเป็นวัตถุแสดงข้อความสแตนด์ที่เคลื่อนที่หรือถูกติดตั้งผิดตัว:ตรวจสอบแท็กและจำกัดตัวเลือกด้วยและtag=...ท่าทางดูผิดปกติ:ยืนยันว่าคีย์ส่วนของร่างกายคือและท่าทางนั้นมีตัวเลขสามตัวสแตนด์หายไป:ป้องกันความเสียหายทั่วไป แต่ไม่ได้ป้องกันคำสั่งหรือคำสั่งอื่นจากการลบเอนทิตีlimit=1RightArm Invulnerable:1b/kill
หมายเหตุและเอกสารอ้างอิงเวอร์ชัน
รูปแบบคำสั่งเหล่านี้ใช้สำหรับ Java Edition 1.21.x ไม่ใช่ Bedrock เอกสารบันทึกการเผยแพร่ Java 1.21.5 ของ Mojang ระบุถึงการเปลี่ยนแปลงข้อมูลอุปกรณ์ เอกสารอ้างอิง Armor Standและเอกสารอ้างอิง Command Blockให้รายละเอียดเพิ่มเติมเกี่ยวกับเอนทิตีและบล็อก หากเวอร์ชันเกมที่ใหม่กว่าเปลี่ยนแปลงพฤติกรรมของคำสั่ง โปรดตรวจสอบบันทึกการเผยแพร่ก่อนนำตัวอย่าง NBT เก่ามาใช้ซ้ำ