-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
Dlatego, że użyłeś playera w pętli 'loop all players'. Zastąp w tej linijce każdego playera z loop-playerem.
-
To mogę naprawić, zaraz poprawię skrypt podesłany wyżej. W takim wypadku nic z tym nie mogę zrobić, wybacz. Widocznie jest to na pewien sposób zakopane w kodzie gry i zombie nie mogą pewnym mobom zadawać obrażeń.
-
No tak... w takim razie teleportuj gracza na 100 kratkę zamiast ustawiać jego koordynat Y. teleport player to location at (player's x-loc, 100, player's z-loc) in player's world Nie powinieneś ustawiać ogólnej zmiennej globalnej. Powinieneś ją przypisać danemu graczowi (np. {noDamage::%player%}).
-
Po prostu wytabuj sobie kod... jeden znak tabulacji przed linijkami 2-4 oraz dwa znaki tabulacji przed 5 ostatnimi linijkami.
-
Plugin? To jest dział Skript i tutaj głównym tematem są skrypty, nie pluginy. Aliasy możesz ustawić w pliku commands.yml.
-
Proszę, skrypt nietestowany. Na górze skryptu dołączyłem sekcję konfiguracyjną.
-
W ostatniej linijce zapomniałeś dodać "'s" po 'loop-player'. Przed ustawianiem koordynatu Y gracza zapisz mu zmienną globalną, którą będziesz sprawdzał w evencie 'on damage'. Jeżeli 'damage cause' to 'fall', sprawdzasz czy zmienna jest ustawiona. Jeżeli tak, anulujesz event i czyścisz zmienną.
-
Ehh... w zły sposób to zrobiłeś. Nie trzeba anulować eventu, wystarczy ustawić 'chat format'. set chat format to "%player's prefix% %player%: %message%" Używasz tego zamiast anulowania eventu i broadcastu. Co do samej cenzury... Musisz sprawdzać czy 'message' zawiera jakieś niewłaściwe słowo. if message contains "kurka wodna": replace all "kurka wodna" with "****" in message
-
Zapewne da się, tylko lepiej, abyś pokazał kod, gdyż nie wiem co dokładnie masz na myśli.
-
Cytując fragment poradnika: Trigger zawsze jest na końcu.
-
1. Linijka 17. - uprawnienia zamieszczamy w cudzysłowie, gdyż są tekstem. Bez tego skrypt nie zadziała. 2. Linijka 22. - ustawiasz szkło w slotach w zbyt obszerny sposób. Zamiast tego powinieneś użyć zbioru liczb lub pętli. set slot (integers between x and y) of {_x} to [twój item] # Gdzie x i y to numery slotów 3. Event 'on inventory click' jest specyficznie skonstruowany. 3 pierwsze linijki w tym evencie są całkowicie zbędne. 4. Nie używaj wielokrotnie tego samego eventu (w tym przypadku on mine, nawet jeżeli dasz inny blok). Wrzuć wszystko do eventu 'on mine' i sprawdź w nim 'event-block'. 5. Sam zamysł skryptu jest trochę dziwny, gdyż w GUI po kliknięciu wykonujemy komendy, które są dostępne jedynie dla konsoli. Nie wiem czy to był zamierzony zabieg z twojej strony, ale jeżeli nie to to popraw. 6. Jeżeli chcesz odfiltrować złego 'executor' (sendera) komendy, wykorzystaj w tym celu parametr 'executable by', w którym podasz jako wartość 'console'.
-
Tutaj masz wszystko objaśnione:
-
No to tak jak wcześniej napisałem, przenieś je tuż nad trigger.
-
Chryste Panie, pierwszej. Mój błąd xd.
-
To nie z tego problem wynika. Zapomniałeś po prostu dwukropka na końcu pierwszej linijki.
-
Nad triggerem.
-
"found" oznacza to, co Skript znalazł, "expected" oznacza co według Skripta tam powinno być. Jeżeli nadal nie wiesz co z tym zrobić, pokaż treść błędu.
-
Na początek pobierasz listę wszystkich światów przy pomocy metody Bukkit.getsyf(). Zapętlasz listę światów i następnie używasz metody getLivingEntities() z interfejsu World, aby otrzymać listę wszystkich żywych bytów i wywalasz z niej zawartość listy getPlayers() z pomocą metody removeAll(). Żeby przechwycić duplikaty, możesz użyć metody retainAll(). EDIT: Chciałem podać metodę Bukkit.getW(o)rlds() (bez nawiasów przy "o") i zamieniło na Bukkit.getsyf(). Ciekawe. Nie mogę tego w ogóle zedytować, bo przywraca do poprzedniego stanu. Chyba Libter postanowił wyśmiać gettery w Javie. Powinno pomóc. https://stackoverflow.com/questions/12807797/java-get-available-memory
-
Argumentów typu 'text' powinno się w miarę możliwości używać na końcu. Skoro drugiego argumentu używasz czasem jako tekst, a czasem jako player, w drugim przypadku musisz go parse'ować na offline playera i jeżeli chcesz mu coś wysłać, dać, teleportować go gdzieś itd. (wszystkie akcje wymagające gracza na serwerze), sprawdzasz czy jest online i jeżeli jest, wtedy parse'ujesz go na playera i robisz już z nim co chcesz.
-
1. Skrypt nie działa dlatego, że wszystko od linijki 137 w dół blokuje pisanie na czacie. Nie masz tam żadnego warunku sprawdzającego to. 2. Skrypt wygląda o-kro-pnie. Nie używaj wielokrotnie tego samego eventu. Użyj tylko jednego eventu i wszystko podepnij pod to.
-
Masz serwer na wersji 1.8.8 i SkQuery, który ci podrzuciłem, jest możliwie najnowszy dla tej wersji.
-
Znajdziesz na Bukkit'cie. Wyszukaj "skquery", wejdź na stronkę Bukkita i tam odnajdziesz w zakładce "File" swojego zmumifikowanego faraona. Zapewne nie polubi tego, że wybudzasz go z wiecznego snu, ale mówi się trudno. Szczerze nawet nie wiem na co ci tak stara wersja.
-
Pokaż jeszcze raz twój kod.
-
Co rozumiesz poprzez "zwykły SkQuery"? Przypominam, że SkQuery posiada nowszy fork przeznaczony dla wersji 1.9+ oraz starszy przeznaczony dla wersji 1.8 i niższych. SkQuery Lime pochodzi z nowszego forku, ale wersja, którą ci podrzuciłem, działa na wersji 1.8. Wybacz, ale taka jest cena za przebywanie na starszych wersjach.
-
Proszę, oto skrypt. Pamiętaj na przyszłość, że zlecenia dot. skryptów składamy w dziale "Skript > Zlecenia". on consume: event-item's type is enchanted golden apple remove absorption from player apply regeneration 5 to player for 25 seconds apply absorption 1 to player for 2 minutes
