Jak zrobić działający sklep w Minecraft 1.16.2 bez Modów i Pluginów za pomocą command blocków.
Robiąc server w minecrafcie mogłeś napotkać pewnego rodzaju problemy. Jednym z nich może być zgrywanie pluginów, chociażby na sklep szczególnie na najnowsze wersje minecrafta. W tym poradniku pokażę ci jak zrobić sklep za pomocą command bloków, który możesz wykonać nawet na czystym minecrafcie bez pluginów albo na singlu gdybyś chciał przetestować go czy działa. UWAGA: by stworzyć taki sklep na serverze musisz być adminem, natomiast na singlu powinieneś mieć tryb kreatywny. Podany sklep powinien działać na większości wersji na pewno działa na wersjach 1.15 i 1.16.2 na niektórych niższych też powinien działać.
Zaczniemy od stworzenia tablicy a robimy to za pomocą komendy ( wpisuj bez "" ) "/scoreboard objectives add nazwa_waluty dummy"
( np: /scoreboard objectives add Money dummy ). Ta komenda tworzy nam tablicę, która będzie nam przechowywać dane o naszych pieniądzach.
Kolejną ważną komendą będzie " /scoreboard objectives setdisplay sidebar nazwa_waluty "
( np: /scoreboard objectives setdisplay sidebar Money ). Powyższa komenda powoduje pojawienie się tabelki która pokazuje nam ilość naszych pieniędzy. UWAGA: Tabelka pokaże się dopiero gdy zdobędziemy jakąkolwiek sumę naszej waluty.
Dodać walutę jak i odebrać ją możemy za pomocą poniższych komend.
"/scoreboard player add nazwa_gracza nazwa_waluty ilość" ( np: /scoreboard player add Furiat373 Money 20 ) tą komendą dodajemy sobie walutę.
"/scoreboard player remove nazwa_gracza nazwa_waluty ilość" ( np: /scoreboard player remove Furiat373 Money 20 ) a tą odejmujemy sobie walutę.
Teraz czas na zrobienie sklepu który robimy za pomocą 2 komend ale wpierw zacznijmy od początku. Zaczynamy od przyzwania command blocku za pomocą komendy: "/give @p command_block".
Stawiamy go tak by był skierowany w górę tak jak będzie widać na 2 obrazku. Następnie wpisujemy do niego komendę:
"/execute if score @p nazwa_waluty matchess ilość_waluty+.. run give @p słowne_id_itemu"
( np: /execute if score @p Money matchess 100.. run give @p minecraft:bell )
ta komenda sprawdza czy mamy wystarczającą ilość pieniędzy i daje nam item jeżeli tak jest w przeciwnym razie nic nie dostaniemy. Ważne jest wyjaśnienie jak ona działa i jak ją tłumaczyć. A tłumaczymy ją jako: wykonaj jeżeli punkty w Money najbliższego gracza wynoszą 100 i więcej (te dwie kropki " .. " oznaczają więcej niż liczba jaka została podana jest to ważne gdyż inaczej musielibyśmy mieć równą ilość nie więcej ani mniej by coś kupić) przejdź do dania najbliższemu graczowi danego itemu.
Teraz czas na postawienie kolejnego command bloku który kładziemy jeden na drugi i wpisujemy do niego:
" /execute if score @p nazwa_waluty matchess ilość_waluty+.. run scoreboard player remove @p nazwa_waluty ilość_waluty "
( /execute if score @p Money matchess 100.. run scoreboard player remove @p Money 100 )
Ta komenda służy do odebrania pieniędzy graczowi po zakupie danego przedmiotu. Ważne w niej jest aby ilość waluty zgadzały się co do wcześniejszej komendy inaczej może to tworzyć pewnego rodzaju problemy.
Na dolny command block kładziemy przycisk i sprawdzamy czy wszystko działa tak jak na obrazku.
Zostało nam zrobienie sposobu na zarobienie pieniędzy. Jest na to dużo sposobów na ten moment pokaże najłatwiejszy do ogarnięcia sposób a inne pokażę w innym artykule.
Zaczynamy od postawienia gdzieś obok tak jak na sklep 2 command blocków
do pierwszego z nich wpisujemy komende:
"/clear @p słowne_id_itemu ilość" ( np: /clear @p minecraft:iron_ingot 1 )
UWAGA: polecam w "ilość" nie wpisywać więcej niż 1 ponieważ ta komenda wykonuje się nawet jak macie mniej niż potrzeba na sprzedaż itemów co powoduje że np. gdy w sklepie skupujecie 20 żelaza to za 4 żelaza dostaniecie tyle co za 20 bo komenda się wykonuje tylko wtedy gdy macie więcej niż 0 danego itemu chociaż gdy będziecie mieć np. 25 żelaza to wtedy pójdzie na 2 razy gdyż wpierw zabierze 20 potem 5.
Kolejną ważną rzeczą jest zmiana drugiego command blocku. Gdy wejdziecie w command block musiecie zmienić go za pomocą poniższych przycisków:
z Impulse --> Chain
z Unconditional --> Conditional
Następnie wpisujecie komendę:
"/scoreboard player add nazwa_gracza nazwa_waluty ilość" ( np: /scoreboard player add @p Money 20 )
To było by na tyle, jeżeli mój poradnik był pomocny lub macie jakieś problemy to piszcie w komentarzu postaram się pomóc. :3