-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
Nie moge znalezc skripta ktory bedzie wspolpracowal z skquery na 1.8.8
Kormic odpowiedział(a) na JaTuTylkoYT pytanie w Pytania i problemy
Popróbuj z tą wersją: http://www.mediafire.com/file/sagsuiue38i0y99/SkQueryLime.jar/file Jeżeli nie zadziała, podaj wersję Skripta, wersję serwera oraz silnik serwera. Podaj również błędy pokazywane w konsoli. -
Proszę. command /1stone: trigger: if player's balance is less than 10: send "&cNie posiadasz wystarczająco dużo gotówki!" to player stop give player 1 stone remove 10 from player's balance
-
Wystarczy, że przesuniesz linijki od 7 do 11 o dwa wcięcia w prawo, wtedy warn zniknie.
-
1. Jeżeli ustawiasz wiele slotów jako ten sam przedmiot, użyj wtedy pętli zamiast ustawiać je pojedynczo lub jako slotów użyj zbioru (listy) liczb. set player's current inventory's slot (integers between 0 and 8) to stone loop 9 times: set player's current inventory's slot (loop-number - 1) to stone # loop-number w pętli odtwarzającej się daną ilość razy oznacza który raz odtwarza się ta pętla (za pierwszym razem będzie to 1, dlatego odejmujemy od tego 1, co nam daje slot 0) 2. Nie musisz używać wyrażenia 'clicked slot' jako tekstu. Możesz je po prostu porównać do liczby lub zbioru liczb: if clicked slot is 3: if clicked slot is between 0 and 8: 3. Skrypt nie działa poprawnie dlatego, że źle zrobiłeś wcięcia linijek w evencie 'on inventory click'.
-
Cały internet? ... if block under event-block is iron block:
-
Proszę. on right click: player's tool's type is ender pearl "%region at player%" contains "spawn" cancel event
-
W ten sposób: if clicked entity's name is "jakaś_nazwa": # Dalszy kod Mam nadzieję, że nie masz zamiaru mnie pytać o każdą kolejną linijkę...
-
SkArmorEvent - event zakładania i zdejmowania zbroi w Skript
Kormic odpowiedział(a) na Kormic temat w Promowane skrypty
Drogi przyjacielu, prosiłbym uprzednio o przeczytanie tego co napisałem w poście (dokładniej fragment "Komu może przydać się ten skrypt?"). Inaczej to ujmę. Skrypt przyda się głównie osobom, które mają serwer postawiony na Spigot'cie.- 12 odpowiedzi
-
- własny event
- armor event
-
(i 2 więcej)
Oznaczone tagami:
-
Używasz eventu 'on right click on villager', sprawdzasz przykładowo jego nazwę, jeżeli jest to ta konkretna nazwa, otwierasz graczowi GUI i ustawiasz odpowiednio sloty.
-
zbroja SkArmorEvent - event zakładania i zdejmowania zbroi w Skript
Kormic opublikował(a) temat w Promowane skrypty
SkArmorEvent Witam serdecznie wszystkich skrypterów, chciałbym wam zaprezentować już drugą moją publiczną pracę, czyli skrypt dodający dwa eventy - jeden wywołujący się przy zakładaniu zbroi, a drugi przy zdejmowaniu zbroi. Cechy: Możliwość nasłuchiwania do dwóch eventów: - przy zakładaniu zbroi - przy zdejmowaniu zbroi Dodatkowo: Możliwość anulowania (cancelowania) obu eventów w celu blokady zakładania/zdejmowania zbroi. W razie potrzeby można wywołać te eventy w dowolnym kodzie, omówię to w dalszej części postu. Wymagania: - Skript min. 2.5 (zalecany 2.5.3) - skript-reflect (zalecany 2.1.0) Użycie: W mojej ocenie nie ma tutaj nad czym się rozwodzić, więc przejdę do rzeczy. Tak jak napisałem wyżej, skrypt dodaje 2 eventy. Tutaj szybko dla niewtajemniczonych omówię co oznacza dana rzecz w składni: - [ ] oznacza opcjonalność - | oznacza lub - ( ) oznacza wybór jednego spośród kilku elementów Pierwszy to 'on skae armor equip'. Jego składnia wygląda następująco: sk(ae|ArmorEvent) armo[u]r (equip|wear) Drugi event natomiast to 'on skae armor unequip'. Składnia niemalże niczym się nie różni od pierwszego eventu poza przedrostkiem 'un'. sk(ae|ArmorEvent) armo[u]r un(equip|wear) Oczywiście przed dwoma eventami możemy tradycyjnie zastosować 'on', ale nie jest to obowiązkowe. on skae armour equip: # Twój dalszy kod # Lub: skae armour equip: # Twój dalszy kod Wartości do pobrania w evencie: W evencie do dyspozycji mamy dwie wartości: - pierwsza to 'player' (bądź event-player), reprezentuje gracza, który nałożył zbroję - druga to 'item' (bądź event-item), reprezentuje nałożony, bądź zdjęty element zbroi Przykłady użycia: # 1. on skae armour wear: if event-item's name is "&aDobry Helm": send "&aNałożyłeś dobry hełm!" to event-player # 2. skArmorEvent armor unequip: send "&aŚciągnąłeś &6%item%&a!" to player Anulowanie eventu: Event jak najbardziej można anulować za pomocą zwykłego 'cancel event'. Przykłady: # 1. on skae armor equip: cancel event send "&cNie możesz założyć zbroi!" # 2. on skArmorEvent armor unequip: cancel event send "&cNie możesz ściągnąć zbroi!" Wywoływanie eventu: Miałem powiedzieć kilka słów na temat wywoływania tych eventów w dowolnym kodzie, więc teraz to zrobię. Aby poprawnie wywołać event w naszym kodzie, musimy ustawić naszego gracza oraz element zbroi do listy. set {_l::player} to player set {_l::item} to event-item Następnie używamy linijki wywołującej event. call event (custom event "onArmorEquip" with {_l::*}) Tutaj ukazuje nam się "onArmorEquip" i jest to nazwa eventu 'on armor equip', której używamy przy wywoływaniu eventu. W przypadku eventu 'on armor unequip' będzie to "onArmorUnequip". Podsumowując, za pomocą tych 3 linijek możemy w naszym kodzie użyć te eventy kiedykolwiek chcemy. A kiedy może to się przydać? Cóż, tutaj podam przykład: Mamy prostą komendę ustawiającą hełm gracza na diamentowy hełmet. Skrypt domyślnie obsługuje jedynie ręczne nakładanie hełmu przez gracza, więc wtedy właśnie wywołujemy event "onArmorEquip", przekazując przy tym odpowiednie wartości. Komu może przydać się ten skrypt? - osobom, które mają postawiony serwer na silniku Spigot - jest dobrą alternatywą dla przebywania na starszych wersjach ze względu na SharpSK - zamiennik dla eventu 'on armor change' ze względu na dostępność dla serwerów postawionych na silniku PaperSpigot (oraz Tuinity) oraz ze względu na to, że ten event pozwala jedynie na przechwycenie nowo nałożonego elementu zbroi, nie zdejmowanego. Dodatkowo SkArmorEvent pozwala na anulowanie eventu, co w przypadku wcześniej wspomnianego skriptowego eventu jest niemożliwe. Pobieranie: https://code.skript.pl/aFdMxpEb - v. 1.0 https://code.skript.pl/p6ChYMtK - v. 1.1 https://code.skript.pl/UYZsuVif - v. 1.2 (1.9.4 - 1.13.1) https://code.skript.pl/41MK80It - v. 1.2 (1.13.2+) https://code.skript.pl/ynOMxBFf - v. 1.2.1 (1.9.4 - 1.13.1) https://code.skript.pl/12ck83eI - v. 1.2.1 (1.13.2+) Rozwiązywanie problemów: W razie znalezienia jakichkolwiek błędów w skrypcie (miejąc uprzednio na uwadze wymagania skryptu) prosiłbym o dokładne opisanie ich w sekcji komentarzy. Prosiłbym również o podanie wersji serwera, silnika serwera, wersji Skripta oraz listy dodatków do Skripta. Propozycje: Co prawda nie myślę nad dalszym rozwojem skryptu, aczkolwiek jeżeli ktoś zaproponuje coś ciekawego, przemyślę to Dziękuję bardzo za przeczytanie, życzę miłej zabawy ze skryptem.- 12 odpowiedzi
-
- własny event
- armor event
-
(i 2 więcej)
Oznaczone tagami:
-
format slot kilka argumentów w format slot
Kormic odpowiedział(a) na PolsatGraniePL pytanie w Pytania i problemy
Możesz spróbować z lambdą, która jest również zawarta w SkQuery. Tutaj masz to dokładnie opisane: -
Zablokowanie stawiania bloku na terenie bez gildii
Kormic odpowiedział(a) na OneXakaGracu pytanie w Pytania i problemy
Używasz w tym celu wyrażenia 'guild at'. if guild at event-block's location is not set: # Twój kod wraz z anulowaniem eventu -
Proszę, skrypt nietestowany. on right click: player's tool is chest named "PREZENT" chance of 5%: drop 1 diamond sword at player chance of 5%: drop (random integer between 2 and 5) of diamonds at player chance of 5%: drop (random integer between 1 and 3) of emeralds at player chance of 5%: drop 4 nametags at player chance of 5%: drop 5 cooked beef at player chance of 5%: drop 64 cobblestone at player broadcast "&6%player% &fotworzył prezent!" on place: player's tool is chest named "PREZENT" cancel event command /prezent: executable by: players cooldown: 6 hours cooldown message: &cNie możesz jeszcze odebrać prezentów! cooldown storage: {cooldown::prezent::%player%} trigger: give player 3 chest named "PREZENT" send "&aOtrzymałeś 3 prezenty!" to player command /giveprezent: trigger: give player 3 chest named "PREZENT" send "&aOtrzymałeś 3 prezenty!" to player command /prezentinfo: trigger: send "twoja" to sender send "informacja" to sender send "o" to sender send "prezentach" to sender
-
Mógłbyś pokazać w jaki sposób zmienia kolejność? Dzięki temu będzie łatwiej znaleźć problem.
-
Jeżeli już to prędzej dałbym ten efekt, syntax jest nieco bardziej rozbudowany, co pozwala na łatwiejsze zorientowanie się w tym. https://docs.skunity.com/syntax/search/file move
- 4 odpowiedzi
-
Tutaj możesz spróbować z SkQuery. Z tego co pamiętam to kiedyś próbowałem tej metody i nie zadziałała, ale spróbować nie zaszkodzi. # Daj to gdzieś na początek skryptu: script options: $ use permissions # Następnie dodajesz permisję w kodzie: add "jakas.permisja" to player's permissions Tutaj wystarczy sprawdzać czy zmienna jest ustawiona, czy też nie. if {tkolo::%player%} is not set: # Twój kod set {tkolo::%player%} to true else: # Twój drugi kod (wiadomość, że gracz nie może zakupić efektu)
-
Problem leży w tym. Przejrzyj swoje skrypty i sprawdź które używają jsona (np. na czacie).
-
Po pierwsze, niepotrzebnie używasz dwukrotnie tego samego eventu. Zresztą, ten drugi event jest całkowicie zbędny, gdyż jego rolę wypełnia już pierwszy event. Po drugie, zamiast używać komend poprzez konsolę, zaopatrz się w plugin Vault i zmieniaj stan konta gracza poprzez czyste, skriptowe efekty. remove 15000 from player's balance Po trzecie, nie wiem skąd masz efekt 'add permission'. Dodam, że jest w nim literówka, gdyż 's' powinno być podwojone. Po czwarte, z tego co widzę, to gracz nie powinien móc zakupić drugi raz tego efektu. Dodam, że jeżeli ustawiasz zmienne na 0 i 1 to lepiej nie ustawiać zmiennej lub ustawiać na 'true'. Mam nadzieję, że zmienna {tkolo.%player%} jest jakkolwiek ustawiana wcześniej w kodzie. Należy pamiętać, że 0 już jest pewną wartością, więc jeżeli zmienna nie będzie ustawiona, to w takim wypadku nie będzie równa ani 0, ani 1. Po piąte, w przypadku zmiennych, których będzie (najprościej ujmując) dużo, to w takim wypadku lepiej użyć list zmiennych, tzn. zamienić kropkę w nazwie zmiennej na podwójny dwukropek ("::"). Dzięki takiemu zabiegowi będziesz mógł później o wiele łatwiej manipulować wszystkimi zmiennymi. {tkolo.%player%} - żeby wyczyścić wszystkie takie zmienne od wszystkich graczy, musiałbyś zapętlić wszystkich graczy, którzy kiedykolwiek byli na serwerze {tkolo::%player%} - tutaj możesz to wyczyścić w bardzo prosty sposób: clear {tkolo::*} - gwiazdka oznacza, że może być tam cokolwiek, liczy się jedynie, że zmienna będzie zaczynała się na "tkolo::"
-
Możliwe, że z tym eventem w Skript'cie coś jest nie tak. import: org.bukkit.event.player.PlayerInteractEvent org.bukkit.event.block.Action org.bukkit.Material on PlayerInteractEvent: if event.getAction() == Action.PHYSICAL: if event.getClickedBlock().getType() == Material.STONE_PRESSURE_PLATE: broadcast "Test" Spróbujemy jeszcze z Javą. Wymagany dodatek skript-reflect. Spróbuj wejść na dębową płytkę naciskową. Jeżeli by coś nie zadziałało, tutaj masz Material wszystkich płytek naciskowych: Podmieniasz to na końcu przedostatniej linijki, raczej się w tym połapiesz.
-
Zrób taki prosty kod i sprawdź czy zostanie wysłany broadcast na czacie. on step on pressure plate: broadcast "Test"
-
Ten event powinien ci pomóc w rozwiązaniu problemu: https://skriptlang.github.io/Skript/events.html#pressure_plate_trip Poprzez event-block powinieneś być w stanie przechwycić wciśniętą płytkę naciskową.
-
Napisałeś, że mogą to być również skrypty, więc powiedziałem ci jak je znaleźć.
-
Użyj forumowej wyszukiwarki, w 30 sekund znalazłem co najmniej 3 skrypty na gildie, te imitujące Essentials również łatwo znaleźć.
-
Trafiony, zatopiony. knugi, żyjesz tam?
-
Wrzucasz przykładowo na Dropbox plik z rozszerzeniem .zip i o ile dobrze pamiętam to zmieniasz w linku "dl=0" na "dl=1".
