Skocz do zawartości

Saanjuk

Użytkownik
  • Ilość zawartości

    361
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    18

Treść opublikowana przez Saanjuk

  1. Takie cos? on place cobblestone: wait 3 seconds delete event-block give 1 of cobblestone to player
  2. Kod jest na tyle krótki że nie ładuje się jakoś szczególnie długo... Co tutaj dzielić? 1 funkcja używana zamiennie w 2 warunkach (na moim serwerze istnieje sk który ma 658 linijek kodu (licząc tylko i wyłącznie linijki zawierające kod) nie jest może jakoś strasznie zoptymalizowany ale coś tam optymalizowałem) w kolejnej wersji dodam opcjonalne wyłącznie dropów na regionach/działkach worldguard Chciałem również dodać do tego wydobywanie się dymu z paczki do momentu jej zebrania/despawnu ale w momencie jak dodałem dym z paczki na ziemi nie działał dym w czasie odpadania lub loopy ybły zbyt obciążające (to jestdnak max 10 min loopa co kilka tick) Aktualizacja 1.1: Dodano opcje wyłączenia nagród innych niż zwykłe! Jeżeli "valuable_items: false" opcje nagród rzadkich epickich i legendarnych moga być puste ale nei wolno ich usuwac całkowicie! Wykasowano linijki kodu które pochodziły z "wzorca" skrypty (roulette) i w supply crate nie miały sensu Dodano określane w opacjach procentowe szanse na lepsze nagrody
  3. Jak wywala to sorrka nie testowałem bo mi Oracle zamknęło maszyny xD Już mam ogarnięte nowe maszyny wytestuje poprawie i wyślę w edycji tego posta nowy kod nie wiem jak ty w moim kodzie miales tylko 1 błąd jak mi wyskoczylo ich z 10 xD co ciekawe znalazlem twój kod tylko z every 1 second w necie...ale mniejsza oto gotowy kod: command /compressor: permission: op trigger: open chest inventory with 6 rows named "&cCompressor" to player if player has permission "compressor.oak": set slot 10 of player's current inventory to oak wood named "&6Oak Wood Autocompressor" with lore "&aUnlocked" stop set slot 10 of player's current inventory to oak wood named "&6Oak Wood Autocompressor" with lore "&cLocked" on inventory click: if name of player's current inventory is "&cCompressor": cancel event if clicked slot is 10: if player has permission "compressor.oak": if {oak::%player's uuid%} is false: set {oak::%player's uuid%} to true send "&aOak compressor has been enabled" else if {oak::%player's uuid%} is true: set {oak::%player's uuid%} to false send "&cOak compressor has been disabled" on join: if {oak::%player's uuid%} is not set: set {oak::%player's uuid%} to false every 1 second: loop all players where [input has 64 of unmodified oak wood]: if {oak::%loop-player's uuid%} is true: set {_n} to number of oak wood in loop-player's inventory set {_n} to {_n} / 64 set {_n} to floor({_n}) remove ({_n} * 64) of unmodified oak wood from loop-player's inventory give {_n} of glowing oak wood named "&6&lCompressed Oak Wood" to the loop-player send action bar "&5&lCOMPRESSOR &8> &fCompressed &b%({_n} * 64)% &fitems" to loop-player
  4. Po co aż tak wielka czcionka w prezentacji? Aż źle się to czyta naprawde.
  5. Saanjuk

    Skrypt na zrzuty

  6. Aktualizacja Wersja 1.3! Dziś chciałbym wam zaprezentować autorski skrypt oparty na pomyśle użytkownika @szajkor Supply Crate Supply drop to skrypt na zrzuty zaopatrzenia w losowych koordynatach na danym świecie, gracz który odnajdzie skrzynie dostaje drop w postaci random przedmiotów z opcji nagród skrypt został wyposażony w takie funkcje jak: - jeden ze slotów może posiadać item z list nagród rzadkich legendarnych lub epickich! - blokada zniszczenia skrzyni z dropu celem ukradnięcia bloku który jest skrzynią (np shulker boxa) - aby odebrać drop skrzynia musi dotknąć ziemi! - podczas opadania skrzyni unosi się z niej dym który znika w krótce po wylądowaniu skrzyni - dokładna lub przybliżona o RADIUS lokalizacja dropu - powiadomienie na czacie o wyruszeniu zaopatrzenia - powiadomienie na czacie o dotarciu skrzyni w miejsce zrzutu - usunięciu skrzyni po TIME_DESPAWN czasie oraz powiadomienie że nikt nie odebral dropu - posiada opcje ustalenia przy ilu graczach w danym świecie drop ma być aktywny - ustawiany w opcjach czas między dropami oraz czas po któym skrzynia znika -opcja określania ile procent szans ma być na nagrodę rzadką epicką i legendarną -Możliwość włączenia/wyłączenia zamkniętych skrzyń! -Zamknięte skrzynie muszą być otwierane przez [time_to_open] sekund -jeżeli skrzynia zniknie (ktoś zdąży ją otworzyć przed Tobą lub zdespawnuje się opcją DESPAWN_TIME gui zamknie się -jeżeli gracz otwierający skrzynie przerwie otwieranie postęp otwierania zamka resetuje się -dodano ramke wokół przedmiotów Co nowego? Dodano [delay_time] oraz opcję jego wyłączenia Czym jest delay? to czas który musi minąć od czasu wylądowania skrzyni do próby otwarcia jej przez graczy delete {nagrody_rzadkie::*} delete {nagrody_epickie::*} delete {nagrody_legendarne::*} delete {nagrody::*} delete {playersCount::*} Jezeli świat w którym ma działać skrypt nie istnieje skrypt nie robi nic poza powiadomieniem o tym operatora oraz konsoli Skrypt testowany na wersji serwer 1.20.4 oraz skripcie 2.8.7! Obecnie pracuje nad : dokończenie niepublikowanej wersji w której smok kresu robi za samolot zrzucający paczki
  7. Saanjuk

    Skrypt na zrzuty

    Bardzo ciekawy pomysł Challenge accepted! Spróbuje wykonać kolejny rozbudowany skrypt w którym bedziecie mogli sobie ustawiać wszystko za pomocą opcji tak aby kazdy chętny mógł skorzystać @edit: Surówka kodu została napisana ale nie wypuszczam jeszcze release ponieważ jest jeden kosmetyczny problem który naprawie po godzinie 22 30
  8. &#RRGGBB Zamiast pierwszego # używasz essentialsowego &
  9. Przeciez taką komendę masz w essentialss więc po co kombinujesz ze skryptami? /whois - Displays player information fortmat : /whois <nickname|playername> /realname - Displays the username of a user based on nick. format: /realname <nickname> /nick - Change your nickname or that of another player. format: /nick [player] <nickname|off>
  10. A nie lepiej użyć pluginu chestshop? Albo ShopChest? https://github.com/Flowsqy/ShopChest/releases/tag/v1.14.0-SNAPSHOT-WaterFix
  11. NIe znam się na tym pluginie ale patrząc na config.yml to może być to: 51 # The distance between the islands EXPERIMENTAL! 52 Distance: 1200
  12. Użyj skryptu bash .sh aby uruchomić wiele screenów na raz jedną komendą "bash start.sh" przykładowy skrypt: #!/bin/bash cd /home/ubuntu/bungee screen -dmS bungee java -Xms1024M -Xmx1560M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -jar waterfall.jar cd /home/ubuntu/lobby screen -dmS lobby java -Xms1024M -Xmx1560M -jar papermc.jar cd /home/ubuntu/survival screen -dmS survival java -Xms10240M -Xmx10536M -jar papermc.jar Aby przejść do konsoli serwera wpisujesz: screen -x <nazwa podana w start.sh> np: screen - x lobby aby wyśc z konsoli serwera nie zamykając go użyj: ctrl +A ctrl +D aby wyświetlić listę screenów wpisz: screen - x (działa tylko gdy masz odpalone wiecej niż jeden jeżeli jest jeden to przechodzisz do niego) z pierwszego screena wynika że masz odpalonych 16 screenó z czego 15 z nich ma nazwę "x" polecam komendę : killall screen aby zabić wszelkie screeny zanim zaczniesz otwierać tak jak ci napisałem
  13. Saanjuk

    Kity

    wypisz prosze listę swoich kitów i permisji do nich z essentials .. moge ci dać surowy kod ale nie wiem czym bd go umial sobie dostosować
  14. Saanjuk

    Licznik czasu.

    Nie rozumiem czemu zawzięcie się czepiłeś if {_time::%player%} Pozostały czas wg kodu który ci podałem to {_difference::%player%} Nie rozumiem po co usuwać minute z tego czasu itp... możesz to rozwiązać np tak: on entering of region "spawn": set {_time::%player%} to now set {_difference::%player%} to difference between {_time::%player%} and now #kod respiący bossa loop 15 times: if {_difference::%player%} = loop-number minutes: send "Pozostało Ci %(15 - %loop-number%)% minut na pokonanie bossa" wait 1 minute if {_difference::%player%} >= 15 minutes: execute console command "/spawn %player%" #kod zabijający/restujący bossa stop on exiting of region "spawn": if #player nie zabil bossa#: #kod zabijający/restujący bossa
  15. pomyłka tam miało być "while player is online"
  16. zmienne a placeholdery to 2 różne rzeczy... zmienna to coś czego używasz w skrypcie a placeholder pochodzi (zazwyczaj) z jakiegoś pluginu i jeszt wczytywany przez placeholder api aby skript czytał placeholdery musisz użyć addona (roszerzenia do skripta) : https://forums.skunity.com/resources/skript-placeholders.909/ jeżeli chodzi o players name to skriptrm wyczytujesz tu w ten sposób: %player's name%
  17. Saanjuk

    skirpt

    5 godzi temu wysyłałeś tego screena: Z którego wynika że używasz wersji 1.8.8 więc się zastnów na jaką wersje to chcesz sprawdź czy o to ci chodzilo: on invetory click: if player's gamemode is creative: set {_x} to event-item with lore "%player%" give {_x} to player inna sprawa że ten kod ma średni sens bo potem sie praktycznie nie da z gm 1 korzystać xD
  18. Saanjuk

    Brush

    on rightclick holding blaze rod: player's tool's name is "brush": loop 3 blocks under player: loop-block stone or cobblestone or emerald ore or emerald block od diamond ore or diamond block: set {_} to type of loop-block set loop-block to air drop 1 of {_} at location of loop-block
  19. Ale gracz wchodiz do netheru z jakiego świata? I czy masz multiverse
  20. every 1 tick? to lagmaszyna a nie skrypt ... kolejna rzecz która się kupy nie trzyma: set {oak::%player's uuid%} to true if {oak::%player's uuid%} is false set {oak::%player's uuid%} to false if {oak::%player's uuid%} is true zapętlony kod po za tym jeżeli się nie myle to skript będzie widział te zenchantowane jako zwykle i bd je wymienial na jedno i to samo na czym gracze stracą 64 echantowane... nie rozumiem również tego: set {_n} to number of oak wood in loop-player's inventory set {_n} to {_n} / 64 set {_n} to floor({_n}) loop {_n} times: remove ({_n} * 64) of oak wood from loop-player's inventory give {_n} of oak wood of aqua affinity 1 named "&6&lCompressed Oak Wood" with all flags hidden to the loop-player send action bar "&5&lCOMPRESSOR &8> &fCompressed &b%({_n} * 64)% &fitems" to loop-player wait 1 tick jeżeli już obliczyłeś ile ma stacków to po co ten loop? powiedzmy że mam 5 stack drewna włączam compresor powtarzana jest 5 razy czynność: usun 5 stacków drewna dodaj 5 enchantowanego drewna ponieważ po 1 loopie nie mam juz stacków drewna nie usuwa mi ich za to dodaje kolejne 5 enchantowanego drewna w efekcie za 5 stacjów drewana mam 25 drewna enchantowanego... chyba nie o to chodzi prawda? spróbuj: command /compressor: permission: op trigger: open chest inventory with 6 rows named "&cCompressor" to player if player has permission "compressor.oak": set slot 10 of player's current inventory to oak wood named "&6Oak Wood Autocompressor" with lore "&aUnlocked" stop set slot 10 of player's current inventory to oak wood named "&6Oak Wood Autocompressor" with lore "&cLocked" on inventory click: if name of player's current inventory is "&cCompressor": cancel event if event-slot is 10: if player has permission "compressor.oak": if {oak::%player's uuid%} is false: set {oak::%player's uuid%} to true send "&aOak compressor has been enabled" else if {oak::%player's uuid%} is true: set {oak::%player's uuid%} to false send "&cOak compressor has been disabled" on join: set {oak::%player's uuid%} to false if {oak::%player's uuid%} is not set while player is online: if {oak::%loop-player's uuid%} is true: set {_n} to number of oak wood in loop-player's inventory set {_n} to {_n} / 64 set {_n} to floor({_n}) remove ({_n} * 64) of oak wood from loop-player's inventory give {_n} of oak wood of aqua affinity 1 named "&6&lCompressed Oak Wood" with all flags hidden to the loop-player send action bar "&5&lCOMPRESSOR &8> &fCompressed &b%({_n} * 64)% &fitems" to loop-player wait 1 second else: wait 1 second
  21. Saanjuk

    Licznik czasu.

    on entering of region "spawn": set {_time::%player%} to now set {_difference::%player%} to difference between {_time::%player%} and now if {_difference::%player%} >= 15 minutes: execute console command "/spawn %player%" #kod zabijający/restujący bossa stop #kod respiący bossa on exiting of region "spawn": if #player nie zabil bossa#: #kod zabijający/restujący bossa
  22. Obawiam się że nie da się zweryfikować nazwy juz wystrzelonej strzały ale mogę się mylić próbowałem na kilka sposobów niestety nie wiem jak to zrobić
  23. Saanjuk

    Licznik czasu.

    w propozycji wyżej jest execute player command /spawn... na większości serwerów trzeba stać nieruchomo przez 5 sekund aby się tepnąć jako gracz na spawn więc proponuje dac console command po za tym używając zmiennych tymczasowych nie zaśmiecasz sobie pliku ze zmniennymi on entering of region "spawn": set {_time} to now set {_difference} to difference between {_time} and {_now} if {_difference} >= 5 minutes: execute console command "/spawn %player%" #kod zabijający/restujący bossa stop #kod respiący bossa on exiting of region "spawn": if #player nie zabil bossa#: #kod zabijający/restujący bossa oczywiście 2 sekcji używasz tylko jeżeli gracz może opuszczać ten region
  24. Saanjuk

    Dziwny błąd

    skstuff jest wspierany do wersji servera 1.11 SkBee używa NBT: https://www.spigotmc.org/resources/skbee-skript-addon.75839/update?update=361734
  25. Dostane warna to trudno ale: Wiem jaka będzie odpowiedź autora "moj serwer jest na 1.8.8 a tam dziala tylko 2.1.2" Aby mieć serwer na 1.8.8 i działało wszystko co najnowsze robisz tak: robisz serwer 1.19.3 wgrywasz ViaVersion oraz ViaRewind blokujesz nimi wejście z wersji powyżej 1.8 instalujesz plugin na stare pvp aby nie dało się używać lewej lapki: https://www.spigotmc.org/resources/oldcombatmechanics-disable-1-9-hit-cooldown.19510/ masz serwer na 1.8 postawiony na silniku 1.19.3 ważna sprawa trzeba mieć do tego świat wygenerowany na 1.8 oraz wyrenderowany do dostępnego dla graczy borderu
×
×
  • Dodaj nową pozycję...