KAMIL0024 5 Opublikowano 25 października 2019 Udostępnij Opublikowano 25 października 2019 (edytowane) Customowe składnie. Przedstawię Wam praktyczne zastosowanie skript-mirrora w tworzeniu własnych składni. Poradnik od autora dodatku znajduję się tutaj. W sumie wzorowałem się na tym poradniku, więc tam też można oblukać Wymagania: - Skript (niewymagane ) - skript-mirror +v0.8.0 (do pobrania tutaj) Wzór składni <test> - Element wymagany [test] - Element niewymagany (1|2) - Elementy do wyboru (1, albo 2) Można takie coś łączyć. Wtedy wychodzi takie coś. [ ( 1 | 2 ) ] - Opcjonalnie do wyboru 1 lub 2 Składnia w skript-mirror. (expressions|expr)-<numer argumentu> - Argument. (takie coś jak mamy w /command [<text>] to mamy arg-1. Tutaj mamy expr-1) %text% - Parametr. (może być %numer%, %world% etc. [to samo co w argumentach w komendzie]) Tworzenie efektu. [local] effect <składnia>: parse: # niewymagane # kod trigger: # wymagane # kod Teraz co tutaj się stało? [local] odpowiada za to, czy efekt'a będziemy mogli używać w innych skryptach. Jeżeli wpiszemy local to dany efekt będzie niedostępny w innych skryptach. <składnia> będzie nam odpowiadała za wygląd składni . parse to niewymagany element w którym można wpisać wartości zmiennych, które będą ustawione podczas wykonywania efektu. trigger to element, który będzie nam wykonywał nasz kod (tak samo jak przy komendzie). Przykład: effect hello [the] world: parse: set {_test} to "eldo" trigger: # {_test} ma wartość "eldo" broadcast {_test} Teraz możemy użyć naszego efektu w skrypcie. Ten efekt wyśle nam do wszystkich wiadomość o treści "eldo". Spoiler command /tut: trigger: hello world heloo the world # ten kod ^ robi to samo Zatrzymywanie kodu. Przy użyciu effectu możemy ingerować (zatrzymywać/wznawiać) w kod. effect Zatrzymaj mi kod pls: trigger: send "Zatrzymuje jakis kod!" to console delay the effect # To nam zatrzymuje kod. send "to juz sie nie wysle :((" to console command /tut2: trigger: send "Witaj" Zatrzymaj mi kod pls # Nasz custom effect. send "To tez sie nie wysle :((" Teraz pytanie 'czy to ma jakiś sens?'. Tak, ponieważ możemy zatrzymany kod wznowić. Zastosowanie: Spoiler effect check %player%: trigger: delay the effect # To nadal zatrzymuje kod set {_player} to expr-1 if {_player}'s name contains "a": send "Niestety, twój nick zawiera 'a'" to {_player} stop if world of {_player} is "skript": send "Twój swiat to skript, wiec nie mozesz tego uzyc!" to {_player} stop continue # Wznawia nam kod command /DajOpa: trigger: check player # Nasz custom effect send "Lal, twoj swiat to nie skript, oraz twój nick nie zawiera litery 'a'" Teraz CO TUTAJ SIĘ STAŁO!!?!? Gdy wykonujemy komendę `DajOpa` to wykonywany jest nasz custom effect `check player`. Ten effect zatrzymuje kod wykonywany w komendzie `DajOpa` (coś takiego jak `wait x`) i jeżeli gracz spełnia dane warunki (jego świat to `skript`, oraz jego nick nie ma litery `a`) to wznawia kod wykonywany w komendzie `DajOpa` i wyśle nam wiadomość. Jeżeli gracz nie spełnia warunków, to nie wyśle wiadomości `Lal, twoj bla bla bla`. Co do samego effectu. Został wykorzystany parametr %player%. Do zmiennej {_player} został przypisany expr-1 (czyli parametr 1, czyli %player%). Tworzenie wyrażenia (expression'a). [local] [plural] expression <składnia>: return type: <co ma zwracać (można używać tylko tego, co jest w skrypcie)> # Niewymagane parse: # kod, niewymagane get: # kod, niewymagane add: # kod, niewymagane set: # kod, niewymagane remove: # kod, niewymagane remove all: # kod, niewymagane delete: # kod, niewymagane reset: # kod, niewymagane Wyjaśnienie. 1. [local] - Jego funkcja się nie zmienia. 2. [plural] - Określa to, czy wyrażenie możne zwrócić więcej niż jedną wartość. 3. get,add,set,remove,remove all,delete,reset - To raczej powinno być znane . Przykładowe użycie: Wszystko jest tutaj: https://code.skript.pl/W7VTWiC7 Na szczęście to już koniec tego super poradnika skopiowanego od xAxee, ale cii. Mam nadzieje, że nie udało mi się kogokolwiek nauczyć przez to coś . Edytowane 25 października 2019 przez TakiJakTy Usuwam formatowanie. Notatka dodana przez TakiJakTy Odnośnik do komentarza https://skript.pl/temat/35348-customowe-sk%C5%82adnie-za-pomoc%C4%85-skript-mirrora/ Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi