112
edycji
Zmiany
m
==Dodatki==Dla Skripta można tworzyć '''dodatki'''. Istnieje wiele dodatkówAutorem pierwowzoru jest Njol, które dodają bardzo dużo nowych wyrażeńszwajcarski programista Java, efektów, zdarzeń lub typównatomiast obecnie używany i ciągle aktualizowany jest fork autorstwa ShaneBee i bensku. Najnowsze aktualizacje są publikowane [https://github. Autorzy bardzo chętnie je tworzą i publikującom/SkriptLang/Skript/releases tutaj].
{{Main|== Dodatki ==Dodatki ''(ang. addony)'' dodają nowe składnie, które z kolei ułatwiają pracę i umożliwiają modyfikację wielu nowych aspektów serwera. Takich pluginów jest wiele, a jej niepełną listę znaleźć można [[:Kategoria:Dodatki}}|tutaj]].
*'''/skript help''' - informacje o wtyczce == Dokumentacja i jej komendy.inne strony ==*Dokumentacje opisują wszystkie zdarzenia, efekty, wyrażenia i warunki zawarte w teoretycznie każdym dodatku, w tym samego Skript'''/skript disable [all/nazwa]''' - pozwala na wyłączenie skryptu (wszystkich lub konkretnego).*'''/skript enable [all/nazwa]''' - pozwala na włączenie skryptu (wszystkich lub konkretnego)a w sposób przejrzysty dla każdego użytkownika, m.*'''/skript update''' - sprawdza wersję Skriptain.*'''/skript reload [all/nazwa]''' - jest jak to najważniejsza z komendu siebie zaimplementować, która odświeża skrypt (lub wszystkie skrypty), więc można je tworzyć podczas gry na bieżąco jakich dodatków się wymaga i co chwilę sprawdzać ich działanierównież jest parę przykładów użycia.
Aby napisać swój pierwszy skrypt powinieneś otworzyć dowolny * [https://docs.skunity.com/ skUnity Documentation]* [https://skripthub.net/docs/ SkriptHub Documentation]* [https://parser.skunity.com/ skUnity Parser] – internetowy edytor tekstu tekstowy, który sprawdza prawidłowość napisanego kodu, liczy ilość komend, funkcji i zmiennych. == Komendy == *''/skript help'' - komendy i informacje o pluginie.*''/skript disable [all/nazwa]'' - wyłączenie poszczególnych/wszystkich skryptów.*''/skript enable [all/nazwa]'' - włączenie poszczególnych/wszystkich skryptów.*''/skript update'' - sprawdza, czy wersja Skripta jest najnowsza.*''/skript reload [all/nazwa]'' - Wczytywanie skryptów komendą. Ułatwia to manipulację i szybkie edytowanie skryptów. == Konfiguracja ==Konfiguracja wtyczki Skript pozwala na modyfikację pluginem. Przykładowe wartości, które można zmienić według swoich potrzeb, to '''enable effect commands''' - domyślna wartość: '''false''', wartość: '''boolean''', opis: wszystkie wiadomości wprowadzone na serwerze z prefiksem '!'(zostaną zinterpretowane jako efekty i zostaną wykonane. Nierozsądni gracze mogą nadużyć komend i uszkodzić serwer/świat, np. Windowsowy notatnik)<code>!create explosion of force 10000</code> spowoduje crash serwera i nieodwracalne zmiany na świecie spowodowane olbrzymią eksplozją.Przykłady użycia komend:<pre>!heal player - leczenie gracza!feed player - najedzenie gracza!broadcast "&4Ogłoszenie" - wysyłanie wiadomości o podanej treści do każdego gracza i konsoli!set time to 6:00 - komenda domyślnie jest wykonywana w świecie gracza, w tym przypadku czas na świecie zmieni się na godzinę 6:00</pre><br>'''allow ops to use effect commands''' - domyślna wartość: '''false''', wartość: '''boolean''', opis: czy operatorzy mają dostęp do używania komend podanych wyżej. Jeśli wartość wynosi ''false'' lub jedynie gracze z permisją <code>skript.effectcommands</code> mogliby wykonać te czynności.<br>''Notepad++'date format''' - domyślna wartość: '''default''', wartość: '''tekst''', opis: W pliku konfiguracyjnym zakomentowano sposób zmieniania tej wartości. ''date format'' używa się później w ekspresji <code>now</code>. Dla przykładu: <code>dd/MM/yyyy</code> pokaże 24.12.2020. Więcej informacji można znaleźć [http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html tutaj].
Te artykuły dokładnie opisują podstawowe elementy tego języka.Pierwszym skryptem może być np. komenda.<pre>command /hello: permission: sk.hello permission message: Nie masz uprawnień! aliases: /hi trigger: send "Hello world!" to player</pre>Po krótce: *'''command /hello''' opisuje budowę komendy. Po wpisaniu komendy "hello" ma się wykonać poniższy kod.*'''permission: sk.hello"''' jest opcjonalne, ale Skript sprawdza, czy gracz posiada permisję*'''permission message: Nie masz uprawnień!''' opisuje wiadomość, która się pojawi graczowi na czacie, jeżeli <u>nie posiada on</u> uprawnienia.*'''aliases: /hi''' - w tym przypadku można dodatkowo wpisać ''/hi'' i się wykona komenda ''/hello''.*'''trigger:''' tutaj jest potrzebne, jak do każdej innej komendy. Trigger opisuje, co ma zrobić gra po wpisaniu komendy.*'''send "Hello world!" to player''' - send: wysyła, "Hello world!" jest stringiem, tekstem, w cudzysłowiu, można wstawić tu dowolną wartość, natomiast ''to player'' oznacza, że wiadomość ma być wysłana do nas. Jak później bardziej poznacie wtyczkę to się okaże, że można wstawiać w miejsce ''player'' różne [[typy]]. To była komenda. Podsumowując:<pre><komenda/periodical/zdarzenie>: <effect>: <kod></pre> (Periodical jest jedną z [[pętle|pętel]].) Coś teraz o zdarzeniach.Krótko mówiąc, zdarzenia wywołują kod, jak gracz zacznie coś robić na serwerze, np. jeść lub zadać obrażenia, albo zginąć lub rzucić śnieżką. W Skripcie jest od groma tych zdarzeń ([[Zdarzenia]]) plus więcej w dodatkach. <pre>on mine of stone: if player's tool is diamond pickaxe of unbreaking 10 named "Kilof Mocy" with lore "Linia 1","Linia 2","Linia 3": chance of 15%: drop 1 nether star of unbreaking 10 named "&cGwiazda Piekła" at event-block</pre> *'''on mine of stone''' - kiedy gracz wykopie <u>kamień</u>*'''if player's tool is diamond pickaxe''' - sprawdza, czy narzędziem w ręce gracza jest diamentowy kilof*'''of unbreaking 10''' - tutaj sprawdza, czy ten kilof ma Niezniszczalność X (w miejscu ''unbreaking 10'' można wpisać wszystkie [[typy]] zaklęć)*'''named "Kilof Mocy" with lore "Linia 1","Linia 2","Linia 3":''' czy kilof jest nazwany ''Kilof Mocy'' i czy ma on opis (lore). Tutaj można dodać wiele linijek, wystarczy że po pierwszej "linii" opisu napiszemy przecinek i rozpoczynamy cudzysłowiem drugą linijkę.*'''chance of 15%:''' {{Main|Losowość}}*'''drop 1 nether star''' - wyrzuć 1 gwiazdę netheru*'''event-block''' - miejsce zdarzenia (miejsce wykopanego kamienia). W zdarzeniach można używać terminów event-() aby określić miejsce zdarzenia. np. <code>on death of cow: drop 1 of milk bucket at event-entity</code> Pętle? {{Main|Pętle}} ==Wgrywanie skryptuBłędy ==Napisany skrypt należy zapisać w rozszerzeniu .sk i wgrać do folderu <code>Skript/scripts</code>. Przykładowe skrypty można usunąć, ale warto się również z nich nauczyć pewnych [[efekt]]ów lub wyrażeń. Wchodząc do gry wpisujemy komendę /sk reload <nazwa Podczas wczytywaniu skryptu> (bez .skmoże wystąpić błąd, ponieważ wtedy Skript nam nie znajdzie plikuktóry zostanie wyświetlony na czacie.)Wszystko jest okejNajczęściej, ale co, jeżeli będą błędy? ==Jak rozumieć błędy== *Źródłem jest [https://skript.pl/temat/2594-jak-rozumieć-błędy/ klik!] autorstwa ''PoweredDragon''<br><br> Warto zlokalizować błąd. Skript zawsze podaje, w jakiej linii kodu wystąpił błąd, więc należy się tam udać i wyszukać się źle napisanego fragmentu.Dodatkowo trzeba się upewnić, czy poprawnie się zapisało efekt/wyrażenie/zdarzenie. <pre>on step over dirt:on step on dirt:on steping on dirt:on steping over dirt:step over dirt:step on dirt:steping over dirt:steping on dirt:on walk over dirt:on walk on dirt:on walking on dirt:on walking over dirt:walk over dirt:walk on dirt:walking over dirt:walking on dirt:</pre>Te wszystkie sposoby działają tak samo! :O<br><br>Najczęstszym błędem jest <code>can't understand this condition/effect</code>. Wynika to wynikają z tego faktu, że jak sam Skript nam mówi, <u>nie może on</u> zrozumieć efektu/warunku błędu w danej linii. Dlatego trzeba zobaczyćkodzie, czy się nie posiada danego niezainstalowanego dodatku i sprawdzić, czy dodatek jest kompatybilny, to znaczy jest zaznaczony na zielono. Zaznaczony na czerwono oznacza, że nie działalub niekompatybilnej wersji.
brak opisu edycji
'''Skript''' jest pluginem głównie przeznaczonym dla silników opartych o Bukkit APIamatorskich administratorów serwerów, którzy mogą modyfikować swoje serwery bez posiadania znajomości języków programowania, m.in [https://pl.wikipedia. Ta wtyczka pozwala graczom na tworzenie różnorodnych rzeczy i zdarzeńorg/wiki/Java '''Java'''], od kilkuset zdarzeń po wiele typów i wyrażeń[https://pl.wikipedia.org/wiki/Python '''Python'''] lub [https://pl.wikipedia. Plugin został napisany specjalnie dla graczyorg/wiki/C++ '''C++'''], którzy chcą dodawać coś autorskiego nie umiejąc Javya dokładniej pisząc skrypty używając prostego języka angielskiego. Język Skripta opiera się na Najbardziej podstawowym języku angielskim wymaganiem do użycia tej wtyczki jest silnik [https://www.spigotmc.org/ '''Spigot'''] i jest prosty w użyciujego forki: [https://papermc.io/ '''PaperSpigot'''], [https://github.com/Spottedleaf/Tuinity '''Tuinity'''] itd.
==SkryptyPoczątek ==Aby stworzyć swój pierwszy skryptzacząć przygodę ze swoimi skryptami, otwórz klienta FTP i wpierw zainstaluj wtyczkę najnowszy plik z [https://github.com/SkriptLang /Skript/releases tej strony] (najnowsze wersje), zależnie, czy skrypty testujesz na serwerze technicznym, lub chcesz z jego pomocą otworzyć publiczny serwer. Stabilna wersja pliku, czyli taka, która nie zawiera błędów jest oznaczona tagiem ''Latest Release''. Pobrany plik .jar wgraj do folderu <code>/plugins</code>, a następnie zrestartuj serwer. Po wgraniu wtyczki należy zrestartować serwerzrestartowaniu serwera we wcześniej wspomnianym katalogu powinien pojawić się folder <code>Skript</code>, w związku z tym w nim paczka plików. Nas, jako początkowych skrypterów powinien interesować katalog o nazwie <code>scripts</code>. W tym folderze pisze się i wgrywa swoje skrypty, czyli dokumenty tekstowe z rozszerzeniem '''.sk'''. Od administratorów wymaga się podstawowej wiedzy języka angielskiego i sprawdzić czy plugin jest kompatybilny umiejętności korzystania z serweremdokumentacji. Kiedy wszystko działa, to:
==Pisanie skryptu==
Przed napisaniem skryptu zapoznaj się ztematami, takimi jak:
*[[Zdarzenia]]
*[[Zmienne]]
<center>'''Najczęstsze błędy'''</center>
|-
|can't understand this condition/effect
|Skript nie może zrozumieć warunku/efektu. Warto zobaczyć, czy się posiada posiadamy dodatek lub bądź czy się dobrze zapisałofragment kodu jest poprawny.
|-
|indentation error
|Błąd z wcięciami w kodzie. Wcięcia (taby) są bardzo ważne i zawsze wystąpi jedno w pluginie Skript - podczas wczytywania kodu Skript sprawdza każde wcięcie do przodu po dwukropku.
|-
|invalid use of quotes
|Złe użycie cudzysłowia. W [[tekst]]ach ważne jest prawidłowe ich użycie. Aby Skript wziął cudzysłów za tekst należy go wpisać dwukrotnie - <code>"" < to #To jest tekst!</code>
|-
|the percent sign is used for expressions (e.g. %player%). To insert a '%' type it twice: %%
|}
Jeżeli naprawdę Skript cię wycieńcza z błędami - koniecznie odwiedź forum: nasze [https://skript.pl/ klik!forum].
[[Kategoria:Skript]]