Skocz do zawartości
  • 0

Problem z antylogautem


Krzysiekkk

Pytanie

Witam, mam taki problem że podczas wali jak gracz sie wyloguje to tepa jego itemy na spawn

 

on damage:
    if attacker is player:
        if victim is player:
            if {antylogout::%victim%} is not set:
                send "&cJestes podczas walki! Nie logaj!" to victim
                send "&cJestes podczas walki! Nie logaj!" to attacker
            set {antylogout::%victim%} to 30
            set {antylogout::%attacker%} to 30
every 1 seconds:
    loop all players:
        if {antylogout::%loop-player%} is set:
            if {antylogout::%loop-player%} is greater than 0:
                remove 1 from {antylogout::%loop-player%}
                send action bar "&c&lAntyLogout &6&l[&e%{antylogout::%loop-player%}%&6sek&6&l]" to loop-player
            else:
                clear {antylogout::%loop-player%}
                send "&aSkonczyles walczyc." to loop-player
                send action bar "&aSkonczyles walczyc." to loop-player
on quit:
    if {antylogout::%player%} is set:
        teleport player to spawn
        kill player
        broadcast "&c%player% &7wylogowal sie podczas walki!"
on death:
    clear {antylogout::%victim%}
on command:
    if {antylogout::%player%} is set:
        if command is not "helpop":
            cancel event
            send "&4Uzywanie komend podczas pvp jest zablokowane."
on place:
    if player's y-coordinate is less than 30:
        if {antylogout::%player%} is set:
            cancel event
            send "&cPodczas walki nie stawiac blokow ponizej 30 poziomu!"



Te dwie wartowści Teleport player to spawn i kill player próbowałem ustawić na odwrót ale wtedy wypadają jego itemy przy graczu lecz po wejscu na serwer nie jest na spawn

Edytowane przez xNightPower_
Nieaktywny

Umieszczam kod w code.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/
Udostępnij na innych stronach

Rekomendowane odpowiedzi

  • 0
Teraz, Krzysiekkk napisał:

Witam, mam taki problem że podczas wali jak gracz sie wyloguje to tepa jego itemy na spawn

Jak słusznie zauważyłeś, problem leży w evencie 'on quit'. Powinieneś po prostu zabić gracza i ustawić mu zmienną przy wyjściu podczas walki. Następnie w evencie 'on join' sprawdzasz czy ta zmienna jest ustawiona - jeżeli tak, teleportujesz go na spawn i czyścisz zmienną.

Możliwa jest również taka sytuacja, że przy wejściu gracz (ten, który wyszedł podczas walki) będzie miał ekran śmierci i będzie zmuszony się odrodzić. W takim wypadku powyższy kod nie zadziała. Wtedy używasz eventu 'on respawn' i ustawiasz 'respawn location' jako lokalizację spawnu.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276670
Udostępnij na innych stronach

  • 0
7 minut temu, Kormic napisał:

Jak słusznie zauważyłeś, problem leży w evencie 'on quit'. Powinieneś po prostu zabić gracza i ustawić mu zmienną przy wyjściu podczas walki. Następnie w evencie 'on join' sprawdzasz czy ta zmienna jest ustawiona - jeżeli tak, teleportujesz go na spawn i czyścisz zmienną.

Możliwa jest również taka sytuacja, że przy wejściu gracz (ten, który wyszedł podczas walki) będzie miał ekran śmierci i będzie zmuszony się odrodzić. W takim wypadku powyższy kod nie zadziała. Wtedy używasz eventu 'on respawn' i ustawiasz 'respawn location' jako lokalizację spawnu.

on respawn:
    if {antylogout::%player%} is set:
        teleport player to spawn
Zrobiłem takie coś ale ten {antylogout::%player%} jest tylko przez 30 sek i jeśli gracz wbije po 1 min to tepa go tam gdzie sie wylogował 

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276673
Udostępnij na innych stronach

  • 0
Teraz, Krzysiekkk napisał:

on respawn:
    if {antylogout::%player%} is set:
        teleport player to spawn
Zrobiłem takie coś ale ten {antylogout::%player%} jest tylko przez 30 sek i jeśli gracz wbije po 1 min to tepa go tam gdzie sie wylogował 

Musisz zrobić w tym celu inną zmienną, która będzie tak długo jak gracz nie wejdzie na serwer. Dodam, że miałeś ustawić 'respawn location', nie teleportować go.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276675
Udostępnij na innych stronach

  • 0
