Skocz do zawartości

Fendi

Użytkownik
  • Ilość zawartości

    1775
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    78

Treść opublikowana przez Fendi

  1. Fendi

    Skrypt na mikołaja

    command /mikolaj: trigger: set {_} to random integer between 1 and 2 give player chest named "Premium Case" if {_} = 1 else dirt named "&5Rózga"
  2. on join: if player has permission "group.vip": set {_} to placeholder "essentials__nickname" from player send "%{_}% jest teraz online!" to all players powinno zadzialac a i nie polecam broadcast, spami w konsoli, lepiej dopisac to all players
  3. Fendi

    On death

    Co ciekawe mi tu błędu nie pokazuje (ss wysłany wyżej) xd
  4. Fendi

    On death

    jaki? mi nie pokazuje
  5. Fendi

    Szaman BoxPvP

    ze jaki perk zycia? ze co ? perk szybkiego kopania? ze enchant? perk szybkosci? jakiej ? na ile Nawet nie chce mi sie czegos tak prostego tlumaczyc, poza tym jezeli chcesz to na teraz to zaplac komus, ja robie za darmo wtedy kiedy mam czas, aktualnie mam go mniej
  6. Fendi

    Szaman BoxPvP

    nie opisales nawet jak to ma dzialac, czym to ma byc wiec nie
  7. Najlepiej stworzyć gui w funkcji i w tym miejscu co podałeś ją wywołać
  8. wystarczy ze zdejmiesz z niego kajdanki klikajac ppm+shift
  9. Fendi

    On death

    Pozwolisz, że lekko to skrócę i naprawię. variables: {m.sp::%player%} = false command /wlaczsp [<player>]: permission: op trigger: set {m.sp::%arg 1%} to true if ({m.sp::%arg 1%} ? false) is false else false wait tick # mozliwe ze nie potrzebne, jednak aby sie nie bugowalo ja bym zostawil send "&aWlaczono przechodzenie w tryb spectator dla gracza %arg 1%" if {m.sp::%arg 1%} is true else "&cWylaczono przechodzenie w tryb spectator dla gracza %arg 1%" on death: victim is a player {m.sp::%victim%} is true set victim's gamemode to spectator Generalnie to w obu wiadomościach pisze "Wlaczono" Zamiast zmieniania w zmiennej z wartosci true na false i na odwrót, można użyć warunku trójargumentowego który twoje 6 linijek zapisze w dwie. Użyłeś dwóch argumentów z czego drugi powinien przyjmować wartość player, a najlepiej aby ich w ogóle nie było bo są zbędne. Event trochę nie pasuje, po prostu wystarczylo zablokować dedanie gracza, usunięte też zbędne taby.
  10. Fendi

    Zawarcie w czymś

    dostałeś odpowiedz na chatboxie
  11. Sprawdzałeś "any pickaxe of fortune 1:" czyli sprawdza czy kilof ma konkretnie tylko ten enchant, gdy ma dodatkowe to zwraca juz ci wartosc false. Ja po prostu sprawdzilem level fortuny, bez sprawdzania czy kilof ją ma. Dzięki funkcji można zapisać kilka linijek w jednej, szczególnie dobre to jest gdy piszemy cały czas ten sam kod i zmieniamy tylko jakies pojedyncze liczby, wtedy w funkcji zmieniami tylko argumenty czyli to w () jakis tutorial, na oko da sie zrozumiec https://skript.pl/temat/21824-funkcje-rozwinięte/ Nie widziałem na youtubie osoby która potrafi pisać dobre skrypty i ma rozwiniętą na ich temat wiedzę. Więc nie. Nawet jeśli to nie polecam uczenia się z youtuba, jak zaczynałem to sam próbowałem z poradników, ale nic z tego nie rozumialem. Nauczyłem się dopiero kiedy zacząłem samemu analizować i lekko zmieniać napisane przez inne osoby skrypty. Na praktyce najlepiej mi się uczy. Podkreśliłem ci co jest tym samym
  12. Witam Wymagania - Skript 2.6.x + - 1.16.5 + - Vault Opis Skrypt pozwala na tworzenie losowań przez graczy. Komenda /losowanie Dodaje się przedmioty do odpowiedniego gui, po czym wciska się "zatwierdz". Następnie po minucie losowany jest gracz który otrzyma te itemy. Aby dołączyć wystarczy powtórzyć komendę. W options można ustawić cenę jaką trzeba zapłacić do stworzenia losowania. Komenda /losowaniedebug Pozwala na zresetowanie całego skryptu gdyby coś wylało. Download https://code.skript.pl/lrzqYsu9
  13. Masz, naprawiłem i poprawiłem kod. function diaxchance(p: player, i: integer): add {_i} of diamond to {_p}'s inventory send "&b&l[&e&lDROP&b&l] &7Wydropiłeś &7diament &bx%{_i}%!" to {_p} on mine of stone: player's gamemode is survival if player's held item is not enchanted with fortune: chance of 15%: diaxchance(player, 1) else if level of fortune of player's tool = 1: diaxchance(player, 2) else if level of fortune of player's tool = 2: diaxchance(player, 3) else if level of fortune of player's tool = 3: diaxchance(player, 4) add 12 exp to player
  14. Co to zmieni? Ktos z 2000 kratek bedzie mogl respic tam krowy @dropsiaczegh możesz ustalić sobie kordy respienia w options i ustal sobie region w jakim mają działać przyciski options: kordy: 100, 50, 200 on right click on stone button: clicked block is in region ("spawn" parsed as region) spawn cow at location({@kordy}) ignite last spawned cow
  15. Są 3 rodzaje zmiennych Zmienne gdzie przed nazwą znajduje się _ to zmienne czasowe jak np {_zmienna} działają one tylko w obrębie jednej komendy lub jednego eventu, po zakonczeniu usuwają sie Zmienne zwykłe czyli tam gdzie jest kropka lub brak znaku. Używa się do zapisania pojedynczej globalnej wartosci jak np kordy spawna swiata Zmienne grupowe czyli tam gdzie jest dwukropek używa się do zapisywania dużej ilości danych, lub danych dla gracza jak np {sethome::%player%}, dla każdego gracza wartość może być inna i jest wiele razy zapisywana. Na serwerze klasowym dla max 10 osób? Nie Jeżeli jednak ty lub ktokolwiek inny chciałby go używać na prawdziwym serwerze to inna bajka. To nie jest też tak, że jeden źle napisany skrypt zabija ci serwer, gdy już na takim serwerze znajdzie się ich kilka wtedy jest prawdziwy problem, dlatego najlepiej pisać je dobrze aby nie bylo z tym problemu.
  16. Do poprawy tu jest sporo 1. Zmiennych z kropką się nie używa, chyba że zapisujesz pojedyncze wartości. Powinno być {sethome1::%player%} {sethome1.%player%} 2. Taką zmienną to w ogóle widzę pierwszy raz, nie ma ona sensu. Powinno być {lokacjahome1::%player%} {lokacjahome1.::.%player%} 3. Zamiast tworzyć zmienne z innymi nazwami mogłeś to zrobić w jednej, jak np poprzez {sethome::1 2 3 itd::%player%} 4. Permisje sprawdzasz po kilka razy, mogłeś zapisać to w funkcji przy uzyciu return i kod byłby krótszy 5. Nie używasz stop przy zakończeniu jednego z argumentów, aktualnie nawet jak gracz wpisze 1 to nadal skrypt bedzie sprawdzal czy arg 1 to nie jest przypadkiem 5, alternatywą dla tego jest też else if 6. Zamiast tworzyć zmienną sethome i ustawiać ją na true oraz lokacjahome i ustawiać ją na lokacje to czemu po prostu zmienną sethome nie ustawisz na lokacje i nie sprawdzisz czy zmienna jest zapelniona? 7. Tittle również można było wrzucić do funkcji, z okazji iż zawsze dodajesz pustą linijkę przed 8. Komenda home to jedna wielka betonowa sciana 5 razy powtarzasz kod (powinna być na to funkcja), nie używasz zmiennych czasowych 9. Powinno być of event-inventory zamiast player's current inventory, spami to warnem w konsoli on inventory click: name of player's current inventory is "Twoje homy" clicked inventory is not player's inventory cancel event 10. Coś takiego nie powinno występować, powinieneś tu wywoływać funkcje zamiast executowac komende make player execute command "home 1" 11. Gui pozwala na kopiowanie/wyciaganie itemów. Powinno się je tworzyć poprzez zapisanie wszystkiego do zmiennej i na koncu jej otworzenie open chest with 3 rows named "Czy na pewno usunąć home 1?" to player 12. Jak coś to mamy 2023 a nie 2014, format slot jest calkowicie przestarzaly format slot 10 of player with 1 of red stained glass pane named "&cAnuluj" to run "sudo %player% home" 13. Te wszystkie gui od dołu mogły być zapisane w jednej funkcji. W jaki sposób? To ostatnie mogę pokazać. function delhome(p: player, i: integer): set {_} to chest inventory with 3 rows named "Czy na pewno usunąć home %{_i}%?" set slot 10 of {_} to 1 of red stained glass pane named "&cAnuluj" set slot 11 of {_} to 1 of red stained glass pane named "&cAnuluj" set slot 12 of {_} to 1 of red stained glass pane named "&cAnuluj" set slot 14 of {_} to 1 of lime stained glass pane named "&aPotwierdź" set slot 15 of {_} to 1 of lime stained glass pane named "&aPotwierdź" set slot 16 of {_} to 1 of lime stained glass pane named "&aPotwierdź" open {_} to {_p} A następnie wpisał byś jedynie delhome(player, 1), wtedy w inventory clicku trzeba dodać odczytywanie numeru z nazwy gui, kwestia 3-4 linijek
  17. Bo używasz zmiennych czasowych do zapisania lokacji, oraz powtarzasz ustawianie lokacji.
  18. Tak, skoro chcesz dostać samą liczbe która jest na końcu to usuń po prostu wyrazy przed tą 10 np uzywajac replace replace "&6Zombie &aLEVEL " with "" in {_} i zostanie ci sama cyfra
  19. Fendi

    napisanie skryptu

    czemu dwa razy usuwasz jabłko?
  20. Fendi

    Skrypt na kompas

    Skoro potrzebujesz pomocy to pokaż, tą część kodu z którą masz problem.
  21. Ciekawie będzie gdy zwykły gracz stworzy taki guzik i będzie spamić krowami po całej mapie Polecam sprawdzić region w jakim znajduje się przycisk
  22. Fendi

    Set

    function fEnchant(p: player, i: itemtype): set {_} to level of protection of {_i} remove {_i} from {_p} give {_i} with lore "&aProtection: %{_}%" with enchants flag hidden to {_p} on right click: player's tool is any armor lore of player's tool does not contain "&aProtection:" fEnchant(player, tool of player) on inventory click: event-inventory is player's inventory clicked slot is any armor lore of clicked slot does not contain "&aProtection:" fEnchant(player, clicked slot) Sprawdź sobie czy działa, wymaga skBee https://github.com/ShaneBeee/SkBee/releases/tag/2.18.4
  23. przecież to nie dość, że spowoduje crash serwera poprzez nieskonczoną pętle while, to dodatkowo nie ma to nic wspólnego z tematem, bedzie cie tepac co 300 sekund, a autor chce anty afka, gdzie odpowiedz zostala mu udzielona już tutaj https://skript.pl/temat/56577-skrypt-na-afk/#comment-338981
  24. Jeżeli używasz zabytkowej wersji skripta to oczywiście że wywala blad
×
×
  • Dodaj nową pozycję...