Skocz do zawartości

PanMaruda

Użytkownik
  • Ilość zawartości

    1471
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    40

Treść opublikowana przez PanMaruda

  1. on click on player: distance between clicked entity and player > 3: send "elo" to player and clicked entity
  2. Jedna linijka = jeden warunek a ty w jednej chcesz zrobić dwa if {zmienna} is an integer: if {zmienna} is between 0 and 9: #kod
  3. PanMaruda

    Błąd argument

    Bo znając życie typy argumentów nie odpowiadają wymaganym typom przy tym efekcie + używasz procentów w składni, a służą one tylko i wyłącznie do wstawiania zmiennych w TEKST.
  4. on mine: if event-block is fully growth carrot plant: cancel event set event-block to air drop (1 or 2 or 3) of carrot item named "Rzepa" at event-block wait 5 seconds if event-block is air: if block below event-block is farmland: set event-block to carrot plant
  5. Tak, da się to zrobić, trzeba jednak wygenerować całą listę z topką, czyli jeżeli lista ma 4000 wyników to wszystkie 4000 trzeba wziąć pod uwagę, a nie powiedzmy tylko 10 najlepszych - wiąże się to z większym lagiem zależnie od wielkości topki. Do sedna: #powiedzmy że topke masz w zmiennej {topka::diaxy::*}, robimy wszystko normalnie jak poprzednio #tylko że w miejscu rozmiaru topki podajemy rozmiar zmiennej (size of {topka::diaxy::*}) set {_top::*} to createTop("topka::diaxy", (size of {topka::diaxy::*}), (all offline players), "&6[index]&e: &f[player]") #no i teraz ta zmienna {_top::*} ma te wszystkie posegregowane wartości, jeżeli graczy jest 10, to jest ich 10, jeżeli 4000 to 4000 itd. #teraz dodajemy ręcznie powiedzmy 5 pierwszych wyników do lore: add "Topka diaxów:" to {_lore::*} loop 5 times: add {_top::%loop-value%} to {_lore::*} #no i zostaje teraz tylko ta pozycja gracza - musimy zapętlić całą listę (w zasadzie nie całą - bo tylko do numeru, w którym znajdziemy szukanego gracza) #jakby nie było to wszystkie te wartości bierzemy w pętlę i przyrównujemy nick gracza z zawartością add "" to {_lore::*} loop {_top::*}: if loop-value contains name of player: add "Twoja pozycja: %loop-index%" to {_lore::*} #ewentualnie #add loop-value to {_lore::*} stop loop Ewentualnie możesz przy starcie serwera przypisać każdemu graczowi osobną zmienną z jego miejscem w danej topce, a potem tylko odczytać z niej wartość, np. {topka::diaxyMiejsce::%player%}
  6. Nic, ten kod wystarczy. Jeżeli tobie nie działa, to znaczy, że masz jakąś upośledzoną wersję skripta albo silnika.
  7. A ten plugin nie daje przypadkiem możliwości dodania aliasów do komend w konfiguracji?
  8. Pobierasz potrzebne dodatki, przechodzisz do folderu /plugins/Skript/scripts/ i tam tworzysz plik z rozszerzeniem .sk o dowolnej nazwie - wklejasz do niego kod skryptu. Wpisujesz komendę /sk reload nazwa lub restartujesz serwer. O ile wszystkie warunki są spełnione to skrypt będzie działał.
  9. Tak, są to armor standy, czyli entity, czyli są tworzone, i wysyłane przez serwer. Jeżeli więc serwer nie wyśle graczowi informacji o istnieniu danego amor standa z nazwą, to ten gracz go nie zobaczy. Bum, hologramy dla wybranych graczy. Wymaga ProtocolLib. create client side holo object %string% with id %string% at %location% to %player% create interactive client side holo object %string% with id %string% at %location% to %player%
  10. PanMaruda

    Anty-xray

    Silnik PaperSpigot ma wbudowany antyxray - można go aktywować w konfiguracji.
  11. on any move: if y-loc of player >= 35: cancel event send "nie mozesz wyjsc wyzej" teleport player to {last::%player%} else: set {last::%player%} to location of player Wymaga SkQuery.
  12. Musisz wejść do konfiguracji pluginu i tam zdefiniować domyślną bazę danych.
  13. set {_lore} to join {_lista::*} with nl I dalej zamiast lore podajesz powyższą zmienną.
  14. options: chatTag: [LC] marryYouReceived: &e%player%&r would like to marry you! Type /marry %player% to accept, or /marry decline %player% to decline.
  15. do 1.12.2 skript maksymalnie w wersji 2.3, reszta jest na nowsze wersje 1.13+ Bo komentarz zapisuje się jako jeden znak #, podwójny oznacza, że chcesz aby składnia go zawierała.
  16. PanMaruda

    Godzina

    command /godzina [<text>]: trigger: set {_godzina} to now formatted as "HH:mm" send "%{_godzina}%" Wymaga Skript 2.2-dev31
  17. Do tego potrzeba napisać skrypt na bany od nowa lub podpiąć się pod api pluginu, który je odsługuje. To nie jest nic przyjemnego ani tak łatwego jak ci się może wydaje. Jeżeli cię to zadowoli - możesz użyć tego skryptu, który wyśle dźwięk za każdym razem gdy ktoś użyje komendy /ban /kick: on command: command = "ban": sender = op or console: play sound "BLOCK_ANVIL_BREAK" at volume 1 to all players on kick: play sound "BLOCK_ANVIL_BREAK" at volume 1 to all players Tak jak powyżej, aby pobrać informacje o banie, trzeba mieć dostęp do skryptu / pluginu na bany lub ich bazy danych w pliku tekstowym. Nie licz na to że cenzura będzie w pełni funkcjonalna: on chat: if message contains "dupa" or "pedał" or "pedal": #dalej według wzoru execute console command "mute %player% 10 m" A ja z miłą chęcią przyjąłbym pieniążki na rzecz swoją - za pomoc w sprawach technicznych.
  18. PanMaruda

    POTKI SILY 2

    on consume: event-item is potion of strength 2: cancel event on rightclick: tool of player is spash potion of strength 2: cancel event
  19. PanMaruda

    Prosty skrypt na LvL

    on death of player: attacker is a player: if {lvl::%attacker%} is not set: set {lvl::%attacker%} to 0 set {lvlP::%attacker%} to 0 add 1 to {lvlP::%attacker%} if {lvlP::%attacker%} >= ({lvl::%attacker%} + 1): add 1 to {lvl::%attacker%} set {lvlP::%attacker%} to 0 on chat: if {lvl::%player%} > 3: set chat format to "[%{lvl::%player%} ? 0%] %chat format%" else: cancel event send "nie masz 3 lvl"
  20. Nie wiem czy wiesz, ale to korzysta z tego samego wydarzenia, czyli on walk = on any move Zrób test i sprawdź co bardziej obciąża ci serwer (nie wiem - przez timingi czy coś) - wydarzenie on any move, czy pętla dla każdego gracza z opóźnieniem.
  21. PanMaruda

    Prosty skrypt na LvL

    on death of player: attacker is a player: if {lvl::%attacker%} is not set: set {lvl::%attacker%} to 0 set {lvlP::%attacker%} to 0 add 1 to {lvlP::%attacker%} if {lvlP::%attacker%} >= ({lvl::%attacker%} + 1): add 1 to {lvl::%attacker%} set {lvlP::%attacker%} to 0 on chat: set chat format to "[%{lvl::%player%}%] %chat format%"
  22. PanMaruda

    Prosty skrypt na LvL

    on death of player: attacker is a player: if {lvl::%attacker%} is not set: set {lvl::%attacker%} to 0 set {lvlP::%attacker%} to 0 add 1 to {lvlP::%attacker%} if {lvlP::%attacker%} => ({lvl::%attacker%} + 1): add 1 to {lvl::%attacker%} set {lvlP::%attacker%} to 0 on chat: set chat format to "[%{lvl::%attacker%}%] %chat format%"
  23. Przydałyby się automatyczne taby po rozpoczęciu nowej linii - a do tego byłoby wspaniale gdyby ten kod dało się kolorować ręcznie.
  24. Wierz mi lub nie, ale sprawdzanie przemieszczeń gracza nawet te klika razy na sekundę jest lepsze niż jedna pętla z opóźnieniem albo tak jak w przykładzie powyżej - tyle pętli ilu będzie graczy.
  25. Wiesz, jeżeli potrzebujesz zrobić tylko zwykłe klikalne GUI bez żadnych udziwnień (jak w temacie) to TuSKe > wszystko inne - jeden efekt, jedna linijka i masz wszystko gotowe - a set slota trzeba konfigurować od zera. Jedyny minus to taki że TuSKe jest stare i drobne błędy występują, tylko że one nie są żadnym problemem, a nawet pomagają bo kod jest bardziej przejrzysty jak masz długą linijkę rozbitą na dwie części.
×
×
  • Dodaj nową pozycję...