4 godziny temu, Kormic napisał:

Musisz zrobić w tym celu inną zmienną, która będzie tak długo jak gracz nie wejdzie na serwer. Dodam, że miałeś ustawić 'respawn location', nie teleportować go.

on quit:
    if {antylogout::%player%} is set:
        set {logauty::%player%} to 9999999999999999999999999999
        kill player
        broadcast "&c%player% &7wylogowal sie podczas walki!"
on death:
    clear {antylogout::%victim%}
on command:
    if {antylogout::%player%} is set:
        if command is not "helpop":
            cancel event
            send "&4Uzywanie komend podczas pvp jest zablokowane."
on place:
    if player's y-coordinate is less than 30:
        if {antylogout::%player%} is set:
            cancel event
            send "&cPodczas walki nie stawiac blokow ponizej 30 poziomu!"
on respawn:
    if {logauty::%player%} is set:
        teleport player to spawn
        clear {logauty::%player%}


Coś źle zrobiłem

Edytowane przez xNightPower_
Nieaktywny

Umieszczam kod w code.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276678
Udostępnij na innych stronach

  • 0
2 minuty temu, Krzysiekkk napisał:

Coś źle zrobiłem

To jest pytanie czy stwierdzenie?

W kodzie nie widzę niczego źle zrobionego, ale ustaw po prostu zmienną {logauty::%player%} na 'true', tyle spokojnie wystarczy.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276680
Udostępnij na innych stronach

  • 0
2 minuty temu, Kormic napisał:

To jest pytanie czy stwierdzenie?

W kodzie nie widzę niczego źle zrobionego, ale ustaw po prostu zmienną {logauty::%player%} na 'true', tyle spokojnie wystarczy.

Bo właśnie i tak teleportuje gracza tam gdzie sie wylogował 

 

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276681
Udostępnij na innych stronach

  • 0
Teraz, Krzysiekkk napisał:

Bo właśnie i tak teleportuje gracza tam gdzie sie wylogował 

 

Dlatego właśnie nie powinieneś go teleportować, a powinieneś ustawić 'respawn location'.

set respawn location to spawn

 

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276682
Udostępnij na innych stronach

  • 0
3 godziny temu, Kormic napisał:

Dlatego właśnie nie powinieneś go teleportować, a powinieneś ustawić 'respawn location'.



set respawn location to spawn

 

tak ?

on respawn:
    if {logauty::%player%} is set:
        set respawn location to spawn
        clear {logauty::%player%}

 

Edytowane przez xNightPower_
Nieaktywny

Umieszczam kod w code.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276683
Udostępnij na innych stronach

  • 0
3 godziny temu, Krzysiekkk napisał:

tak ?


on respawn:
    if {logauty::%player%} is set:
        set respawn location to spawn
        clear {logauty::%player%}

 

Tak, dokładnie.

Edytowane przez xNightPower_
Nieaktywny

Naprawiam cytat.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276686
Udostępnij na innych stronach

  • 0
3 godziny temu, Kormic napisał:

Pokaż ponownie twój cały kod.

on damage:
    if attacker is player:
        if victim is player:
            if {antylogout::%victim%} is not set:
                send "&cJestes podczas walki! Nie logaj!" to victim
                send "&cJestes podczas walki! Nie logaj!" to attacker
            set {antylogout::%victim%} to 30
            set {antylogout::%attacker%} to 30
every 1 seconds:
    loop all players:
        if {antylogout::%loop-player%} is set:
            if {antylogout::%loop-player%} is greater than 0:
                remove 1 from {antylogout::%loop-player%}
                send action bar "&c&lAntyLogout &6&l[&e%{antylogout::%loop-player%}%&6sek&6&l]" to loop-player
            else:
                clear {antylogout::%loop-player%}
                send "&aSkonczyles walczyc." to loop-player
                send action bar "&aSkonczyles walczyc." to loop-player
on quit:
    if {antylogout::%player%} is set:
        set {logauty::%player%} to true
        kill player
        broadcast "&c%player% &7wylogowal sie podczas walki!"
on death:
    clear {antylogout::%victim%}
on command:
    if {antylogout::%player%} is set:
        if command is not "helpop":
            cancel event
            send "&4Uzywanie komend podczas pvp jest zablokowane."
on place:
    if player's y-coordinate is less than 30:
        if {antylogout::%player%} is set:
            cancel event
            send "&cPodczas walki nie stawiac blokow ponizej 30 poziomu!"
