Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Skrypt na ukrycie enchantu


lizz0rek

Rekomendowane odpowiedzi

Opublikowano

Jest możliwość w skrypcie ukrycia enchantu np. hełmu protection IV, żeby po najechaniu nie wyświetlało enchantu.

To pytanie? (gdzie '?' lol)

 

@topic oczywiscie ze nie ma takiej mozliwosci.

 

 

JAVA <3

 

Opublikowano

A da się dać efekt protection w skrypcie ?

Mhm, jak to ma dzialac?

 

Zabieranie enchantu;

disenchant player's tool

zmiana enchantu;

enchant player's tool with ENCHANT

 

 

JAVA <3

 

Opublikowano

Nie da rady, nie ma takiego eventu ktory za to odpowiada.

Mozna jedynie dac loopa aby sprawdzalo wszystkich graczy czy maja dany enchant na swoim przedmiocie w lapce

 

 

JAVA <3

 

Opublikowano

Niee rozumiem za bardzo, powiedzmy ze mozna zrobic zmienna ktora bedzie dawala jakis mniejszy damage.

on damage:
    victim is player
    if {prot::%victim%} is true:
        cancel event
        damage 1 heart by victim

command /prot:
    trigger:
        set {prot::%player%} to true

on join:
    if player has permission "prot.*":
        set {prot::%player%} to true
    

 

 

JAVA <3

 

Opublikowano

@lizz0rek

 

Nie da się tego zrobić w skrypcie. Da się ewentualnie - jak pisałeś - zrobić coś na podobę prota. Jednak według mnie pisanie czegoś takiego raczej nie ma sensu. Trzeba by wiedzieć, jaką absorbcję obrażeń posiadają poszczególne enchanty, następnie ustalić mnóstwo zmiennych na poszczególnych itemach i napisać system do zdobywania tych enchantów. Jest to masa roboty.

 

@1361622928-U485574.pngEntify

 

on damage:
    victim is player
    if {prot::%victim%} is true:
       cancel event
       damage 1 heart by victim

 

1. Super, tylko to protection przy uderzeniu za 0,5 serca ustawi damage na 1 serce.

2. Attackerem będzie konsola, co totalnie uniemożliwi podpięcie tego do JAKIEGOKOLWIEK pluginu pvp/rankingowego.

3. Skrypt wywołuje nieskończoną rekurencje samego siebie. Po zadaniu graczowi obrażeń przez cokolwiek z tym skryptem, na chacie kilka razy wyświetli się wiadomość: [skript] <nazwa skryptu> infinietly repeated it'sself.

Po czym serwer zostanie wywalony.

4. W skrypcie są błędy. Jak już to coś takiego:

on damage of player:
    if {prot::%victim%} is true:
        set {_indmg} to damage
        set {_outdmg} to {_indmg}/2
        set damage to {_outdmg}
        stop

I ten oto prosty skrypcik zmniejszy każde otrzymywane obrażenia o połowę. Dziękuję.

:D  Let's start with MPCForum :D

 

 

 

30/50/69/100/150/200/250...

Opublikowano

@lizz0rek

 

Nie da się tego zrobić w skrypcie. Da się ewentualnie - jak pisałeś - zrobić coś na podobę prota. Jednak według mnie pisanie czegoś takiego raczej nie ma sensu. Trzeba by wiedzieć, jaką absorbcję obrażeń posiadają poszczególne enchanty, następnie ustalić mnóstwo zmiennych na poszczególnych itemach i napisać system do zdobywania tych enchantów. Jest to masa roboty.

 

@1361622928-U485574.pngEntify

 

on damage:
    victim is player
    if {prot::%victim%} is true:
       cancel event
       damage 1 heart by victim

 

1. Super, tylko to protection przy uderzeniu za 0,5 serca ustawi damage na 1 serce.

2. Attackerem będzie konsola, co totalnie uniemożliwi podpięcie tego do JAKIEGOKOLWIEK pluginu pvp/rankingowego.

3. Skrypt wywołuje nieskończoną rekurencje samego siebie. Po zadaniu graczowi obrażeń przez cokolwiek z tym skryptem, na chacie kilka razy wyświetli się wiadomość: [skript] <nazwa skryptu> infinietly repeated it'sself.

Po czym serwer zostanie wywalony.

4. W skrypcie są błędy. Jak już to coś takiego:

on damage of player:
    if {prot::%victim%} is true:
        set {_indmg} to damage
        set {_outdmg} to {_indmg}/2
        set damage to {_outdmg}
        stop

I ten oto prosty skrypcik zmniejszy każde otrzymywane obrażenia o połowę. Dziękuję.

Przecież to był tylko przykład, pisany w 15 sekund, a ty ten post pisałeś pewnie z 10 minut, nie rób z siebie jakiegoś pro super ultra skryptera, który będzie każdego poprawiał.

 

 

2. Attackerem będzie konsola, co totalnie uniemożliwi podpięcie tego do JAKIEGOKOLWIEK pluginu pvp/rankingowego.

 Jak konsola może uderzyc gracza? Interesujace, kto podpina w tych czasach SKRYPT do pluginu?

 

 

I ten oto prosty skrypcik zmniejszy każde otrzymywane obrażenia o połowę. Dziękuję.

Chyba autor tematu nie chcial aby damage zmniejszal sie o polowe, wiec nie czaruj.

 

 

 

4. W skrypcie są błędy. Jak już to coś takiego

W takim razie powiedz mi jaki to blad?

Bo nie dalem:

attacker is player

? ^^

 

i jeszcze ostatni raz powtarzam ze to byl przyklad, poza tym, po co odkopujesz temat?

 

 

JAVA <3

 

Opublikowano

@1361622928-U485574.pngEntify

 

No rozumiem że to jest przykład, ale ktoś nieświadomy mógł sobie ten skrypt odpalić.

 

Attacker to konsola:

 

Obrażenia "damage <gracz> by <ilość serc> hearts" to obrażenia typu "unkown". (mamy ich wiele: hunger, void, attack, projectile itd.) Obrażenia typu "unkown" są zadawane przez konsole. Przy śmierci danego gracza na chacie byłaby wiadomość "<victim> zginął" a nie np. "<victim> został zabity przez <attacker>". A do gracza przy śmierci wysyłane jest także: You have been slained by Console. Więc attackerem jest konsola. Wiem, bo już takie przypadki widziałem. Wiąże się też to z tym "podpinaniem". Chociażby stary jak świat plugin PvPLevels przestaje tu mieć rację bytu, bo attacker to konsola, więc skąd ma ten plugin wiedzieć, kto wywołał zadanie obrażeń przez inny skrypt przez konsolę?

 

A błąd jest chociażby w:

damage 1 heart by victim

Prawidłowe użycie:

damage victim by 1 heart

Ale był to tylko, jak sam pisałeś, przykład, więc nie jest to raczej akurat istotne.

 

 

A jeśli chodzi o "czarowanie", to ja nie pisałem tego skryptu jako odpowiedź na problem autora tematu, ale jako poprawę twojego przykładu. Wolę, aby przykład był prawidłowy.

:D  Let's start with MPCForum :D

 

 

 

30/50/69/100/150/200/250...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...