-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
Poszukałem na Spigot'cie odpowiedniej metody i znalazłem coś interesującego: ChatColor.getLastColors(String input); Oczywiście będzie wymagany dodatek wspierający składnię z Javy, czyli skript-mirror/skript-reflect (raczej polecam ten drugi). Nie jestem pewien działania tego kodu, nie wiem w jaki sposób zwróci ten kolor. import: org.bukkit.ChatColor on chat: set {_c} to ChatColor.getLastColors(message); replace all "XD" with "&aXD%{_c}%" in message
-
W takim razie przechwytywanie koloru z wiadomości nie wchodzi w grę. Może spróbuj: on chat: if player is not op: stop send "%chat format%" to player Całkiem możliwe, że chat format będzie zawierał kolor i z niego będzie można go przechwycić.
-
Tak jak mówiłem, musisz przechwycić kolor od wiadomości do zmiennej, a później użyć go po "&aXD", przykład: on chat: if message doesn't contain "XD": stop set {_c} to first 2 characters of message replace all "XD" with colored "&aXD%{_c}%" in message To nic nie da, gdyż '&r' odpowiada za usuwanie wszelkiego formatowania tekstu (kolor, pogrubienie, kursywa, podkreślenie itd.).
-
W takim razie: on damage: if victim is player: stop if final damage > victim's health: stop send action bar "&c%victim's health%&7/&7c%victim's max health%" to attacker
-
Czyli jeśli dobrze rozumiem, to ma się wyświetlać na action barze, tak?
-
on spawn: if event-entity is monster: set display name of event-entity to "&6%type of event-entity% &c%event-entity's health%&7/&7c%event-entity's max health%" else: set display name of event-entity to "&a%type of event-entity% &c%event-entity's health%&7/&7c%event-entity's max health%" on damage: if victim is player: stop if final damage > victim's health: stop if victim is monster: set display name of victim to "&6%type of victim% &c%victim's health%&7/&7c%victim's max health%" else: set display name of victim to "&a%type of victim% &c%victim's health%&7/&7c%victim's max health%" Proszę. EDIT: Mała poprawka.
-
Powiedz mi, co to zmienia, że jest porzucony? To jest dodatek mający za zadanie jedynie przechwycić placeholdery i tyle. To nie jest plugin, który zawiera dziesiątki nowych rzeczy do serwera, które muszą być regularnie aktualizowane. Taki plugin robisz jeden raz i tyle. Podobna sytuacja jest z rozszerzeniem do PlaceholderAPI o nazwie "PAPI - Skript expansion". Nie rozumiem dlaczego porzucony plugin od razu ma być synonimem słabego pluginu.
-
Do tego będzie potrzebny FunnySkAddon. Niestety dokumentacja jest niedostępna, a wyrażeń nie pamiętam, więc nie jestem w stanie ci pomóc. EDIT: Tutaj strona dodatku, może to ci jakoś pomoże. https://github.com/MLGroupMC/FunnySkAddon
-
generator Generator mobow bukkitowych w skripcie?
Kormic odpowiedział(a) na Cinu2421 pytanie w Pytania i problemy
Zrobienie tego poprzez gamerule byłoby dobre, lecz autor chce zablokować jedynie spawn potworów, a ponieważ gamerule doMobSpawning wpływa na naturalny spawn wszystkich mobów, to to rozwiązanie niestety się nie sprawdzi. -
Skrypt na nadawanie rang tabliczka
Kormic odpowiedział(a) na koncuwka69 pytanie w Pytania i problemy
Co konfiguracja ma do rzeczy? To, że jest nieco trudniejsza nie jest równoznaczne z mniejszą funkcjonalnością. PEX nie ma aż takiej ciężkiej konfiguracji, wystarczy trochę się pobawić, poszperać i już jesteś w stanie mniej więcej się zorientować. Chciałbym dodać, iż nadal odnoszę wrażenie, że uważasz mnie za fanatyka PEXa. Napisałem, że ten plugin nie jest bez wad, ale większość z nich da się uniknąć. Chcę jedynie cię uświadomić, że wbrew twoim przekonaniom PEX nie jest syfem. Zauważ, że nigdzie nie napisałem, że LuckPerms jest złym pluginem, a ty widocznie zarzucasz mi, że jednak coś takiego napisałem wyżej w tym wątku. -
Lepiej późno niż wcale, zawsze jest czas na poprawę i bardzo dobrze, że wyciągnąłeś rękę jako pierwszy, to jest oznaka bycia dojrzałym. Nie ma również co się nad sobą użalać, ludzie popełniają błędy i czy się chce, czy nie, trzeba do tego przywyknąć Mam nadzieję, że sytuacja na shoutboxie w końcu ucichnie, bo końca tej kłótni nie widać, a to co niektórzy tam wypisują to aż człowiek za głowę się łapie. Liczę również na to, że gnomq przemyśli swoje zachowanie i zrobi rachunek sumienia, gdyż niejednokrotnie dolewał oliwy do ognia. Właściwie wszyscy zamieszani w tę wielką kłótnię powinni przemyśleć co źle zrobili i za co należy przeprosić. Wiem, że z tobą miałem nie po drodze, ale mimo wszystko myślę, że będzie dobrze. Przepraszam za dawne moje wybryki na Discordzie i mam nadzieję, że mimo wszystko przyjmiesz moje przeprosiny.
-
Nie możesz napisać do SebxteRa? Z tego co widzę, to był ostatnio wczoraj na forum, więc wpada tutaj regularnie.
-
Jeśli nie chcesz tych debug wiadomości, to po prostu usuń wszystkie 'send' i tyle. on chat: set {_lista::*} to message split at " " if size of {_lista::*} is less than 2: stop if number of uppercase characters in message / length of message < 0.8: stop set message to "%message%" in lowercase
-
Przecież to jest 1 wyraz, wiadomość musi się składać co najmniej z dwóch wyrazów. Przy okazji przeczytaj mój edytowany post wyżej.
-
W takim wypadku zawsze pomaga stary, dobry debugging. on chat: set {_lista::*} to message split at " " if player is op: send "%{_lista::*}%" to player if size of {_lista::*} is less than 2: stop if player is op: send "1" to player if number of uppercase characters in message / length of message < 0.8: stop if player is op: send "2" to player set message to "%message%" in lowercase if player is op: send "3" to player Sprawdź co wyśle ci na czacie. Spokojnie, tylko graczom z op będzie wyświetlało wiadomości. Podejrzewam, że może pojawić się błąd, iż po wysłaniu tych wiadomości już nie można ustawić message'a. W takim wypadku daj zamiast linijki nr 13 takie coś: if player is op: send "%message%" in lowercase
-
Spróbuj z tym, po raz pierwszy robię tego typu skrypt. Zrobiłem, że jeżeli ilość wielkich liter w wiadomości przekracza bądź jest równa 80%, to zamienia wiadomość na małe litery. on chat: set {_lista::*} to message split at " " if size of {_lista::*} is less than 2: stop if number of uppercase characters in message / length of message < 0.8: stop set message to "%message%" in lowercase
-
Czyli rozumiem, że ma sprawdzać czy wiadomość składa się z co najmniej dwóch wyrazów i jeśli tak, to sprawdza czy nie jest ono w 100% z dużych liter, dobrze zrozumiałem?
-
Po prostu ma dzielić całą wiadomość na wyrazy i sprawdzać każdy, czy nie jest w 100% z wielkich liter, tak?
-
A nie przypadkiem "nie będzie mógł"?
-
Zrobiłem coś takiego, zobacz czy zadziała oraz czy to miałeś na myśli. W linijce nr 25 dałem wysyłany typ zwierzęcia, jeżeli nie zadziała, to zamień końcowy fragment kodu na porównywanie tej zmiennej do pig oraz horse (nie w stringu). command /golem: trigger: loop entities in radius 30 around player: if loop-entity is not a pig or a horse: continue set block at location of loop-entity to mossy cobblestone add location of block at loop-entity to {ENT.BLOK::*} set {ENT.BLOK.MOBTYPE::%location of block at loop-entity%} to loop-entity's type teleport loop-entity to location at (x-loc of loop-entity, -100, z-loc of loop-entity) in loop-entity's world on left click: if clicked block is not set: stop if {ENT.BLOK::*} doesn't contain location of clicked block: stop broadcast "&7W tym kamieniu zostalo zaklete zwierze: &6%{ENT.BLOK.MOBTYPE::%location of clicked block%}%" broadcast "&aKliknij PPM, aby je odczarowac!" on right click on mossy cobblestone: if {ENT.BLOK::*} doesn't contain location of clicked block: stop set clicked block to air broadcast "&7Odczarowales zwierze: &a%{ENT.BLOK.MOBTYPE::%location of clicked block%}%" remove location of clicked block from {ENT.BLOK::*} broadcast "%{ENT.BLOK.MOBTYPE::%location of clicked block%}%" spawn {ENT.BLOK.MOBTYPE::%location of clicked block%} at location of clicked block clear {ENT.BLOK.MOBTYPE::%location of clicked block%}
-
generator Generator mobow bukkitowych w skripcie?
Kormic odpowiedział(a) na Cinu2421 pytanie w Pytania i problemy
Po prostu zrób tak i będzie okej. on spawn: if event-entity is not a monster: stop cancel event Jeżeli cancelowanie eventu 'on any move' nie wywala serwera (używanie tego eventu już samo w sobie jest złą praktyką), to tym bardziej cancelowanie 'on spawn' nie wywali serwera. -
Po prostu wyjaśniłem koledze, że jest to prawie niemożliwe do zrobienia w Skript'cie. Nie mam zamiaru robić czegoś tak lagującego jak zapętlanie wszystkich graczy co chwilę i zapisywanie im wszystkim odrębnie zmiennych. @LukaszC Masz dwa wyjścia: 1. Użyjesz statystyk z Vanilla Minecraft, które są naliczane każdemu graczowi (możesz poszukać jakiegoś pseudo kodu, który przechwytuje statystyki gracza). 2. Skorzystasz z placeholderów z pomocą PAPI (Placeholder API) i użyjesz dodatku Ersatz, który pozwoli ci użyć ów placeholderów w skrypcie tworzącym GUI.
-
Z tego co mi wiadomo, to najnowsza wersja wspierana przez FunnyGuilds to 1.15, więc albo musisz zejść z wersją, albo poszukać zamiennika.
-
Połowa rzeczy rzeczy jest do zrobienia, natomiast druga połowa będzie ciężka do realizacji. Przebyty dystans będzie dość ciężki do naliczania (należałoby zapętlać co sekundę wszystkich graczy), naliczanie skoków w Skript'cie wymaga PaperSpigota, przepłynięty dystans (jak miałby być naliczany? płynięciem łódką czy wpław?).
-
Musiałbyś do jakiejś zmiennej zapisać obecny tag gracza (tag gildii) i później ustawiłbyś tag gracza na coś takiego (przykład jedynie dla zobrazowania): set {_tag} to player's tag set player's tag to "LIDER %{_tag}%"
