Skocz do zawartości

Saanjuk

Użytkownik
  • Ilość zawartości

    361
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    18

Odpowiedzi społeczności

  1. Saanjuk odpowiedź w ID of item został oznaczony jako odpowiedź   
    żeby gui wyglądało tak:
    https://ibb.co/vX6BM88
    a nie tak:
    https://ibb.co/BL09ntf
    niezależnie od kolejności w jakiej itemy były wrowadzone do gui komendą 
  2. Saanjuk odpowiedź w Poprawa skryptu został oznaczony jako odpowiedź   
    wpisz proszę `/sk info` na serwerze i daj wydruk z konsoli albo screena tego co ci wyskoczyło na czacie

    co do samego skryptu sprawdze czy u mnie działa i postaram Ci go naprawić 

    aby działał event on any movemnt potrzebujesz addona do skript "SkQuery" :
    https://github.com/SkQuery/SkQuery/releases


    @EDIT:
    zastąpiłem ten event takim który nie wymaga addonów

    Proszę oto działający kod na czysty Skript bez addonów:
     
  3. Saanjuk odpowiedź w Custom item skrypt pomoc został oznaczony jako odpowiedź   
    dobrze, czy w mojej wersji kodu efekt jest taki sam? ponieważ próbuje się tego dowiedzieć od 3 postów...

    jeżeli nie to wypróbuj:
     
    on damage of player: if attacker is not a player: stop if attacker's tool is netherite sword: if name of attacker's tool is "&2&lᴢᴀᴛʀᴜᴛʏ ᴍɪᴇᴄᴢ": apply potion of poison to victim for 5 seconds na kodzie testowym :
     
    on click: if players's tool is netherite sword: if name of players's tool is "&2&lᴢᴀᴛʀᴜᴛʏ ᴍɪᴇᴄᴢ": send "test" to player działało doskonale
  4. Saanjuk odpowiedź w Jeśli gracz ma pełny ekwipunek został oznaczony jako odpowiedź   
    wystarczy użyć opcji "szukaj" :
     
    on mine: CheckInventory(player) on pickup: CheckInventory(player) every 2 minutes: loop all players: CheckInventory(loop-player) function CheckInventory(p: player): if {alerty::player::%{_p}%::inventory} is true: loop all items in {_p}'s inventory: add 1 to {_inv} if {_p}'s offhand is not air: remove 1 from {_inv} if {_p}'s boots is not air: remove 1 from {_inv} if {_p}'s leggings is not air: remove 1 from {_inv} if {_p}'s chestplate is not air: remove 1 from {_inv} if {_p}'s helmet is not air: remove 1 from {_inv} if {_inv} is 36: send {_p} title "&c&lPELNY EKWIPUNEK" with subtitle "&fTwoj ekwipunek jest pelny" for 2 second send "&7Jesli chcesz wylaczyc te powiadomienie wpisz &6/fulleq off" to {_p} play sound "ENTITY_VILLAGER_NO" with volume 0.5 to {_p} on join: if {alerty::player::%{_p}%::inventory} is not set: set {alerty::player::%{_p}%::inventory} to true command /fulleq [<text>]: trigger: if arg 1 is "on": if {alerty::player::%{_p}%::inventory} is true: send "&cPowiadomienia o pełnym ekwipunku były już włączone!" else: set {alerty::player::%{_p}%::inventory} to true send "&6Powiadomienia o pełnym ekwipunku zostały włączone!" if arg 1 is "off": if {alerty::player::%{_p}%::inventory} is false: send "&cPowiadomienia o pełnym ekwipunku były już wyłączone!" else: set {alerty::player::%{_p}%::inventory} to false send "&6Powiadomienia o pełnym ekwipunku zostały wyłączone!"  
  5. Saanjuk odpowiedź w Skrypt nie odejmuje liczby został oznaczony jako odpowiedź   
    options: sklepPerm: craftbox.sklep sklepManagePerm: craftbox.sklep.admin serverPrefix: &f&lTwoje&7&lIP &8» scriptPrefix: &a&lSKLEP &8» startKasa: 0 sklepName: &a&lSKLEP on join: if player has permission "{@sklepPerm}": if {sklep::kasa::%player%} is not set: set {sklep::kasa::%player%} to "{@startKasa}" send "{@scriptPrefix} &fUstawiono twoja kase na &e{@startKasa}" to player while player is online: if player has permission "{@sklepPerm}": if {sklep::kasa::%player%} is set: send action bar "{@scriptPrefix} &aTwoje pieniadze&7: &e%{sklep::kasa::%player%}%" to player wait 2 seconds command /kasa [<player>] [<text>] [<number>]: trigger: if player has permission "{@sklepManagePerm}": if arg 1 is not set: send "{@scriptPrefix} &cNie podales uzytkownika!" to player stop if arg 2 is not set: send "&cNie podales opcji!" to player send "{@scriptPrefix} &cUzycia&7: &f/kasa &7[&f&lGRACZ&7] &7[&f&linfo&7/&f&lustaw&7] &7[&f&lILOSC&7]" to player stop if arg 2 is set: if arg 2 is not "info" or "dodaj" or "usun" or "ustaw": send "&cOpcja jest zla!" to player send "{@scriptPrefix} &cUzycia&7: &f/kasa &7[&f&lGRACZ&7] &7[&f&linfo&7/&f&lustaw&7] &7[&f&lILOSC&7]" to player stop if arg 2 is "info": send "{@scriptPrefix} &aAktualna kasa &f%player-arg% &awynosi&7: &e%{sklep::kasa::::%arg-1%}%" to player stop if arg 3 is not set: send "&cNie podales ilosci!" to player send "{@scriptPrefix} &cUzycia&7: &f/kasa &7[&f&lGRACZ&7] &7[&f&linfo&7/&f&lustaw&7] &7[&f&lILOSC&7]" to player stop if arg 2 is "ustaw": set {sklep::kasa::::%arg-1%} to arg-3 send "{@scriptPrefix} &aAktualna kasa &f%player-arg% &awynosi&7: &e%{sklep::kasa::::%arg-1%}%" to player stop else: send "{@serverPrefix} &cBrak permisji&7: &6&l{@sklepManagePerm}" to player stop command /sklep: aliases: /shop executable by: player trigger: if player have permissions "{@sklepPerm}": open chest with 1 rows named "{@sklepName}" to player wait 5 ticks set player's current inventory's slot 0 to gold ingot named "&6&lVIP" with lore "&fKwota&7: &e10" set player's current inventory's slot 1 to iron ingot named "&e&lSVIP" with lore "&fKwota&7: &e15" set player's current inventory's slot 2 to lapis lazuli named "&9&lSPONSOR" with lore "&fKwota&7: &e20" set player's current inventory's slot 3 to diamond named "&d&lELITA" with lore "&fKwota&7: &e25" set player's current inventory's slot 4 to emerald named "&c&lFOREST" with lore "&fKwota&7: &e30" set player's current inventory's slot 5 to gray stained glass pane set player's current inventory's slot 6 to gray stained glass pane set player's current inventory's slot 7 to gray stained glass pane set player's current inventory's slot 8 to golden nugget named "&6&lTwoja kasa&7: &e&l%{sklep::kasa::%player%}%" else: send "{@serverPrefix} &cBrak permisji&7: &6&l{@sklepPerm}" to player stop on inventory click: if name of event-inventory is "{@sklepName}": cancel event set {sklep::kasa::%player%} to ({sklep::kasa::%player%} parsed as integer) if clicked slot is 0: if {sklep::kasa::%player%} >= 10: remove 10 from {sklep::kasa::%player%} execute console command "lp user %player's name% parent add vip" close player's inventory send "{@scriptPrefix} &2Pomyslnie kupiles &6&lVIP" to player stop else: send "{@scriptPrefix} &cNie posiadasz wystarczajaco pieniedzy!" to player close player's inventory stop
    nie działało ponieważ nie widziało {sklep::kasa::%player%} jako liczby dodałem linijke która zamienia interpretacje tego na liczbe w evencie inv click tak abyś nie musiał co chwile tego konwertować 

    posiedzialem troche nad kodem i wiem dlaczego nie widzi kasy jako liczba dodajesz ją jako tekst na początku:
     
    set {sklep::kasa::%player%} to "{@startKasa}"
    powinno być :

     
    set {sklep::kasa::%player%} to {@startKasa}
    A zatem poprzednio dodana linijka jest nie potrzebna dodałem również komendy dodaj oraz usun oraz nadałem temu nieco lepszy look (chyba nie chcesz mi powiedzieć że wymagasz 3 argumentu w info? jakby to mialo wyglądać...

    oto gotowy kod:

     
    options: sklepPerm: craftbox.sklep sklepManagePerm: craftbox.sklep.admin serverPrefix: &f&lTwoje&7&lIP &8» scriptPrefix: &a&lSKLEP &8» startKasa: 0 sklepName: &a&lSKLEP on join: if player has permission "{@sklepPerm}": if {sklep::kasa::%player%} is not set: set {sklep::kasa::%player%} to {@startKasa} send "{@scriptPrefix} &fUstawiono twoja kase na &e{@startKasa}" to player while player is online: if player has permission "{@sklepPerm}": if {sklep::kasa::%player%} is set: send action bar "{@scriptPrefix} &aTwoje pieniadze&7: &e%{sklep::kasa::%player%}%" to player wait 2 seconds command /kasa [<player>] [<text>] [<number>]: trigger: if player has permission "{@sklepManagePerm}": if arg 1 is not set: send "{@scriptPrefix} &cNie podales uzytkownika!" to player stop if arg 2 is not set: send "&cNie podales opcji!" to player send "{@scriptPrefix} &cUzycia&7: &f/kasa &7[&f&lGRACZ&7] &7[&f&linfo&7/&f&lustaw&7] &f( &7[&f&lILOSC&7] &f}" to player stop if arg 2 is set: if arg 2 is "info": if arg 3 is not set: send "{@scriptPrefix} &aAktualna kasa &f%player-arg% &awynosi&7: &e%{sklep::kasa::%arg-1%}%" to player stop else: send "&cOpcja jest zla!" to player send "{@scriptPrefix} &cUzycia&7: &f/kasa &7[&f&lGRACZ&7] &7[&f&linfo&7&7]" to player stop if arg 2 is "ustaw": if arg 3 is set: set {sklep::kasa::%arg-1%} to arg 3 send "{@scriptPrefix} &aAktualna kasa &f%player-arg% &awynosi&7: &e%{sklep::kasa::%arg-1%}%" to player stop if arg 2 is "dodaj": if arg 3 is set: set {sklep::kasa::%arg-1%} to {sklep::kasa::%arg-1%} + arg 3 send "{@scriptPrefix} &aAktualna kasa &f%player-arg% &awynosi&7: &e%{sklep::kasa::%arg-1%}%" to player stop if arg 2 is "usun": if arg 3 is set: set {sklep::kasa::%arg-1%} to {sklep::kasa::%arg-1%} - arg 3 send "{@scriptPrefix} &aAktualna kasa &f%player-arg% &awynosi&7: &e%{sklep::kasa::%arg-1%}%" to player stop else: send "&cOpcja jest zla!" to player send "{@scriptPrefix} &cUzycia&7: &f/kasa &7[&f&lGRACZ&7] &7[&f&lustaw&7/&f&ldodaj/&f&lusun&7] &7[&f&lILOSC&7]" to player stop else: send "{@serverPrefix} &cBrak permisji&7: &6&l{@sklepManagePerm}" to player stop command /sklep: aliases: /shop executable by: player trigger: if player have permissions "{@sklepPerm}": open chest with 1 rows named "{@sklepName}" to player wait 5 ticks set player's current inventory's slot 0 to gold ingot named "&6&lVIP" with lore "&fKwota&7: &e10" set player's current inventory's slot 1 to iron ingot named "&e&lSVIP" with lore "&fKwota&7: &e15" set player's current inventory's slot 2 to lapis lazuli named "&9&lSPONSOR" with lore "&fKwota&7: &e20" set player's current inventory's slot 3 to diamond named "&d&lELITA" with lore "&fKwota&7: &e25" set player's current inventory's slot 4 to emerald named "&c&lFOREST" with lore "&fKwota&7: &e30" set player's current inventory's slot 5 to gray stained glass pane set player's current inventory's slot 6 to gray stained glass pane set player's current inventory's slot 7 to gray stained glass pane set player's current inventory's slot 8 to golden nugget named "&6&lTwoja kasa&7: &e&l%{sklep::kasa::%player%}%" else: send "{@serverPrefix} &cBrak permisji&7: &6&l{@sklepPerm}" to player stop on inventory click: if name of event-inventory is "{@sklepName}": cancel event if clicked slot is 0: if {sklep::kasa::%player%} >= 10: remove 10 from {sklep::kasa::%player%} execute console command "lp user %player's name% parent add vip" close player's inventory send "{@scriptPrefix} &2Pomyslnie kupiles &6&lVIP" to player stop else: send "{@scriptPrefix} &cNie posiadasz wystarczajaco pieniedzy!" to player close player's inventory stop  
  6. Saanjuk odpowiedź w loop player actionbar został oznaczony jako odpowiedź   
    Wrzuć proszę mój kod do skryptu i wyślij mi blad
     
    Nie widzisz różnicy między :
    send action bar of loop-player to "&ctest" A :
    send action bar "&ctest%" to loop-player ?! 
  7. Saanjuk odpowiedź w nazwa dźwięku został oznaczony jako odpowiedź   
    Wszystkie osiągnięcia aja ten sam dźwięk to chyba ten jak się nie myle:
    ui.toast.challenge_complete
  8. Saanjuk odpowiedź w Skrypt pomoc został oznaczony jako odpowiedź   
    Najprościej to tak:
     
    command /pomoc: trigger: send "----- &ePOMOC -- Kliknij na tekst -----%nl%Witaj, %player's name% w menu pomocy serwera!%nl%<tooltip: Kliknij aby otworzyć pomoc dot. bla bla bla!><command:#TU WPISZ KOMENDĘ KTÓRĄ CHCESZ UŻYWAĆ PO KLIKU>/ -pomoc bla bla bla <r>%nl%" objaśnienia:
    %nl% - oznacza nową linie
    <tooltip: TRESĆ RAMKI PO NAJECHANIU >
    <command: KOMENDA KTÓRĄ MA WYKONAĆ PO KLIKU>
    <r> - resetuje  tooltip i command używasz go po zakonczonej linijce
    nową komendę dodajesz poprzez dodanie 

    nowa linika wygląda zatem tak:

    <tooltip: TRESĆ RAMKI PO NAJECHANIU ><command: KOMENDA KTÓRĄ MA WYKONAĆ PO KLIKU> /pomoc <komenda> <r>%nl%

    musisz ją oczywiście dodać po %nl% a przed " na koncu linijki

    jeżeli masz dużo komend to warto to podzielić na strony pomocy (odrobine bardziej skomplikowany kod) ten prosty kod jest na 1 strone wyswietlaną po wpisaniu /pomoc
  9. Saanjuk odpowiedź w Drop został oznaczony jako odpowiedź   
    Options: perm_mine: use.drop2inv.mine perm_kill: use.drop2inv.kill perm_mobs: use.drop2inv.mobs on mine: if player has permission "{@perm_mine}": loop drops of event-block using player's tool: add loop-item to {_inventory::*} cancel drops loop {_inventory::*}: if player has enough space for loop-value: add loop-value to player's inventory else: drop loop-value at player on death of player: if attacker has permission "{@perm_kill}": if attacker is a player: loop all items in victim's inventory: add loop-item to {_inventory::*} cancel drops loop {_inventory::*}: if attacker has enough space for loop-value: add loop-value to attacker's inventory else: drop loop-value at the victim on death: if victim is not player: if attacker has permission "{@perm_mobs}": loop drops: add loop-item to {_inventory::*} cancel drops loop {_inventory::*}: if attacker has enough space for loop-value: add loop-value to attacker's inventory else: drop loop-value at attacker nigdzie nie może byc player w on death musi być attacker

    dopisałem moby
     
  10. Saanjuk odpowiedź w Problem z plikami został oznaczony jako odpowiedź   
    a patrzyles w przykłady użycia?
    if plugin "Vault" is enabled:
    if plugin "WorldGuard" is not enabled:
    if plugins "Essentials" and "Vault" are enabled:
    if plugin "MyBrokenPlugin" is disabled:
     
    every 1 second:
       if plugin "SkQuery" and "skript-yaml" are enabled:
                #<KOD>
     
  11. Saanjuk odpowiedź w Enderchest na spawnie został oznaczony jako odpowiedź   
    "ender chest" a nie "enderchest" 

    aczkolwiek enderchest nie zachowuje nazwy po postawieniu więc trzeba pod niego przerobić skrypt

    3maj na szybko dostosowany kod i oczekuj aktualizacji w wątku głównym roulette ponieważ będzie dosyć spora
    i nie ma partiklesów poki co ale działa 
     
    minusy:
    po zniszczeniu enderchesta nie usuwa się zmienna że był tam kiedyś blok ruletki co może powodować różne bugi w przyszłości

    pełen relase z dowolnym typiem bloków i partikleami prawdopodobnie do rana będzie wypuszczony
  12. Saanjuk odpowiedź w Compressor został oznaczony jako odpowiedź   
    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
     
  13. Saanjuk odpowiedź w Dziwny błąd został oznaczony jako odpowiedź   
    set tag "NoAI" of nbt compound of last spawned entity to 1 spróbuj tak

     
    set tag "NoAI" of nbt of last spawned entity to 1 albo tak
  14. Saanjuk odpowiedź w Blokada levelowa został oznaczony jako odpowiedź   
    cóż zajęło to z godzinke ale trzymaj:

     
    on load: set {levels::*} to (integers between 1 and 100) on damage: set {_l} to "%lore of attacker's tool%" loop {levels::*}: if {_l} contains "Poziom": if {_l} contains "%loop-value%": set {_level} to loop-value if {_level} is higher than {level::%attacker%}: send "Nie możesz używać tej broni! %nl%Wymagany poziom %{_level}%" to attacker cancel event
     
  15. Saanjuk odpowiedź w Skrypt na zrzuty został oznaczony jako odpowiedź   
  16. Saanjuk odpowiedź w Skrypt na zmianę koloru nicku został oznaczony jako odpowiedź   
    &#RRGGBB Zamiast pierwszego # używasz essentialsowego &
  17. Saanjuk odpowiedź w Fabledskyblock tworzenie wysp jedna na drugiej został oznaczony jako odpowiedź   
    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  
  18. Saanjuk odpowiedź w Brush został oznaczony jako odpowiedź   
    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. Saanjuk odpowiedź w Bungee cord wiecej serwerow został oznaczony jako odpowiedź   
    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
  20. Saanjuk odpowiedź w Mała przeróbka skryptu został oznaczony jako odpowiedź   
    options: min-x: -130 max-x: 70000 min-z: -160 max-z: 70000 swiat: world sendwiado: &cZostałeś teleportowany w losowe kordy titlewiado: &8[&eLosowy Teleport&8] titlewiado1: &8[&aZostałeś teleportowany w losowe kordy&8] function getRandomLoc(xmin: integer=-1000, xmax: integer=1000, zmin: integer=-1000, zmax: integer=1000, world: text="world") :: location: while {_return} is not set: set {_x} to random integer between {_xmin} and {_xmax} set {_z} to random integer between {_zmin} and {_zmax} set {_loc} to highest block at location at {_x}, 0, {_z} in world ({_world} parsed as world) if block at {_loc} != lava or water: add 1 to y-loc of {_loc} if (block at {_loc}) and (block above block at {_loc}) != lava: set {_return} to {_loc} return {_return} command /rtp: trigger: if player has permission "rtp.bybass": teleport player to getRandomLoc({@min-x}, {@max-x}, {@min-z}, {@max-z}, "{@swiat}") send "&cZostałeś teleportowany w losowe kordy" send player title "Zostałeś teleportowany w losowe kordy" with subtitle "Powodzenia!" for 5 seconds else: set {_czasoczekiwania} to difference between {rtp::%player's uuid%} and now if {_czasoczekiwania} >= 10 minutes: teleport player to getRandomLoc({@min-x}, {@max-x}, {@min-z}, {@max-z}, "{@swiat}") send "&cZostałeś teleportowany w losowe kordy" send player title "Zostałeś teleportowany w losowe kordy" with subtitle "Powodzenia!" for 5 seconds set {rtp::%player's uuid%} to now stop send "&cTej komendy możesz użyć co 10 min!" on first join: teleport player to getRandomLoc({@min-x}, {@max-x}, {@min-z}, {@max-z}, "{@swiat}") send "&cZostałeś teleportowany w losowe kordy" send player title "Zostałeś teleportowany w losowe kordy" with subtitle "Powodzenia!" for 5 seconds on first join: teleport player to getRandomLoc({@min-x}, {@max-x}, {@min-z}, {@max-z}, "{@swiat}") send "&cZostałeś teleportowany w losowe kordy" send player title "Zostałeś teleportowany w losowe kordy" with subtitle "Powodzenia!" for 5 seconds on respawn: teleport player to getRandomLoc({@min-x}, {@max-x}, {@min-z}, {@max-z}, "{@swiat}") send "&cZostałeś teleportowany w losowe kordy"

    brakowało linijki :
     
    set {rtp::%player's uuid%} to now sprawdz teraz bez permisji
  21. Saanjuk odpowiedź w Problem z Dispenserem został oznaczony jako odpowiedź   
    Nie widzę tutaj problemu z pluginem Skript (zły dział) ale to zadanie moderacji aby przenieść ten temat (już zgłoszone)


    plugins/WorldGuard/config.yml:

    line 41 - 46
    event-handling: block-entity-spawns-with-untraceable-cause: false interaction-whitelist: [] emit-block-use-at-feet: [] ignore-hopper-item-move-events: true break-hoppers-on-denied-move: true
    zamien na:
     
    event-handling: block-entity-spawns-with-untraceable-cause: true interaction-whitelist: [] emit-block-use-at-feet: [] ignore-hopper-item-move-events: false break-hoppers-on-denied-move: true
    w domyślnej kofiguracji na regionach nie działają bloki które spawnują moby oraz itemy w hopperach się nie przesuwają
  22. Saanjuk odpowiedź w skrypt na kilof haste został oznaczony jako odpowiedź   
    on tool change: remove haste from player if new tool is diamond pickaxe of efficiency 5 and unbreaking 3 and fortune 3 named "&3&lMITYCZNY &f&lKILOF": remove haste from player apply haste 1 to player for 1800 seconds  
  23. Saanjuk odpowiedź w Skrypt uzupełniający bloki został oznaczony jako odpowiedź   
    Taki skrypt wymaga wyznaczenia tych sześcianów 6x6x6 worldguardem

    Z mojej obecnej wiedzy wynika że zaznaczanie bloków skriptem zwyczajnie przestało funkcjonować w pewnym momencie nigdzie nie znalazlem oficjalnej informacji dla braku wsparcia takiego czegoś jednak żaden ze sposobów jakie znam nie działa juz w skript

    a zatem :

    wyznaczamy regiony worldeditem i definiujemy je worldguardem

    nazywamy nasz sześciany "kopalnia_<nazwa tego co chcemy mieć w kopalni>"


    następnie piszemy prosty kod :

     
    every 15 minutes: loop all players: if "%region at loop-player%" contains "wegiel": teleport player to {kopalnia::wegiel} loop all blocks in region "kopalnia_wegiel": set loop-block to coal ore if "%region at loop-player%" contains "eleraldy": teleport player to {kopalnia::eleraldy} loop all blocks in region "kopalnia_eleraldy": set loop-block to emerald ore if "%region at loop-player%" contains "zelazo": teleport player to {kopalnia::zelazo} loop all blocks in region "kopalnia_zelazo": set loop-block to iron ore if "%region at loop-player%" contains "zloto": teleport player to {kopalnia::zloto} loop all blocks in region "kopalnia_zloto": set loop-block to gold ore if "%region at loop-player%" contains "redstone": teleport player to {kopalnia::redstone} loop all blocks in region "kopalnia_redstone": set loop-block to redstone ore if "%region at loop-player%" contains "lapis": teleport player to {kopalnia::wegiel} loop all blocks in region "kopalnia_lapis": set loop-block to lapis ore command /kopalnia [<text>] permission: kopalnia.set trigger: if arg 1 is set: set {kopalnia::%arg 1%} to location of player send "&6====================================================%nl%&aUstawiono punkt teleportacji: &7kopalnia_%arg 1%%nl%&aNa koordynaty:&7%nl%%location of player%%nl%&6===================================================="
    komendą /kopalnia <rodzaj kopalni> ustawiasz miejsce gdzie mają być teleportowani gracze
    np /kopalnia wegiel ustawi punkt teleportu do którego zostanie przeteleportowany gracz gdy w momencie resetu kopalni węgla znajduje się na jej terenie
  24. Saanjuk odpowiedź w Zmienne został oznaczony jako odpowiedź   
    Prosze ten działa doskonale:

     
    options: hp_stone: 100 demage_stone: 10 on break: if event-block is stone: set {_block} to event-block if {blockdata::%location of event-block%} is not set: set {blockdata::%location of event-block%} to location of event-block set {blockdata::%location of event-block%::health} to {@hp_stone} if {blockdata::%location of event-block%::health} > {@demage_stone} : remove {@demage_stone} from {blockdata::%location of event-block%::health} cancel event else: delete {blockdata::%location of event-block%} hp_stone to ile ma miec stone hp
    demage_stone to ile ma zabierać jedno rozwalenie 


    minus tego rozwiązania jest taki że jeżeli ktoś przestanie kopać blok i podejdzie do niego inna osoba to ten blok bd miał zmniejszone hp 
    można kombinowac jeżeli bardzo potrzebujesz żeby się resetowało ale takie kombinacje mogą też spowodować problemy (np reset hp na cobblarce chociaż blok nie został wykopany)
  25. Saanjuk odpowiedź w Pomoc przy skrypcie na rzut kością został oznaczony jako odpowiedź   
    Troche mnie poniosło z zabezpieczeniami co by nic się przykrego nigdy nie wydarzyło
    Tak wiem kod baaardzo ciężko się czyta patrząc na to jako człowiek ale skript widzi tam gracza 1  i gracza 2 a nie te skomplikowane dziwne rzeczy
     
     gdyby coś jednak bylo nie tak kiedykolwiek dodałem komendę :

    /kostki restart

    która wymazuje wszelkie zmienne ze skryptu
     
     
    Jeżeli chcesz aby łatwiej się korzystało z tej gry to możesz zainstalować Addon SkQuery i wykorzystać ten kod:

     
    on tab completer for "/kostki": if argument at 1 is "": set {_completers::*} to "akcept" and "deny" loop {_completers::*}: add loop-value to completions player has permission "kostki.admin": set {_completers::*} to "restart" loop {_completers::*}: add loop-value to completions if (argument at 1 parsed as integer) is set: loop all players: add loop-player's name to completions
    musisz go zapisać w osobnym pliku .sk który będzie ładowany wcześniej niż skrypt z kostkami najlepiej nazwać go np : aaatabcompleter.sk w ten sposób skript wczyta go pierwszego poniewaz idzie on za kolejnością alfabetyczną

     
×
×
  • Dodaj nową pozycję...