Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [[Category:skQuery]]
- {{DISPLAYTITLE:skQuery Addons - Własne efekty i wyrażenia}}
- == Autorzy ==
- Oryginalnym autorem treści jest użytkownik o nicku piratjsk. Treść została przemigrowana z forum [https://skript.pl skript.pl]
- == Wstęp ==
- Wielu skrypterów używało zmiennych i niestandardowych komend aby tworzyć skomplikowane i łatwo rozszerzalne skrypty. Niestety, dla wielu korzystanie z komend jest niewygodne i uciążliwe. Autorzy kilku dodatków (w tym skQuery, WildSkript, a nawet samego Skript) próbowali (i w większości im się to nie udało) wprowadzić system, który mógłby zastąpić korzystanie z komend zachowując piękno składni Skript. Dzięki wprowadzeniu niestandardowych wyrażeń i efektów możesz stworzyć swój mini-dodatek do Skript bez jakiejkolwiek wiedzy na temat Javy.
- == Wymagania ==
- By móc używać takowej funkcjonalności, należy posiadać pluginy:
- * skQuery (wersje 3.x)
- == Tworzenie pliku .skq ==
- Pierwszy krok na drodze do stworzenie nowych efektów i wyrażeń polega na stworzeniu w folderze /scripts/ pliku z rozszerzeniem .skq. Jeśli nazwę pliku zaczniesz od - nie zostanie on, tak jak w przypadku zwykłego skryptu, załadowany.
- Dodaj jedną lub więcej poniższych linii kodu do utworzonego pliku:
- === Efekty ===
- Wszystkie elementy są formatowane tak jak to można odczytać z oficjalnej dokumentacji, co oznacza, że możesz użyć %<typ>% wewnątrz składni aby skorzystać z parametrów.
- <code>declare effect "<składnia Twojego efektu>"</code>
- === Wyrażenia ===
- <code>declare expression "<składnia Twojego wyrażenia>" as "<typ wartości, którą zwraca Twoje wyrażenie>"<br>
- <br>
- declare loopable expression "<sładnia>" as "<typ>"<br>
- <br>
- declare property "<składnia>" as "<typ>" for "<typ obiektu, dla którego jest ta właściwość>"</code>
- === Komentarze ===
- Każda linia zaczynająca się -- będzie odczytana jako komentarz i zignorowana.
- Plik example.sqk, do którego będę się niżej odwoływał zawiera następujący kod:
- <code>-- Test 1.0
- declare effect "my custom effect"<br>
- declare expression "answer to life" as "number"<br>
- declare loopable expression "cool people" as "text"<br>
- declare property "%number% decrementation" as "number" for "number"</code>
- Należy także zwrócić uwgaę, że gdy uruchomisz swój serwer, plik .skq zostanie deaktywwany (w nazwie zostanie dodany -) i w folderze /scripts/ znajdzejsz nowy plik .skqc. Jeśli nie udostępniasz źródła, NIGDY NIE UDOSTĘPNIAJ PLIKU .SQK. Jeśli chcesz zmienić zawartość pliku .skq musisz usunąć - z początku jego nazwy.
- == Dodawanie logiki ==
- Teraz w pliku .sk musisz dodać logikę (kod) do Twojego nowego efektu/wyrażenia. Zakładając, że doszedłeś już tak daleko, zakładam, że rozumiesz, że będę tu tworzył implementację pliku exapmle.skq. Obowiązują tu zwykłe zasady Skript, niestandardowe elementy mogą być stosowane w tworzonej logice.
- <code>custom effect logic for "my custom effect":<br>
- give 1 diamond to all players<br>
- wait 10 seconds<br>
- ban all players<br>
- custom expression logic for "answer to life":<br>
- set expression value to 42<br>
- custom expression logic for "cool people":<br>
- set expression value to "w00tmast3r", "MostFunGuy", "Nfell2009", "Njolbrim"<br>
- custom property logic for "%number% decrementation" of "number":<br>
- set expression value to number origin expression - number expression 1</code>
- Podstawowe wyrażenia: lekka dokumentacja
- # Dotyczy wszystkich przypadków gdy chcemy uzyskać wartość wyrażenia zdefiniowanego w składni tworząc logikę elementu<br>
- # Loopable (zapętlanie) dotyczy tylko wyrażeń, które zwracają wiele wartości (teksty, gracze, bloki, itp.)<br>
- # Type (typ) dotyczy typu, który oczekujesz, że zwróci wyrażenie (liczba, przedmiot, gracz, mob, itd.)<br>
- %type% [loopable] expression( |-)%number%
- # Dotyczy tylko wyrażeń i własności (properties), określa to czym chcesz, żeby była wartość wyrażenia
- [custom] expression ([return] value|output)
- # Dotyczy tylko własnośći (properties), to samo co wyrażenie ale odnosi się do właściciela własności (np. player's sack, cheese of {_var})
- %type% origin expression
- == Dokładniej opisująca i tłumacząca zagadnienie wersja poradnika ==
- === Co chcemy zrobić? ===
- Stworzyć własne efekty i wyrażenia dzięki nowej funkcji skQuery.
- === Zaczynamy ===
- Tworzymy w folderze /scripts/ plik z rozszerzeniem .skq np "miniaddon.skq".<br>
- Jeśli nazwę pliku zaczniemy od myślnika "-" to plik nie zostanie wczytany (dokładnie tak jak wygląda to w przypadków zwykłych skryptów).
- === W utworzonym pliku wpisujemy ===
- Jeśli chcemy utworzyć nowy efekt:
- <code>declare effect "<składnia Twojego efektu>"</code>
- -- np.:
- declare effect "zabij adminow"
- === Jeśli chcemy utworzyć wyrażenie ===
- <code>declare expression "<składnia Twojego wyrażenia>" as "<typ wartości, którą zwraca Twoje wyrażenie>"</code>
- -- np.:
- declare expression "moje wyrazenie" as "boolean"
- <code>declare loopable expression "<sładnia>" as "<typ>"</code>
- -- to wyrażenie będzie zwracało kilka wartości i będzie je można zapętlać
- -- np.:
- declare loopable expression "pobliskie krowy" as "entity"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement