-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
Nie odczytuje mi zmiennej z yaml
Kormic odpowiedział(a) na giteczek12PL pytanie w Pytania i problemy
Widzę, że używasz zmiennej lokalnej przy attackerze, czy to jest zamierzone? -
Nie odczytuje mi zmiennej z yaml
Kormic odpowiedział(a) na giteczek12PL pytanie w Pytania i problemy
Usuń dwukropek w drugiej linijce przy przechwytywaniu wartości. -
1. To jest dział Skript, tego typu pytania powinieneś zamieścić w dziale Gry komputerowe > Wszystko o Minecrafcie. 2. Masz pewność, że to jest plugin, a nie skrypt? 3. Jeżeli jest to na pewno plugin, to czy masz pewność, że jest w ogóle upubliczniony, a nie przykładowo autorski?
-
Musiałbyś najpewniej zrobić jakąś zmienną, która sprawdzałaby czy odliczanie się zakończyło. Przy jego rozpoczęciu zmienna byłaby ustawiana, a po zakończeniu byłaby czyszczona. Jeżeli odliczanie trwa (czyli jeżeli zmienna jest ustawiona), a gracz został uderzony, to w takim wypadku nie będzie go wypychało w ogóle.
-
Jeżeli nie napisałeś do czego jest ci potrzebny taki skrypt, to nie mam czego ci doradzać. Opisiz jaki efekt chcesz osiągnąć, a będę w stanie cię nakierować.
-
Dlatego, że przy każdym uderzeniu tworzysz nowe odliczanie i popychanie w dół nakłada się w wypychaniem w górę.
-
Co próbujesz zrobić z tym kodem?
-
Nie rozumiem dlaczego ludzie używają formy 'typ-arg numer_argumentu'. Wystarczy odnosić się do danego argumentu poprzez 'arg numer_argumentu'. Tak też zrobiłbym w twoim przypadku. 3. błąd nawiązuje do tego, że w event'cie 'on damage' użyłeś 'arg 1'.
-
No okej. Nie podałeś dokładnie w czym leży problem, więc nikt ci tego nie naprawi, a skrypt jak nie działa, tak dalej nie będzie działał.
-
W takim razie słabo szukasz. Wystarczyło wyszukać "skywars plugin". https://dev.bukkit.org/projects/skywars
-
Niepotrzebnie sprawdzasz wielokrotnie czy arg 1 jest ustawiony. Wystarczyłoby to raz sprawdzić, a nawet właściwie niewymagane jest sprawdzanie tego. Możesz sprawdzić czy argument nr 1 nie jest ustawiony, bądź posiada jakąś wartość. if arg 1 is not set: # Kod nr 1 if arg 1 is "1": # Kod nr 2 else if arg 1 is "2": # Kod nr 3 # I tak dalej... Musisz zmienić typ argumentu 1 na 'integer' w pierwszej linijce komendy (zamieniasz 'text' na 'integer') i wtedy porównywać arg 1 do liczby. Przed porównywaniem do liczb musisz sprawdzić czy arg 1 jest większy bądź równy 6, za pomocą warunku: if arg 1 is greater than or equal to 6: send "Zbyt duża wartość!" stop
-
Proszę. W linijce nr 2 ustawiasz nazwę świata, w którym gracze mają mieć stały pasek głodu. on hunger meter change: event-world is "world" cancel event
-
W takim razie ustaw {_tymcz} na (loop-index parsed as integer) + 1 i użyj tej zmiennej tak jak wcześniej to robiłeś.
-
Należy pamiętać o tym, że spadający blok to entity, nie blok. Możliwe również, że masz jakieś lagi na serwerze albo uchwyciłeś blok w dziwnym momencie.
-
Proszę. Wymagany Skript 2.3+. on command: full command is "g baza" loop 5 times: send action bar "&6Teleportacja za &e%6 - loop-number% &6sekund!" to player wait 1 second send "&aTeleportacja przebiegła pomyślnie!" to player
-
Po prostu sprawdź w evencie 'on damage of player' czy zmienna {ochrona::czas::%attacker%} jest ustawiona. Jeżeli tak, to anulujesz event.
-
Ile trwa te odliczanie?
-
Macie sposoby na naukę pisania skryptów?
Kormic odpowiedział(a) na Rayzz pytanie w Pytania i problemy
Przepisywanie innych jest jedynie dobre gdy przepisujesz kod skryptera, który wie co robi. Szczerze ciężko zapisać kilka porad, mógłbym jedynie napisać czego NIE należy robić w kodzie. Tutaj fragment naszej forumowej wiki dot. Skripta: https://wiki.skript.pl/Kategoria:Skript Tutaj natomiast znajdziesz w miarę pomocne poradniki na Bukkit'cie (masz spis treści po prawej stronie poradnika): https://dev.bukkit.org/projects/skript/pages/custom-commands- 3 odpowiedzi
-
- pisanie skrypow
- skypt
-
(i 3 więcej)
Oznaczone tagami:
-
Niech zgadnę. Operujesz na jakiejś starej wersji Skripta, mam rację?
-
Zauważ, że używasz loop-index od "Obrazenia:", a powinieneś użyć {_lore::%{_tymcz} + 1%}.
-
Pokaż cały skrypt.
-
Jak dawać graczowi nazwany item skript?
Kormic odpowiedział(a) na PolsatGraniePL pytanie w Pytania i problemy
No to chyba problem zażegnany. Skoro masz numeryczne ID i Skript pozwala ci na użycie go, nie ma problemu. Pamiętaj tylko, że na nowszych wersjach numeryczne ID jest już porzucone i niewspierane. -
Jak dawać graczowi nazwany item skript?
Kormic odpowiedział(a) na PolsatGraniePL pytanie w Pytania i problemy
Ten przedmiot jest z pixelmonów, tak? Najlepiej byłoby ustawiać go w jakiś sposób do zmiennej, a następnie w tej zmiennej go nazywać. Mimo wszystko, działanie na przedmiotach z modów w Skript'cie jest dosyć uciążliwe, gdyż w pluginie nie ma przystosowanych do nich aliasów. Testowo możesz użyć tego kodu: set {_i} to pixelmon:green_rug set {_i}'s name to "Test" give player {_i} Szczerze wątpię, aby zadziałał, ale spróbować nie zaszkodzi. Owszem, można ustawić nazwę narzędzia gracza, ale przy dawaniu graczowi tego itemu niekoniecznie znajdzie się on w łapce gracza. Jeżeli wiesz, w którym slocie znajdzie się ta kasa, proszę bardzo. set name of slot 45 of player's current inventory to "Test" -
item Jak sprawdzić jaki item aktualnie trzymasz skript?
Kormic odpowiedział(a) na PolsatGraniePL pytanie w Pytania i problemy
Użyj wyrażenia 'player's tool'.- 3 odpowiedzi
-
- sprawdzanie
- skript
-
(i 1 więcej)
Oznaczone tagami:
-
Skrypt wygląda okropnie. Pełno zagnieżdżonych w sobie conditionali. # Zamiast robić tak: if arg 1 is set: if arg 2 is set: if arg 3 is set: if arg 4 is set: # Twój dalszy kod... else: send "Nie podałeś argumentu nr 4!" else: send "Nie podałeś argumentu nr 3!" else: send "Nie podałeś argumentu nr 2!" else: send "Nie podałeś argumentu nr 1!" # Powinieneś robić tak: if arg 1 is not set: send "Nie podałeś argumentu nr 1!" stop if arg 2 is not set: send "Nie podałeś argumentu nr 2!" stop if arg 3 is not set: send "Nie podałeś argumentu nr 3!" stop if arg 4 is not set: send "Nie podałeś argumentu nr 4!" stop # Twój dalszy kod.. Różnica w czytelności kodu duża, nieprawdaż? Co do twojego problemu, musisz wiedzieć, w której linijce lore jest ta wartość zapisana. Jeżeli już wiesz która to, wtedy wyciągasz subtextem wartość z tego tekstu i parse'ujesz ją na typ 'integer' lub 'number', aby móc wykonywać na niej działania matematyczne jak chociażby dodawanie. Wtedy zwiększoną wartość możesz użyć gdzie tylko chcesz.
