Komma igång med kommandoblock

Artikel 2023-09-19 Maskinöversatt och publicerad 2024-05-18

De olika kommandoblocken

Blocktyper

Kommandoblockstexturerna

Vänster: Blocktyp "Impuls" (Impulse).
Mitten: Blocktyp "Kedja" (Chain).
Höger: "Repeterande" (Repeating) blocktyp.

Överst: "Ovillkorligt" (Unconditional) läge.
Nederst: "Villkorligt" (Conditional) läge.


Klicka på knappen "Impuls/Kedja/Repeat"‌[endast JE]/"Blocktyp"‌[BE endast] för att ändra kommandoblockets typ. Standardtillståndet är "Impuls", men icke-standardkommandoblock kan erhållas och placeras. Kommandoblocket ändrar också färg när du ändrar dess kommandoblockstyp:

"Impuls" kommandoblock är orange. De körs en gång varje gång de aktiveras.
"Kedja" kommandoblock är gröna. De körs en gång varje gång de utlöses om de har aktiverats.
"Repetera" kommandoblock är lila. De utför sina kommandon en gång i varje spel (eller fler‌[BARA BE]) så länge de är aktiverade.

I den här artikeln

- Hur man använder kommandoblock
- Användargränssnitt för kommandoblock
- Designa en spelslinga
- Kommandoblockskedjor

Kommandoblock är en specialiserad typ av block i en Minecraft: Bedrock Edition-värld som tillåter användning av konsolkommandon i spelet. Samma kommandon som spelare kan skriva från chatten kan köras automatiskt av kommandoblock som använder redstone-kraft.

I den här handledningen lär du dig följande:

- Vad är kommandoblock och hur man kommer åt dem i spelet.
- Hur kommandon kan användas via kommandoblock.
- Hur kommandoblockskedjor fungerar genom att stränga ihop flera kommandoblock.
- Skapa en spelslinga för att belöna en spelare efter att ha utfört en åtgärd.

I den här guiden kommer vi att sätta upp en kommandoblockskedja för att leta efter en viss typ av block på en bestämd plats, och sedan belöna spelaren för att ha placerat ett block på rätt plats.

Krav

- Introduktion till kommandon
- En Minecraft-värld med fusk aktiverat.

Att skapa världen

Även om kommandoblock kan användas i vilken Minecraft-värld som helst, kommer vi att använda en platt värld för en enkel och ren miljö.

- Starta Minecraft: Bedrock Edition.
- Välj Spela, välj Skapa ny och välj sedan Skapa ny värld.
- I världsinställningarna ställer du in världstypen på Flat.
- Aktivera Visa koordinater i världsinställningarna.
- Aktivera Aktivera fusk i världsinställningarna.
- Välj Skapa.

Hur man får kommandoblock

Kommandoblock kan endast erhållas genom att köra ett kommando.

- Öppna chatten.
- Skriv följande kommando: /ge @p command_block.

Du kommer att se ett enda kommandoblock som har lagts till i ditt lager.

Hur man använder kommandoblock

Placera först kommandoblocket på marken som alla andra block. Titta på kommandoblocket från sidan och du kanske märker en pil.


Bild som visar CommandBlock Pilar som pekar till höger om bilden

Dessa pilar kommer alltid att peka mot spelaren när du lägger ner. Pilarna visar flödet av utförande. Som visas i bilden kommer blocket till vänster att köras först, följt av det mittersta kommandoblocket, och slutligen kommer det sista blocket till höger att köras.

Klicka på knappen Använd (högerklicka på PC) för att öppna kommandoblockets användargränssnitt.

Användargränssnitt för kommandoblock

Översikt över kommandoblockets grafiska användargränssnitt


Block Type definierar vilken typ av kommandoblock detta är. Det finns 3 alternativ:

- Impulse Impulskommandoblock aktiveras när de får en redstone-signal.
- Chain Kedjekommandoblock aktiveras när ett kommandoblock som pekar in i det aktiveras.
- Repeat Upprepade kommandoblock aktiveras en gång varje tick i spelet, så länge de har en redstone-signal. Minecraft har 20 tick per sekund.

Condition Villkor definierar när ett kommandoblock kommer att utföra sin åtgärd. Det finns 2 alternativ:

- Conditional kommer endast att köras om det föregående blocket i en kedja lyckades.
- Uncontitional Ovillkorlig kommer att köras oavsett om det föregående blocket lyckades eller inte.

Redstone Rödsten definierar om ett kommandoblock kräver att redstone aktiveras. Det finns 2 alternativ:

- Needs Redstone Behöver Redstone ställer in kommandoblocket så att det bara aktiveras när det har redstone-kraft.
- Always Active Alltid aktiv kommer att ställa in kommandoblocket så att det alltid aktiveras med eller utan redstone. För impulskommandoblock gör detta att de bara körs en gång, så det är inte särskilt användbart. För kedjekommandoblock är detta aktiverat som standard.

Execute on First Tick Aktivera på första ticket kan endast användas för att upprepa kommandoblock med en fördröjning.

