Skocz do zawartości

Rozpoczynamy przygode ze Skriptem #2


Rekomendowane odpowiedzi

Witam.

 

Jest to juz 2 czesc mojego poradnika o Skript.
W tej czesci bede mowil o tym jak zrobic wlasna komende ktora bedzie wyswietlala tekst, o opcjach, zmiennych oraz argumentach + dla przykladu dam skrypty z zastosowaniem tego.

 

A wiec zaczynajmy!

 

Komenda

Mamy 2 mozliwosci do wyboru.

Stworzyc wlasna komende, albo wykonac dalszy kod do juz istniejacej komendy.

 

Wlasna komenda:

Aby stworzyc wlasna komende trzeba odpowiednio  rozpoczac  skrypt:

Ale co zrobic aby cos dalej sie dzialo?

 

Otoz mozna dac:

 

 wymagania (permissia)

wiadomosc o braku permissi

uzyciu (ale to juz z wymaganymi argumentami)

aliasy (inna forma komendy)

czy komenda ma byc egzekwowana tylko przez gracza/konsole lub gracza i konsole

opis komendy.

Jezeli zdecydowalismy sie juz na ktores z powyzszych musimy jakos rozpoczac nasz kod.

Do tego celu uzywamy 

Przyklad:

command /<twoja komenda>: 
command /<twoja komenda>:    description: Opis danej komendy (Dla gracza)    usage: Poprawne uzycie /<twoja komenda> <argument> # Tutaj tego nie bede pokazywal, ale dalej juz tak    permission: twoja.permissia # Permissia wymagana do uzycia tej komendy    permission message: Nie masz wystarczajacych uprawnien! # Wiadomosc gdy gracz chce uzyc komendy, ale nie ma permissi    executable by: players/console/players and console # Komenda mozliwa do uzycia przez Graczy/konsole/Graczy i konsole    aliases:  as1, as2, as3, as4 # I tak dalej, i tak dalej. Czyli komenda bedzie uzywana rowniez wtedy kiedy wpiszemy jako komende jeden z aliasow. Kazdy kolejny alias musi byc oddzielony przecinkiem i spacja! 
    trigger:
Czyli:command /cc:    #Komenda    permission: cc    # Potrzebna permissia do wykonania tej komendy    aliases: wyczysc, chat, c, clearchat, clearc    # Aliasy do komendy    trigger:    #Wejscie        loop 100 times:    # Zapetla dana czynnosc 100 razy            broadcast ""    # Jaka czynnosc ma byc wykonywana        wait 1 tick    # Ile ma odczekac po wykonaniu powyzszego kodu. 1 tick to 1/20 sekundy czyli "wait 10 ticks" to 0.5 sekundy        send "Powoli zaczynasz sie uczyc!"    #Czynnosc wykonywana przez komende.  W "send" domyslnie wiadomosc jest wysylana do gracza ktory uzyl tej komendy" 

Argumenty

Rodzaje argumentow: player, number, item, text, offlineplayer

 

Argumenty obowiazkowe w komendzie: <player>, <number>, <item>, <text>, <offlineplayer>

 

Argumenty nie obowiazkowe w komendzie: [<player&gt], [<number&gt], [<item&gt], [<text&gt], [<offlineplayer&gt]

 

Jezeli argument nie bedzie ustawiony, ale chcemy zeby cos bylo na miejscu nie uzupelnionego pola:

 <player=%player%>, <number=555>, <item=diamond>, <text=Przykladowy tekst>

 

 

Tak samo dziala z nie wymaganymi argumentami

Odczytywanie argumentow w komendzie:

Gdy uzyjemy samego argumentu [<text&gt] lub <text>:

Gdy mamy tylko 1 argument w komendzie ktory jest tekstem:

Gdy sprawdzamy czy dany argument to jakis tekst:

Gdy uzyjemy argumentu z liczba, przedmiotem lub graczem:

if arg 1 is set:    if arg 2 is set:
if arg is set:
if arg 1 is "help":    send "Pomocy"
if player-arg is set:    if player-arg is "%player%":    # Sprawdza czy argument z graczem to nick gracza ktory uzywa tej komendy. Musi byc w cudzyslowiuif number-arg is set:    if number-arg is 1 or 2 or 3:    # Itd. Ten argument nie musi byc w cudzyslowiuif item-arg is set:    if item-arg is diamond:    # Sprawdza czy argument z przedmiotem do diament. Nie musi byc w cudzyslowiu

Zmienne:

 

Czym właściwie jest zmienna w pluginie Skript? Jest to jakieś słowo albo liczba, którą przechowujemy i którą można modyfikować oraz sprawdzać w dowolnym momencie. Brzmi tajemniczo, ale zaraz omówimy ją na przykładzie bardzo prostego licznika wejść na serwerze.

Tak jak w cytacie, tak i tutaj  ;)

variables:    # Po polsku "zmienna"    {zmienna.%player%} = 0    # Zmienna przypisana do kazdego gracza i bedzie uzywana tylko dla niego. Bedzie nam liczyla tutaj ile razy gracz wszedl na server    {zmienna} = 0    # Zmienna ogolna, bedzie ona liczyla nam wszystkie wejscia na server graczyon join:    # Gdy gracz wejdzie na server:    add 1 to {zmienna.%player%}    # Dodaje 1 do odwiedzin/zmiennej gracza    add 1 to {zmienna}    # Dodaje 1 do odwiedzin/zmiennej servera    send "&5&n---------------------------------------------------------------"    send "&6Odwiedziles nas juz po raz %{zmienna.%player%}%"    # Aby odczytac zmienna w wiadomosci trzeba umiescic ja miedzy znakami procentu %    send "&6Lacznie odwiedzin naszego servera: %{zmienna}%"    send "&5&n---------------------------------------------------------------"

Opcje

Co to sa opcje?

 

Sa to jak sama nazwa mowi opcje, ktorych nie da sie zmienic, ale mozna sie pozniej do nich odwolywac w komendzie.

variables:    {zmienna.%player%} = 0    {zmienna} = 0 options:    tag: &b>>&eServer&b<< &con join:    add 1 to {zmienna.%player%}    add 1 to {zmienna}    send "&5&n---------------------------------------------------------------"    send "&6{@tag}Odwiedziles nas juz po raz %{zmienna.%player%}%"    send "&6{@tag}Lacznie odwiedzin naszego servera: %{zmienna}%"    send "&5&n---------------------------------------------------------------"

Odnośnik do komentarza
https://skript.pl/temat/1708-rozpoczynamy-przygode-ze-skriptem-2/
Udostępnij na innych stronach

Lol, a czy wiedziałeś, że opcje to również zmienne? Chyba jednak nie. Ogólnie poradnik, jak już mówiłem, zamieścił Sopher i ten poradnik jest przypięty w tym dziale...

Odnośnik do komentarza
https://skript.pl/temat/1708-rozpoczynamy-przygode-ze-skriptem-2/#findComment-14278
Udostępnij na innych stronach

O opcjach napisałem poradnik bardziej obszerny Tutaj, nie widzę sensu opisywania tego 2 raz... Tym bardziej, że nie opisałeś tego dobrze, dałeś tylko przykład. A o zmiennych także obszerniej pisał już kukubaczek Tutaj.

Odnośnik do komentarza
https://skript.pl/temat/1708-rozpoczynamy-przygode-ze-skriptem-2/#findComment-14302
Udostępnij na innych stronach

  • Szifter zablokował(a) ten temat
Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...