V této lekci si ukážeme praktické využití příkazu scoreboard, který jsme si ukazovali minule. Uděláme si jednoduchou hru, kde budeme mít rozestavěné terče a když nějaký terč trefíme, tak se nám přičtou body. Cílem bude získat co nejvíce bodů.

Připomenutí příkazů z minule

Vytvoření skóre

scoreboard objectives add body dummy

Tímto příkazem vytvoříme skóre s názvem body, které budeme moci měnit jen pomocí příkazů (typ dummy).

Zobrazení skóre

scoreboard objectives setdisplay sidebar body

Tímto příkazem nastavíme, že se má skóre body zobrazovat vpravo na obrazovce jako tabulka.

Nastavení skóre na 0

scoreboard players set @p body 0

Tímto příkazem nastavíme nejbližšímu hráči skóre body na hodnotu 0. Tento příkaz můžeme dát do příkazového bloku, aby si hráč mohl resetovat skóre.

Změna skóre

scoreboard players add @p body 1

Operací add přičteme ke skóre uvedenou hodnotu.

scoreboard players remove @p body 1

Operací remove odečteme od skóre uvedenou hodnotu.

Příkaz scoreboard

Více informací o příkazu scoreboard najdete v lekci 23 Příkaz scoreboard

Použití terče

Když terč trefíme šípem, tak do okolních bloků vyšle redstone signál. To můžeme využít například k aktivaci příkazového bloku, který můžeme umístit za terč.

Do příkazového bloku následně můžeme napsat příkaz na změnu skóre. Můžeme buď přičítat add nebo odečítat remove. Počet bodů, které se přičtou můžete nastavit podle toho, jak je terč daleko.

Poznámka

Tato minihra bude fungovat pouze ve hře pro jednoho hráče. Šlo by sice detekovat, který hráč trefil terč, ale bylo by to složitější. Proto předpokládáme, že je ve světě pouze jeden hráč a tomu zvýšíme skóre.

Možnosti rozšíření

Pokud byste si minihru chtěli rozšířit, tak můžete přidat řadu příkazových bloků, kde bude další nastavení. Řada bude začínat impulsním příkazovým blokem, který se bude spouštět například tlačítkem a další příkazové bloky budou řetězové a vždy aktivní.

Například bychom mohli:

  • nastavit herní mód na adventure
    gamemode adventure @p
    
  • vymazat hráči inventář
    clear @p
    
  • dát hráči luk
    give @p minecraft:bow
    
  • dát hráči omezený počet šípů
    give @p minecraft:arrow 20