Om det är aktiverat kommer kommandot att köras så snart blocket strömförs, och väntar sedan på fördröjningen innan det körs igen. Om det är inaktiverat kommer kommandot inte att köras första gången förrän fördröjningen har avslutats.

Delay in Ticks

är ett värde som definierar hur länge ett kommandoblock väntar på att köras efter att kommandoblocket får redstone-kraft.

Designa en spelslinga

Ett användningsfall av kommandoblock är att tillåta skapare att skapa spelloopar i Minecraft. En enkel spelslinga skulle belöna en spelare för att slutföra en handling. Om spelslingan skulle ge en spelare en smaragd för att placera ett diamantblock på en viss plats, kan du dela upp varje steg som behövs:

- Kontrollera om det finns ett diamantblock på en angiven plats.
- Om den gör det, kontrollera om spelaren redan har fått belöningen.
- Om spelaren inte har fått belöningen, ge spelaren en smaragd.
- Efter att ha gett spelaren en smaragd, markera att de har fått belöningen.

Konfigurera det första kommandoblocket

Nu när vi har tittat på inställningarna för ett kommandoblock, låt oss ställa in det första blocket för att upptäcka en viss typ av block på en plats.

- Placera ett kommandoblock på marken på en plats nära din spelarkaraktär.
- Öppna kommandoblocksgränssnittet.
- Ställ in Blocktyp på Upprepa (Block Type to Repeat).
- Ställ in Redstone på Alltid aktiv (Redstone to Always Active).

Kommandot /testforblock

Kommandot /testforblock letar efter ett specifikt block vid en angiven punkt i världen.

/testforblock <position: x y z> <tileName: Block> [dataValue: int]

- position är koordinaterna i världen där kommandot kommer att leta efter det specifika blocket. Exempel: 0 4 0.
- tileName är den typ av block du letar efter. Exempel: diamond_block.
- dataValue är ett valfritt argument som används för att hantera varianter av samma block. För den här handledningen behöver vi inte använda den här.

Om du följer den här handledningen kommer du att befinna dig i en platt värld. När du går runt kan du se din spelares position uppe till vänster på skärmen. Låt oss leta efter ett block nära ursprunget.

- I avsnittet Kommandoinmatning anger du följande: /testforblock 0 4 0 diamond_block.
- Stäng gränssnittet.

Kommandoblockskedjor

För nästa steg måste vi placera ett kedjekommandoblock. Som nämnts ovan, körs kedjekommandoblock när ett block som pekar in i dem aktiveras. Se till att du placerar blocket som bilden som visar pilarna.

Konfigurera kommandoblocket /testforblock

- Placera ytterligare ett kommandoblock bredvid det befintliga blocket. Se till att det nya blocket placeras framför den riktning som pilen pekar.
- Öppna kommandoblocksgränssnittet.
- Ställ in Blocktyp på Kedja (Block Type to Chain).
- Ställ in Villkor på Villkor (Condition to Conditional).
- Ställ in Redstone på Alltid aktiv (Redstone to Always Active).
- Ställ in kommandoinmatningen (Command Input) till /testfor @p[tag=!placed_block]

Eftersom det andra blocket är inställt på Conditional, kommer detta nya block endast att köras om det första kommandoblocket lyckas, vilket betyder att diamantblocket var närvarande. Detta kommando kontrollerar om spelaren inte redan har fått belöningen.

Konfigurera belöningskommandoblocket

Låt oss lägga till ett tredje block för att ställa in ett kommando för att belöna spelaren för att ha placerat ett block på rätt plats.

- Placera ytterligare ett kommandoblock bredvid det befintliga blocket. Se till att det nya blocket placeras framför den riktning som pilen pekar.
- Öppna kommandoblocksgränssnittet.
- Ställ in Blocktyp på Kedja (Block Type to Chain).
- Ställ in Villkor på Villkor (Condition to Conditional).
- Ställ in Redstone på Alltid aktiv (Redstone to Always Active).
- Ställ in kommandoinmatningen (Command Input) till /give @p emerald.

Återigen kommer detta kommando bara att aktiveras om det föregående kommandot lyckades, vilket betyder att både diamantblocket var närvarande och spelaren inte har fått belöningen ännu.

Stänga slingan

Om vi slutar nu, kommer att placera diamantblocket på 0 4 0 att ge spelaren 20 smaragder per sekund! Det beror på att vi måste göra ett sista steg och markera spelaren som att ha fått belöningen.

- Placera ytterligare ett kommandoblock bredvid det befintliga blocket. Se till att det nya blocket placeras framför den riktning som pilen pekar.
- Öppna kommandoblocksgränssnittet.
- Ställ in Blocktyp på Kedja (Block Type to Chain).
- Ställ in villkoret på villkorligt (Condition to Conditional).
- Ställ in Redstone på Alltid aktiv (Redstone to Always Active).
- Ställ in kommandoinmatningen (Command Input) till /tag @p add placed_block

Testa slingan

Om allt har ställts in korrekt kan du nu placera ett diamantblock på plats 0, 4, 0 och du kommer att få en enda smaragd i din spelarinventering.





Har du läst allt detta så är du nu en

P R O G A M E R