jas123
Użytkownik-
Ilość zawartości
18 -
Rejestracja
-
Ostatnia wizyta
Ostatnie wizyty
Blok z ostatnimi odwiedzającymi dany profil jest wyłączony i nie jest wyświetlany użytkownikom.
Osiągnięcia jas123
Początkujący I (2/13)
1
Reputacja
-
@xAxee Kod działa, jednak nie usuwa itemu, który przełożę w sloty, gdzie znajduje się zbroja gracza. Jak zrobić, aby działało to również na sloty zbroi?
-
Wyświetla się błąd: event-item stack can't be set to anything
-
Nadal brak efektu po kliknięciu na item.
-
jas123 obserwuje zawartość Problem z On damage i Problem z On inventory click
-
Próbuję napisać skrypt, który po naciśnięciu na konkretny item w ekwipunku gracza, usunie go natychmiast. Reload skryptu nie wyrzuca błędu, jednak skrypt nie działa. Podejrzewam, że wina leży w ostatniej linijce. Zależałoby mi aby skrypt działał na zasadzie bazującej na On inventory click (usunięcie itemu poprzez kliknięcie na niego, gdy ten znajduje się w ekwipunku lub usunięcie itemu poprzez przeniesienie go do ekwipunku). on inventory click: if "%regions at player%" contains "testowy": if "%lore of event-item%" contains "Item testowy": remove event-item from player's inventory Wie ktoś może jak to naprawić?
-
Skrypt początkowo wyświetlał błąd: Can't understand the value '"`1234567890-=][poiuytrewqasdfghjkl;'\/.,mnbvcxz~!@' (111.sk, line 2: {chat::chars}: "`1234567890-=][poiuytrewqasdfghjkl;'\/.,mnbvcxz~!@#$%^&*()_+?><|:"') Jednak zamieniłem ciąg znaków na "abcde12345". Skrypt skompilował się prawidłowo, jednak występuje błąd który postaram się zobrazować, gdyż nie wiem jak to opisać: Podczas napisania ciągu znaków ABC na czacie, skrypt pozwala na napisanie (prawidłowo funkcjonuje) Jednak, gdy próbuję napisać CBA albo BAC, pojawia się komunikat "Wiadomość zawiera nieprawidłowe znaki!"
-
Nie zmieniałem. Wersja silnika: PaperSpigot 1.7.10 Wersja Skript: 2.1.2 Wersja SkQuery: 3.21.4
-
Skrypt kompiluje się bez błędów, jednak za każdym razem przy próbie napisania czegokolwiek na czacie wyskakuje "Nieodpowiednia wiadomość"
-
on chat: set {_list::*} to %string% split at %message% loop {_list::*}: if {_list::*} contais "A" or "B" or "C" or "1" or "2" or "3" i tak dalej : stop else: cancel event send "&cNie mozesz uzywac znakow specjalnych w wiadomosci" Dobrze interpretuje, czy należy to zrobić inaczej?
-
jaku49 zareagował(a) na pytanie:
Blokowanie Unicode
-
Szukam sposobu na zablokowanie znaków Unicode (używanych przez osoby reklamujące) za pomocą skryptu. Widziałem, że istnieją pluginy, które wyłapują znaki Unicode, jednak większość ich nie współpracuje z wersją mojego serwera. Pozostałe nie spełniają większości oczekiwań, dlatego zależy mi, aby napisać to w Skript. Próbowałem blokować najczęściej używane znaki Unicode, jednakże nie ma fizycznej możliwości zablokowania ich wszystkich przy użyciu kodu działającego na analogicznej zasadzie jak poniższy: on chat: if message contains "Ά" or "β" or "Ⓐ" or "Ⓑ" or "Ⓒ" or "Ⓓ": cancel event Doszedłem do wniosku, że zamiast blokować wszystkie znaki Unicode, może wystarczy napisać skrypt zezwalający na używanie tylko i wyłącznie znaków z klawiatury np: Q W E 1 2 3 ! $ ; ' i tak dalej. W domyśle, ten skrypt, po wykryciu innego znaku (niż znajdującego się na liście) powinien nie zezwolić na napisanie wiadomości z tym znakiem. Jednak nie wiem jak całość napisać w Skript. Może również istnieje jakieś inne wyrażenie w Skript (przykładowo ON UNICODE EXIST), które wykrywa znaki Unicode, a które umknęło mojej uwadze? Ma ktoś pomysł jak rozwiązać powyższy problem w Skript?
-
Nadal problem występuje
-
Silnik: PaperSpigot 1.7.10 Wersja Skript: 2.1.2 Wersja SkQuery: 3.21.4 Wersja WildSkript: 1.6.1 Wersja FunnyGuilds: 3.9.9.1 Cleaned Podczas kompilacji, skrypt nie wywala błędów, poza zasugerowaniem zmiany Ender Crystal na End Crystal (czego dokonałem). Jednak gdy kładę Emerald Ore nazwaną Apteczka w pobliżu End Crystalu nic sie nie dzieje (nie wykonuje się komenda heal). Napisałem też testowy skrypt, który ma na celu wykrycie bloków w pobliżu, jednak on też nie wykrywa End Crystala w pobliżu (skrypt jedynie zwraca mój nick). Oto kod: on place of dirt: loop entities in radius 5 around event-location: send "%loop-entity%"
-
Napisałem skrypt, który ochrania gracza przed zdedaniem od upadku, gdy ten wleci (na fly) na dany region. Jednakże skrypt działa połowicznie. Mianowicie, gdy gracz wlatuje na region, a jego wysokość od ziemi jest niewielka np 30 bloków (nie mam na myśli parametru Y, lecz odległość pomiędzy graczem a najbliższym blokiem podłoża), skrypt działa poprawnie. Gdy gracz wlatuje na obszar regionu, a jego wysokość względem ziemi wynosi około 139 bloków, skrypt nie ochrania gracza i on w efekcie ginie. Nie jestem w stanie określić, od jakiej wysokości skrypt przestaje działać, gdyż na 2 różnych komputerach ta wysokość jest inna. Na 1 komputerze, wysokością graniczną jest parametr Y wynoszący około 203, na innym jest to już około 180. Testy były przeprowadzane w tej samej lokalizacji na mapie. Co może być przyczyną? on entering of region: wait 3 tick if "%regions at player%" contains "test": if player is flying: set {antyobrazenia.%player%} to true disable fly for player on damage: damage cause is fall if {antyobrazenia.%victim%} is true: cancel event wait 5 tick delete {antyobrazenia.%victim%} stop Może istnieje jakiś inny sposób na ochronę gracza przed obrażeniami z upadku? Efekt typu god na czas np 8 sekund odpada, gdyż należy przewidzieć, że gracz spadnie na ziemię w przeciągu np 4 sekund i przez kolejne 4 sekundy będzie niemożliwy dla zabicia przez innych graczy.
-
Niestety nie działa. A zależy mi na tym, aby sercem gildii był End Crystal. Jakieś inne pomysły?
-
ref. Ma ktoś jakieś pomysły?
-
Niezbyt dokładnie wyjaśniłem na początku założenia skryptu, mój błąd. Nie będę używał On any movement, lecz On place. Skrypt polega na tym, że gracz może używać apteczki, ale tylko przy sercu gildii. I właśnie do tego potrzebuję sposobu na wykrycie, czy gracz znajduje się przy EnderCrystalu Mój kod: on place of Emerald Ore: if player's tool is Emerald Ore named "&cApteczka" with lore "&bPostaw aby uleczyc sie": loop all entities in radius 5 around player: if loop-entity is End Crystal: set {_jestkrysztal.%player%} to true if {_jestkrysztal.%player%} is true: set block to air execute console command "heal %player%" send "&cPomyslnie uleczyles sie" else: send "&cUleczyc mozesz sie tylko przy sercu gildii" stop Jednakże ten kod nie działa, gdyż nie wiem jak wykryć to, czy gracz znajduje się w odległości max 5 bloków od EnderCrystalu. Zamienienie loop-block na loop-entity (tak jak wcześniej wspomniałeś) nadal nie spowodowało wykrycia EnderCrustalu. Prawdopodobnie Skript nie interpretuje End Crystal jako block lub entity, lub gdzieś popełniłem błąd w kodzie.