on respawn:
    if {logauty::%player%} is set:
        set respawn location to spawn
        clear {logauty::%player%}

 


A może to jakiś problem z AuthMe

Edytowane przez wiktorm12
wiktorm12

Wstawiam w code

Notatka dodana przez wiktorm12

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276694
Udostępnij na innych stronach

  • 0
Teraz, Krzysiekkk napisał:

A może to jakiś problem z AuthMe

Możliwe. Skoro operujesz na evencie 'on respawn' zamiast 'on join', to rozumiem, że przy wejściu na serwer gracz miał ekran śmierci, tak? Pytam, bo to też może być przyczyna braku działania skryptu.

Szczerze to nie widzę w tym skrypcie błędów, podejrzewam, że jakiś plugin, bądź skrypt wpływa na jego działanie.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276698
Udostępnij na innych stronach

  • 0
2 minuty temu, Kormic napisał:

Możliwe. Skoro operujesz na evencie 'on respawn' zamiast 'on join', to rozumiem, że przy wejściu na serwer gracz miał ekran śmierci, tak? Pytam, bo to też może być przyczyna braku działania skryptu.

Szczerze to nie widzę w tym skrypcie błędów, podejrzewam, że jakiś plugin, bądź skrypt wpływa na jego działanie.

Po wejściu na serwer gracz ma ekran śmierci :(

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276702
Udostępnij na innych stronach

  • 0
Teraz, Krzysiekkk napisał:

Po wejściu na serwer gracz ma ekran śmierci :(

W takim razie winny jest inny skrypt, bądź plugin. Istnieje również niewielka szansa na to, że problem leży w twoim Skript'cie.

Podaj:

  • wersję serwera
  • silnik serwera
  • wersję Skripta
Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276709
Udostępnij na innych stronach

  • 0
3 godziny temu, Kormic napisał:

W takim razie winny jest inny skrypt, bądź plugin. Istnieje również niewielka szansa na to, że problem leży w twoim Skript'cie.

Podaj:

  • wersję serwera
  • silnik serwera
  • wersję Skripta

1.16.4 , Paper , 2.5.3

 

3 godziny temu, Krzysiekkk napisał:

1.16.4 , Paper , 2.5.3

generalnie teraz wylaczyłem Authme i już działa ale kurcze co mam zrobić z tym Authme bo jakoś gracze muszą sie logować

Nieaktywny

Łączę posty.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276710
Udostępnij na innych stronach

  • 0
Teraz, Krzysiekkk napisał:

generalnie teraz wylaczyłem Authme i już działa ale kurcze co mam zrobić z tym Authme bo jakoś gracze muszą sie logować

Sprawdź czy nie masz czegoś źle ustawionego w pliku konfiguracyjnym AuthMe. Jakiś 'force respawn' albo coś tego typu, nie wiem szczerze jak to się może nazywać, musisz samemu poszukać.

Edytowane przez Kormic
Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276716
Udostępnij na innych stronach

  • 0
on respawn:
    if {logauty::%player%} is set:
        kick player
        clear {logauty::%player%}
44 minuty temu, Kormic napisał:

Sprawdź czy nie masz czegoś źle ustawionego w pliku konfiguracyjnym AuthMe. Jakiś 'force respawn' albo coś tego typu, nie wiem szczerze jak to się może nazywać, musisz samemu poszukać.

jeszcze jest jeden pomysł aby po tym jak gracz kliknie respawn wywalało go z serwera aby jeszcze raz wbił tylko jak to zrobic

Robie takie cos ale nie działa 

 

Edytowane przez xNightPower_
Nieaktywny

Umieszczam kod w code.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276727
Udostępnij na innych stronach

  • 0
5 godzin temu, Krzysiekkk napisał:

jeszcze jest jeden pomysł aby po tym jak gracz kliknie respawn wywalało go z serwera aby jeszcze raz wbił tylko jak to zrobic

Robie takie cos ale nie działa 

Nie możesz ustawić tego w configu AuthMe?

Jeżeli już chcesz zrobić to poprzez wywalanie go z serwera, przy respawnie zapisujesz mu kolejną zmienną, wyrzucasz gracza z serwera i przy dołączeniu sprawdzasz czy ta zmienna jest ustawiona. Jeżeli tak, teleportujesz gracza na spawn i czyścisz tę zmienną.

Odnośnik do komentarza
https://skript.pl/temat/44131-problem-z-antylogautem/#findComment-276787
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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