-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
Dlatego, że zwykłe rejestrowanie receptury zwraca uwagę jedynie na typ składnika, nie na jego nazwę itd. Jeżeli chcesz mieć własną recepturę, w której trzeba wykorzystać składniki posiadające nazwę, enchanty, lore, itd., musisz użyć eventu 'on inventory click' i po upewnieniu się, że typ klikniętego inventory to 'workbench inventory', możesz sprawdzać w nim kolejne sloty (sloty 0-8). Jeżeli wszystkie się zgadzają, możesz ustawić slot z rezultatem (będzie to slot nr 9). Po kliknięciu na slot z rezultatem musisz zmniejszać ilość wszystkich składników w matrixie (sloty 0-8) o 1.
-
Podejrzewam, że nikt ci tego nie napisze bez odpowiedniej zapłaty za wykonanie skryptu. Na twoim miejscu skorzystałbym z gotowych rozwiązań takich jak chociażby ProtectionStones.
-
Proszę. W komendzie ustaw sobie wymaganą przez ciebie permisję. Jeżeli ma jej nie być, możesz usunąć linijkę z 'permission'. every 1 minute: loop all players: loop 41 times: set {backupInventory::%loop-player%::%loop-number - 1%} to slot (loop-number - 1) of loop-player's inventory command /backup [<player>]: permission: permisja.permisja trigger: arg-1 is not set: send "&cPodaj gracza!" to sender stop {backupInventory::%arg-1%::*} is not set: send "&cTen gracz nie posiada zapisu ekwipunku!" to player stop loop 41 times: set slot (loop-number - 1) of arg-1's inventory to {backupInventory::%arg-1%::%loop-number - 1%} send "&aGracz &6%arg-1% &aotrzymał swój ostatnio zapisany ekwipunek!" to sender
-
Jakiego sidebar? Jakiś z pluginu czy w Skript'cie? Jeżeli chcesz otrzymać godzinę reprezentującą nasz czas strefowy, musisz ustawić do jakiejś zmiennej 'now', następnie dodajesz do niej godzinę i dopiero wtedy używasz 'formatted as'.
-
Pokaż w takim razie twój cały kod i wyślij sformatowaną godzinę poprzez prostą linijkę. send "%{_}%"
-
Pokaż jak wygląda sformatowana godzina.
-
Proszę. on explosion prime: event-entity is creeper cancel event
-
Proszę. on death of player: keep inventory
-
Proszę. Powinieneś mieć gdzieś jeszcze w twoim kodzie pętlę zmniejszającą tę zmienną co sekundę. Możesz się jej już pozbyć. command /live [<text>]: permission: CookieCmd.live permission message: &8» &cNie masz dostepu do: &7(CookieCmd.live) trigger: arg 1 is not set: send "&8» &cPrawidlowe uzycie &7(/live wiadomosc)" stop broadcast "&8[&c&lLIVE&8] &8» &6%arg 1%"
-
Najprościej byłoby to sprawdzić poprzez typ 'player's current inventory' i porównać do 'crafting table inventory'. Niestety wymaga to Skripta 2.2-dev32+, a ty posiadasz Skripta 2.2 Fixes V8b. Masz w takim razie kilka wyjść: pobrać Skripta 2.2-dev36 lub 2.2-dev37c. pobrać Skripta 2.5.3 forku Matocolotoe (nie ma się czego obawiać, jest specjalnie przeznaczony dla wersji 1.8) zaktualizować wersję serwera minimum do 1.9.4 i pobrać Skripta 2.5.3 użyć dodatku skript-mirror, bądź skript-reflect Co do ostatniego, możesz to zrobić w następujący sposób: # Sekcja importu: import: org.bukkit.event.inventory.InventoryType # Warunek: if event.getPlayer().getOpenInventory().getType() == InventoryType.CRAFTING: Import wrzucasz sobie gdzieś na górę kodu, a warunek możesz użyć w każdym evencie, w którym można przechwycić playera (przykładowo w 'on chat' możesz go spokojnie przechwycić, natomiast w 'on item spawn' już rzecz jasna go nie przechwycisz).
-
an entity cannot be saved i.e contents of the variable
Kormic odpowiedział(a) na pringles18 pytanie w Pytania i problemy
Słuszna uwaga, dlatego też musisz sobie zrobić zmienną, która będzie kontrolowała czy już jest odliczanie na bossbarze. Możesz to również rozwiązać poprzez ustawianie w pętli zmiennej lokalnej jako tej zmiennej z czasem. Następnie sprawdzamy w pętli przy każdym jej przejściu (iteracji) czy zmienna lokalna jest mniejsza od zmiennej z czasem. Jeżeli tak, przerywamy pętlę. Jeżeli użyłbyś zmiennych z nazwami graczy, nie byłoby tych warnów. Wystarczyłoby następnie przy potrzebie przechwycenia tych graczy parse'ować ich nazwy na offline playera. -
an entity cannot be saved i.e contents of the variable
Kormic odpowiedział(a) na pringles18 pytanie w Pytania i problemy
Wystarczyłoby użyć pętli 'loop 30 times' w której zmniejszamy wartość bossbara i odczekujemy 1 sekundę, po czym usuwamy ten bossbar. Na YouTubie masz to pokazane w poradniku od Minehut, w którym pokazali jak tworzyć bossbary w SkRayFall. Zapisz po prostu w tych zmiennych 'attacker's name' i 'victim's name'. -
an entity cannot be saved i.e contents of the variable
Kormic odpowiedział(a) na pringles18 pytanie w Pytania i problemy
Cóż, kiedy ten błąd się pokazuje? Przy próbie pokazania boss baru? Sprawdź czy użycie SkRayFall 1.9.21 pomoże. EDIT: Co do zmiennych, czy spróbowałeś z nazwami graczy? -
an entity cannot be saved i.e contents of the variable
Kormic odpowiedział(a) na pringles18 pytanie w Pytania i problemy
Zmiana formatu zmiennych w niczym nie pomoże, nieważne czy to zwykła zmienna, czy tez element z listy zmiennych. Podaj: wersję serwera silnik serwera wersję Skripta listę dodatków do Skripta wraz z wersjami błędy w konsoli EDIT: @pringles18 W sumie jest prosty sposób, aby to obejść. Wystarczy zapisać nazwę attackera i victima. Attacker i victim i tak zwracają nazwę gracza, więc nie będzie zbyt wielkiej różnicy, będziesz musiał jedynie pamiętać o parse'owaniu nazwy gracza na gracza. -
an entity cannot be saved i.e contents of the variable
Kormic odpowiedział(a) na pringles18 pytanie w Pytania i problemy
1. Użyj eventu 'on damage of player'. 2. Usuń warunek sprawdzający victima. 3. Popraw warunek sprawdzający attackera na 'attacker is a player'. -
Jeżeli już miałbym to zrobić, nie bawiłbym się w żadne rangi i komendy, a użyłbym po prostu list zmiennych. Tak byłoby po prostu prościej.
-
Główny problem jest taki, że niemożliwym jest ustawianie slotów w GUI kowadła, gdyż nie pozwala na to standardowe API. Do tego potrzeba użycia NMS'ów, co jest cholernie żmudną robotą. Jeżeli ktoś chce się za to zabierać, albo musi użyć bezpośrednio NMS'ów, albo może skorzystać z gotowego API: https://github.com/WesJD/AnvilGUI. Co do ustawiania nazwy kowadła, byłoby to jedynie możliwe od wersji 1.14.
-
Dobra, po prostu weź sobie mój kod, nie zmieniaj wcięć w nim i zmień to, co tam potrzeba. Następnie powiedz co dokładnie należy poprawić, na przykład w formie listy.
-
Spójrz na mój kod: A teraz spójrz na twój kod: Widać różnicę w wytabowaniu kodu, nieprawdaż?
-
Proszę. on spawn: event-entity's entity type is rabbit or horse or cow cancel event Jeżeli nie zadziała: on spawn: event-entity is salt and pepper rabbit or brown rabbit or horse or cow cancel event EDIT: W jaki sposób wyłączyłeś zwierzęta?
-
Możliwość wywalenia "and", "," albo przetłumaczenia w Skript
Kormic odpowiedział(a) na RUDAZZ pytanie w Pytania i problemy
Poprawiłem nieco to, co napisałem wyżej. Źle zrobiłeś, gdyż musisz sobie ustawić do innej zmiennej tę listę. set {_t} to "%{beacony::*}%" Następnie używasz tego replace all na zmiennej {_t} i dopiero po tym wysyłasz zmienną {_t}. -
Właśnie źle zrobiłeś z tymi tabami. Powinieneś cofnąć linijki 22-29 o dwa znaki tabulacji.
-
Możliwość wywalenia "and", "," albo przetłumaczenia w Skript
Kormic odpowiedział(a) na RUDAZZ pytanie w Pytania i problemy
W linijce 25 masz wysyłanie beaconów, prawda? Zrób to, co napisałem (parse'uj listę na tekst, zrób to oczywiście na osobnej zmiennej, aby nie było płaczu o utratę wszystkich 'beaconów'), a następnie wykorzystaj efekt podrzucony przez Pana Marudę. -
Możliwość wywalenia "and", "," albo przetłumaczenia w Skript
Kormic odpowiedział(a) na RUDAZZ pytanie w Pytania i problemy
Jak się nie da jak się da? Ustaw całą listę jako tekst. set {_t::*} to "%{_t::*}%" A następnie użyj 'replace all'. -
Możesz, możesz. Sprawdzasz w evencie 'on inventory click' czy typ klikniętego inventory to 'workbench inventory' i następnie sprawdzasz po kolei wszystkie wymagane sloty są zajęte tymi przedmiotami. Jeżeli tak, ustawiasz slot nr 9 na ten przedmiot i przy kliknięciu na niego odejmujesz 1 z każdego z itemów będących składnikami receptury. Możesz również użyć dodatku skript-reflect (bądź skript-mirror), w którym importujesz event PrepareItemCraftEvent i następnie sprawdzasz typ slotów w matrixie. Tutaj przykład takiego kodu wykorzystującego event PrepareItemCraftEvent: Musisz sprawdzać typ składnika, czyli '[twój item]'s type'.
