-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
Poprawiłem skrypt, teraz wszystko powinno grać. Mimo wszystko odbieranie w pierwotnej wersji działało, jedynie podałem zły indeks litery, co powodowało, że otrzymywaliśmy o jedno 0 mniej pieniędzy względem poprzedniej wartości.
-
Ach, ale ja uwielbiam ten zwrot. Coś nie działa, ale nie wiadomo co nie działa... Masz w takim razie inny kod. on inventory click: clicked inventory's type is anvil inventory clicked slot is 2 event-slot's name is "Storm Sword" or "Super kilof" cancel event send "&cPrzedmiot nie może posiadać nazwy &6""Storm Sword"" &coraz &6""Super kilof""&c!" to player
-
Proszę, skrypt nietestowany. Ponieważ nie opisałeś czym mają być te banknoty ani nie opisałeś w jaki sposób jest zaimplementowana ekonomia na twoim serwerze, zrobiłem skrypt według własnego uznania. Wymagany Vault oraz plugin wspierający ekonomię na serwerze (np. EssentialsX). command /wyplac [<integer=100>]: trigger: if arg-1 is greater than player's balance: send "&cNie posiadasz wystarczającej ilości pieniędzy!" to player stop remove arg-1 from player's balance if player has enough space for 1 lime dye named "&2Banknot" with lore "&7Wartość: &a%arg-1%&a$": give player 1 lime dye named "&2Banknot" with lore "&7Wartość: &a%arg-1%&a$" else: drop 1 lime dye named "&2Banknot" with lore "&7Wartość: &a%arg-1%&a$" at player send "&aWypłaciłeś &6%arg-1%&6$ &aze swojego konta!" to player on right click: player's tool's type is lime dye player's tool's name is "&2Banknot" player's tool's lore contains "&7Wartość: &a" set {_} to (substring of (line 1 of player's tool's lore) from characters 14 to (length of (line 1 of player's tool's lore) - 3)) parsed as integer add {_} to player's balance set player's tool to (item amount of player's tool - 1) of player's tool send "&aWpłaciłeś &6%{_}%&6$ &ana swoje konto!" to player
-
Proszę, wymagany dodatek skript-reflect. Przy ustawianiu nazwy przedmiotu na "Storm Sword" lub "Super kilof", nazwa zostaje zmieniana na "####". import: org.bukkit.event.inventory.PrepareAnvilEvent on PrepareAnvilEvent: event.getResult() != null name of event.getResult() is "Storm Sword" or "Super kilof" set {_} to event.getResult() set {_}'s name to "########" event.setResult({_})
-
Przeczytaj jeszcze raz twoje zlecenie. Czy napisałeś coś o tym, aby klikało się prawym przyciskiem myszy i otrzymywało efekt szybkości? Ja nic takiego nie widzę.
-
Ale jak napisać? Nie rozumiem, wyjaśnij w czym problem.
-
Zrób tak jak napisałem, a wszystko będzie działać.
-
Jeżeli zrobiłeś kod tak jak to opisałem, nie powinno być problemów. I nie, nie rób zmiennych w YAMLu, bo to będzie najgorsza decyzja w twoim życiu.
-
A bo ja wiem? Nic nie opisałeś, więc niczego nie oczekuj.
-
Wyjaśnię ci to "pseudokodem". komenda /test: otwieranie GUI graczowi ustawianie zmiennej lokalnej na 0 pętla (ilość slotów) razy: ustawianie slotu (lokalna zmienna) na {zmienna::%player%::%lokalna zmienna%} dodawanie 1 do lokalnej zmiennej event przy zamykaniu gui: sprawdzanie nazwy gui: ustawianie zmiennej lokalnej na 0 pętla (ilość slotów) razy: ustawianie {zmienna::%player%::%lokalna zmienna%} na slot (lokalna zmienna) dodawanie 1 do lokalnej zmiennej
-
Proszę, oto skrypt. command /amulet [<text="szybkosci">]: trigger: if arg 1 is "szybkosci": give player 1 gold ingot named "Amulet szybkości" else if arg 1 is "boskiego swiatla": give player 1 gold ingot named "Amulet boskiego światła" else if arg 1 is "ochrony": give player 1 gold ingot named "Amulet ochrony" else if arg 1 is "sily": give player 1 gold ingot named "Amulet siły" else if arg 1 is "regeneracji": give player 1 gold ingot named "Amulet regeneracji"
-
Nie rozumiem dlaczego to zrobiłeś na podstawie metadanych. Dodatkowo użyłeś zmiennych globalnych w dodawaniu liczby reprezentującej numer slotu. Zmienne lokalne to takie, których nazwa zaczyna się podłogą (_) i są automatycznie czyszczone po dobiegnięciu do końca kodu. {int} # To jest zmienna globalna {_int} # To jest zmienna lokalna
-
No i znowu muszę dopytywać. A co jeżeli enderchest jest pełny?
-
Najczęściej poprzez resource packa, podmienia się za jego pomocą pewne bloki/przedmioty w grze na własne pod względem chociażby tekstur.
-
1. W starszych wersjach niemożliwym było używanie wyrażeń arytmetycznych w nazwach zmiennych, więc możliwe, że przed pętlą musisz stworzyć zmienną lokalną, która będzie zwiększana o 1 co każdą iterację pętli. Następnie podmieniasz 'loop-number - 1' na tę zmienną lokalną. 2. Użyłeś w pętli 'stop', co spowoduje, że przy pierwszej iteracji pętla zostanie zatrzymana i jedynie slot nr 0 zostanie ustawiony. 3. W ostatniej linijce zgubiłeś minus między 'loop-number' a '1'. 4. Nie używaj formatowania GUI z SkQuery, gdyż pozwala na łatwe wyjmowanie przedmiotów przy minimalnej wiedzy ze strony osoby bugującej GUI. Zamiast tego użyj formatowania ze Skripta, mianowicie 'set slot' (o ile posiadasz wystarczającą wersję Skripta).
-
Proszę. on sneak toggle: player wasn't sneaking "%region at player%" contains "przerabianie" player's tool is sugar cane named "&aKokaina" if {cooldown::przerabianie::%player%} is set: difference between {cooldown::przerabianie::%player%} and now is less than 10 seconds send "&cNie możesz jeszcze przerobić kokainy!" to player stop set {cooldown::przerabianie::%player%} to now set player's tool to (item amount of player's tool - 1) of player's tool if player has enough space for 1 sugar named "&fKokaina": give player 1 sugar named "&fKokaina" else: drop 1 sugar named "&fKokaina" at player
-
Jak najbardziej. Nasłuchujesz do eventu 'on inventory close', jeżeli nazwa GUI się zgadza to tworzysz pętlę 'loop (liczba slotów) times' i ustawiasz 'slot loop-number - 1' do zmiennej {jakasLista::%player%::%loop-number - 1%}. Przy otwieraniu natomiast wykonujesz odwrotnie tę czynność (pomijając oczywiście sprawdzanie nazwy GUI), mianowicie ustawiasz 'slot loop-number - 1' na wcześniej zapisaną zmienną. Mam nadzieję, że w miarę dobrze to objaśniłem.
-
Funkcje: https://skript.pl/temat/8232-funkcje/ Dzielenie tekstu: https://docs.skunity.com/syntax/search/id:5164 Powinno pomóc w zrozumieniu. Możliwe, że spytasz czy nie ma innego sposobu niż funkcje... Owszem, jest kilka, ale opierają się one na tworzeniu bałaganu w kodzie, więc funkcje są najlepszym rozwiązaniem.
-
Możesz to zrobić z pomocą funkcji, która będzie albo przyjmowała jedynie tekst jako argument, albo będzie przyjmowała tekst i liczbę liter. W obu przypadkach dzieliłaby podany tekst na litery, a następnie tworzyłaby z niego tekst. Tutaj już sposoby się rozbiegają, w pierwszym będzie zwracała całą listę wszystkich tekstów i będziesz po kolei w pętli wysyłał kolejne elementy tej listy. W drugim przypadku natomiast funkcja utworzy tekst o podanej długości liter i tylko jeden tekst zostanie zwrócony.
-
Chłopie, zamiast obejrzeć samemu ten filmy i opisać poprawnie zlecenie, to ty wolisz nam wysłać do obejrzenia jakieś syfiaste filmiki od SzybkiegoBanana. Weź się zabierz porządnie do wytłumaczenia tego co zleceniobiorca ma zrobić, bo tak to ani rusz.
-
Świąteczny kocur, jakich mało. Niewątpliwie wystawiam ocenę 10/10.
