Skocz do zawartości
  • 0

Usuwanie sakiewek


Kowalski_2M

Pytanie

Witam posiadam serwer na wersji 1.21.4 i jest tam bug z sakiewkami czy jest możliwość napisania skryptu który usuwa sakiewki graczowi z Eq bądź zabranie możliwość używania ich ?

Edytowane przez Kowalski_2M
Odnośnik do komentarza
https://skript.pl/temat/58916-usuwanie-sakiewek/
Udostępnij na innych stronach

1 odpowiedź na to pytanie

Rekomendowane odpowiedzi

  • 0

# block_sakiewki.sk
# Wersja: 1.0
# Działa na Skript (standard). Dostosuj listy poniżej.

# ---- Ustawienia: edytuj te listy wedle potrzeb ----
# nazwy (display name) - sprawdzanie w trybie case-insensitive, "contains"
# wpisuj tylko fragmenty nazwy, np. "Sakiew", "Pouch", "Bag"
{banned.names::*}:
  1: sakiew
  2: pouch
  3: bag

# fragmenty lore (również case-insensitive)
{banned.lore::*}:
  1: sakiew
  2: pouch

# materiały (dokładne nazwy materiałów Minecraft, np. LEATHER, TRIPWIRE_HOOK itd.)
# jeśli nie znamy typu, zostaw pustą lub dopisz materiały które chcesz blokować
{banned.materials::*}:

# ---- Koniec ustawień ----

# Funkcja pomocnicza: sprawdza czy przedmiot pasuje do listy zabronionych
function isBannedItem(it: item) :: boolean:
  if it is air: return false
  # sprawdź nazwy
  if display name of it is set:
    set {_d} to lower-case(display name of it)
    loop {banned.names::*}:
      if {_d} contains lower-case(loop-value):
        return true
  # sprawdź lore
  if lore of it is set:
    set {_l::*} to lore of it
    loop {_l::*}:
      set {_line} to lower-case(loop-value)
      loop {banned.lore::*}:
        if {_line} contains lower-case(loop-value):
          return true
  # sprawdź materiał
  if type of it is set:
    loop {banned.materials::*}:
      if name of type of it is equal to upper-case(loop-value):
        return true
  return false

# Usuwanie z całego ekwipunku gracza (wywołamy przy join i komendą)
command /clearsacks [<player>]:
  permission: clearsacks.use
  permission message: Nie masz uprawnień.
  trigger:
    if arg is set:
      clearSacks(arg)
      send "&aPomyslnie usunięto sakiewki z %arg%." to player
    else:
      clearSacks(player)
      send "&aPomyslnie usunięto sakiewki z twojego ekwipunku." to player

# Komenda pomocnicza wykonująca czyszczenie
function clearSacks(p: player):
  loop integer from 0 to 40:
    set {_item} to player's inventory's slot loop-value
    if isBannedItem({_item}):
      set player's inventory's slot loop-value to air
  # też sprawdź item w ręce i ekwipunek poza slotami standardowymi
  if isBannedItem(player's tool):
    remove player's tool
  # Ender chest
  loop {_i} in all items in player's ender chest:
    if isBannedItem({_i}):
      remove {_i} from player's ender chest

# Czyszczenie przy dołączeniu (zadbaj o backup świata)
on join:
  clearSacks(player)

# Blokowanie użycia (np. prawy klik)
on rightclick:
  if isBannedItem(event-item):
    cancel event
    remove event-item from player
    send "&cTen przedmiot jest zablokowany i został usunięty." to player

# Blokowanie przenoszenia w ekwipunku (kliknięcie)
on inventory click:
  if isBannedItem(clicked item):
    cancel event
    # usuń przedmiot żeby nie został przeniesiony
    remove clicked item from player
    send "&cTen przedmiot jest zablokowany i został usunięty." to who clicked

# Blokowanie podnoszenia
on pickup of item:
  if isBannedItem(event-item):
    cancel event
    remove event-item

# Dodatkowe: blokowanie wyrzucania i drag
on drop item:
  if isBannedItem(dropped item):
    remove dropped item
    send "&cTen przedmiot jest zablokowany i został usunięty." to player

on inventory drag:
  loop all items in dragged items:
    if isBannedItem(loop-value):
      cancel event
      send "&cTen przedmiot jest zablokowany i został usunięty." to event-player
      remove loop-value

# Safety: opcjonalny okresowy task (co 30 sekund) do usuwania resztek
every 30 seconds:
  loop all players:
    clearSacks(loop-player)
 

Nie wiem czy dziala, jak beda bledy pisz pv

Odnośnik do komentarza
https://skript.pl/temat/58916-usuwanie-sakiewek/#findComment-347261
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Nieaktywny
Odpowiedz na pytanie...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...