McSurvi.pl Network Serwery Minecraft 1.8
[Poradnik] Jak pisać skrypty? Eventy - Wersja do druku

+- McSurvi.pl Network Serwery Minecraft 1.8 (http://mcsurvi.pl/forum)
+-- Dział: Forum Ogólne (http://mcsurvi.pl/forum/forumdisplay.php?fid=1)
+--- Dział: Poradniki (http://mcsurvi.pl/forum/forumdisplay.php?fid=127)
+--- Wątek: [Poradnik] Jak pisać skrypty? Eventy (/showthread.php?tid=20909)



[Poradnik] Jak pisać skrypty? Eventy - MrSandKing - 26-09-2019

Witajcie!

Dzisiaj omówimy sobie niektóre Eventy w Skript. Ale zacznijmy od tego co to jest ten "Event". A więc dzisiaj się zajmiemy dwoma, pierwszy event to
Kod PHP:
on mine of stone
Oczywiście zamiast stone'a, możemy dać inne bloki typu drewno, wełna, pochodnia, drzwi, cokolwiek co się da zniszczyć. Ale do czego możemy użyć tego eventu? Ano możemy go użyć do wysłania wiadomości, dodać, odjąć z zmienną, lub ją uaktywnić bądź ją dezaktywować np.

Kod PHP:
on mine of stone:
    
send "&aWykopales blok kamienia!"
    
add/remove 1 (odejmujemy bądź dodajemy jakąś cyfręliczbę do zmiennejfrom {naszazmienna::%player%} 

I teraz czas na drugi event, czyli
Kod PHP:
on place of stone 
Jest to event, który zwraca się do postawionego kamienia. I tak jak w poprzednim przypadku, możemy manipulować zmiennymi, wysyłać wiadomości itp.

Teraz przykładowy kod z użyciem właśnie tego eventu.

UWAGA!!! w tym kodzie zostaną użyte zmienne oraz inne funkcje, których nie ma w moich poprzednich poradnikach!

Kod PHP:
variables:
    {
monety::%player%} = 0

options
:
    
TAG: &7[&cMonety&7]

command /monety [<offlineplayer>]:
    
trigger:
        if 
arg isn't set:
            send "{@TAG} &aTwoj stan konta: &c%{monety::%player%}%"
        if arg is set:
            send "{@TAG} &aStan konta gracza %arg%: &c%{monety::%player%}%"

on mine of stone:
    add 1 to {monety::%player%}
    send "&aZdobyles &61$"

on place of stone:
    remove 1 from {monety::%player%}
    send "&aZaplaciles &61$ &aza postawienie &ckamienia" 

Za pomocą eventów w skrypcie, możemy zrobić skrypty na osiągnięcia, różnego typu MiniGames itp.
Tak jak zapewne zauważyliście podczas używania eventów nie używamy trigger:, używamy go tylko do komend.