-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
W takim razie mam dwa sposoby. Jeżeli pierwszy nie zadziała, użyj drugiego. Przy pierwszym wymagany tylko Skript, przy drugim TuSKe. # 1. command /statyw: trigger: open brewing stand inventory to player # 2. command /statyw: trigger: open brewer inventory to player with name "Statyw" Co do pierwszego, mógłbyś również mieć fizycznie gdzieś na serwerze statyw alchemiczny, a następnie mógłbyś otwierać graczom jego ekwipunek. command /statyw: trigger: open (inventory of block at location at (100, 100, 100) in world "world") to player
-
Tak, z pomocą dodatku skript-reflect jest to możliwe. import: org.bukkit.event.inventory.PrepareItemCraftEvent on PrepareItemCraftEvent: event.getRecipe().getResult() is tnt set {_lista::*} to event.getInventory().getMatrix() loop {_lista::*}: loop-value is not command block named "Sztabka srebra" stop event.getInventory().setResult({_silverpickaxe}) Pewnie trzeba będzie utworzyć nowy obiekt ItemStack, ale na razie spróbuj z tym kodem.
-
Wersja 1.5.2?! Wybacz, w takim razie nie zrobisz tego poprzez Skript (a na pewno nie aktualnymi metodami).
-
To ma być w końcu w Skript czy w ChestCommands?
-
1. Nie używaj numerycznych ID (np. 1, 35, 4, itd.), użyj aliasów (np. diamond block, oak log, itd.). 2. Używaj list zmiennych. Tutaj wyjaśniłem dlaczego są lepsze od zwykłych zmiennych. Szkoda, że nie podałeś błędu. Naprawdę szkoda.
-
Co nie działa? Podaj proszę: wersję serwera silnik serwera wersję Skripta listę dodatków do Skripta wraz z wersjami błędy przy przeładowaniu skryptu błędy w konsoli
-
W takim razie coś ci koliduje z FunnyGuilds. Włącz serwer z samym FunnyGuilds i zobacz czy problem nadal występuje. Jeżeli tak, masz problem z FunnyGuilds (możliwe, że wymaga aktualizacji). Jeżeli nie, inny plugin odpowiada za problem.
-
Musisz mieć PlaceholderAPI, za pomocą którego używasz placeholderu z FunnyGuilds (tutaj lista placeholderów) i ustawiasz go w prefixie gracza. Nie wiem gdzie ty to chcesz ustawić, zakładam, że na czacie.
-
Pewnie. on join: teleport player to location at (100, 100, 100) in world "world"
-
W takim wypadku uznaję to za zlecenie. options: delay: 60 seconds function translateTimespan(t: timespan) :: text: set {_t} to "%{_t}%" set {_eng::*} to "years", "year", "months", "month", "days", "day", "hours", "hour", "minutes", "minute", "seconds", "second" and " and " set {_pol::*} to "lat", "rok", "miesięcy", "miesiąc", "dni", "dzień", "godzin", "godzinę", "minut", "minutę", "sekund", "sekundę" and ", " loop {_eng::*}: replace all loop-value with {_pol::%loop-index%} in {_t} return {_t} command /ftgive [<text>]: permission: admin.testujemy permission message: po[ciach]any jestes... trigger: if player is in world "hollow": give player blaze rod named "FireBall Thrower" send "&8&l> &cOtrzymales 1x FireBall Thrower." else: send "&cMusisz byc na arenie." on rightclick holding a blaze rod: name of player's tool is "FireBall Thrower" {cooldownFireballThrower::%player%} is set: difference between {cooldownFireballThrower::%player%} and now is less than {@delay} set {_t} to {cooldownFireballThrower::%player%} add {@delay} to {_t} send "&cMożesz ponownie wystrzelić kulę ognia za &6%translateTimespan(difference between {_t} and now)%" to player stop set {cooldownFireballThrower::%player%} to now shoot a fireball from player
-
Proszę. Na przyszłość pamiętaj, że zlecenia składamy w dziale "Skript > Zlecenia". on right click on anvil: cancel event open chest inventory with 3 rows named "&6&lGUI" to player set slot 13 of player's current inventory to ender pearl named "&aWarpy" on inventory click: name of player's current inventory is "&6&lGUI" clicked inventory is not player's inventory cancel event if clicked slot is 13: close player's inventory execute player command "warp"
-
Mekka strudzonych skrypterów
-
No właśnie nie zadziała to z powodu, o którym napisałem wyżej. Już pomijam pewne błędy w twoim skrypcie takie jak: anulowanie eventu 'on inventory open' - jest to event client-side'owy, gracz przesyła jedynie informację do serwera, że zamknął inventory, serwer tutaj nie ma jakiegokolwiek wpływu na te zdarzenie warunek w trzeciej linijce jest dziwny, jak już to to powinno być 'if player's current inventory is not player's inventory', tutaj szczerze powinieneś sprawdzać czy 'type of player's current inventory' to 'crafting table inventory' - w ten sposób wiemy, że gracz ma otwarty swój ekwipunek
-
Tak, już znalazłem przyczynę. Wybacz, jest późna pora, ciężko się skupić na robocie. W skrócie problem polegał na tym, że zmienne z zabójstwami zombie i szkieletów były nieustawione, a nic nie jest mniejsze od 10, gdyż nie jest liczbą, a więc warunek sprawdzający ilość zabójstw w ogóle się nie spełniał.
-
Problemem tutaj jest linijka nr 5, nie powinno jej w ogóle być. Blokuje ona cały czat. Dodam, że 3. linijka od końca powinna być przesunięta o jeden tabulator w prawo.
-
Można zrobić to z pomocą powyższych kodów. Zaraz po sprawdzaniu 'type of clicked inventory' w linijce pod nią wstawiamy 'cancel event'. W ten sposób nie będzie można robić w tym craftingu. Co do ustawiania slotu, zrobisz to w następujący sposób: set slot 0 of player's current inventory to stone Musisz być tutaj pewien, że gracz ma otwarty swój ekwipunek oraz że nie jest w trybie kreatywnym. Problem jest tylko jeden - w jakim evencie (przy jakim zdarzeniu) chcesz to ustawić?
-
Dziwne. Wyczyściłeś zmienne i spróbowałeś jeszcze raz?
-
Które zadanie? Spróbuj wyczyścić sobie zmienne i zacznij od nowa. command /wyczysc: trigger: clear {numerZadania::%player%} clear {zabiteZombieTest::%player%} clear {zabiteSzkieletyTest::%player%}
-
Proszę, skrypt nietestowany.
-
Pewnie. on inventory click: type of clicked inventory is crafting table inventory send "To jest slot nr %index of clicked slot%!" to player Możesz sobie również w zależności od klikniętego slotu wykonywać inną czynność. on inventory click: type of clicked inventory is crafting table inventory if clicked slot is 0: send "Tekst nr 1" to player else if clicked slot is 1: send "Tekst nr 2" to player else if clicked slot is 2: send "Tekst nr 3" to player else if clicked slot is 3: send "Tekst nr 4" to player
-
W takim razie proszę. command /obierz 13498275: trigger: {skrzynkaOdbiór::%player%} is set: send "&cJuż odebrałeś tą nagrodę!" to player stop if player has enough space for 10 of {@pcase}: give player 10 of {@pcase} set {skrzynkaOdbiór::%player%} to true send "&aPomyślnie odebrano BdCase x10!" to player else: send "&cNie masz miejsca w ekwipunku!" to player command /nagroda-odblokuj: permission: n.un trigger: clear {skrzynkaOdbiór::*} send "&aOdblokowałeś BdCase!" to sender
-
Niestety nie da się napisać tego skryptu, gdyż event 'on inventory open' jest wywoływany jedynie w przypadku otwarcia inwentarza jakiegoś bloku (skrzynka, kowadło, stół rzemieślniczy, itd.) (lub fałszywej skrzynki, czyli GUI). Nie jest wywoływany przy otwarciu ekwipunku gracza. Jest to niestety prawie całkowicie client-side'owe. Prawie, gdyż jest pakiet przechwytujący to ("PacketPlayInClientCommand"). Myślę, że można by również tutaj pokombinować z osiągnięciami. Co do ustawiania slotów w craftingu, jest to możliwe. Tak samo jest już możliwe wykrycie zamykania ekwipunku gracza.
-
Proszę. on inventory click: type of clicked inventory is crafting table inventory cancel event
-
No dobrze, ale co te odblokowanie ma dać? Wszyscy gracze mogą jeszcze raz odebrać, tak?
-
Co do tej komendy i robienia tylko raz, mógłbyś to dokładniej wyjaśnić?
