Skocz do zawartości

Rekomendowane odpowiedzi

Użytkownik
on damage of player:
    if victim is player:
        set {antylogout::%victim%} to true
        set {antylogout::%attacker%} to true
        send "%{AntyLogOut1}%"
        wait 20 seconds
        set {antylogout::%victim%} to false
        set {antylogout::%attacker%} to false
        send "%{AntyLogOut2}%"
        stop

Czyli jeżeli cię uderzę, odczekam 15 sekund i uderzę ponownie to mój antylogout z drugiego uderzenia zamiast 20 będzie trwał tylko 5 sekund bo pierwsze uderzenie go wyzeruje.

Jeżeli uderzę cię 10 razy w ciągu 20 sekund to w ciągu kolejnych 20 sekund od ostatniego uderzenia otrzymamy 10 wiadomości o wyłączeniu antylogout

Żeby nie powtarzać kodu, to wiedz że można użyć listy zmiennych w takim przypadku:

set {ziemniak}, {ziemniaczek} and {kartofelek} to "pyrki"

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
VIP++

Po co jakiś słaby config yml jak i tak się nie da żadnej opcji zmienić? 

if file "plugins/PVPKits/ScoreBoard.sk" co to jest? 

Antylogaut bedzie się zerowal 20sek po każdym uderzeniu. 

 

Czy ty chociaż to testowałes? Lub wygrałeś na jakiś serwer? 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik

@up gdybyś zajrzał do tego pliku to byś wiedział że pobiera to nazwę z tego pliku. Jeżeli nie da się to może łaskawie napiszesz jak dodać opcję zmieniania opcji YML, jedynie co widzę to wasze bezsensowne komentarze, które tylko piszą o tym jaki to skrypt słaby, a może ktoś napisze co i jak? Naprawdę jesteście na tyle.. Ahh szkoda gadać, najpierw to i to zrób, a kiedy się to zrobi to blee, bo źle nie da się nic zmienić...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
VIP++
17 minut temu, CountingDogs napisał:

@up gdybyś zajrzał do tego pliku to byś wiedział że pobiera to nazwę z tego pliku. Jeżeli nie da się to może łaskawie napiszesz jak dodać opcję zmieniania opcji YML, jedynie co widzę to wasze bezsensowne komentarze, które tylko piszą o tym jaki to skrypt słaby, a może ktoś napisze co i jak? Naprawdę jesteście na tyle.. Ahh szkoda gadać, najpierw to i to zrób, a kiedy się to zrobi to blee, bo źle nie da się nic zmienić...

Nic nie poprawiłes z yml więc no. 

set yaml value "AntyLogOut1" from file "plugins/PVPKits/Message.yml" to "&6[&4AntyLogOut&4] &aJestes w trakcie walki, nie wychodz z gry!"
        set {AntyLogOut1} to yaml value "AntyLogOut1" from file "plugins/PVPKits/Message.yml"

Ustawiasz opcje yml i odrazu ustawiasz zmienna na tą opcję. Zmiana czegoś w pliku nic nie da ponieważ zapisuje się to do zmiennych tylko gdy plik zostanie usunięty. 

 

Nawet nie sprawdziłes czy kod wywala błędy... 

Pisze co zmienić / co nie dziala a ty to olewasz i tak. 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
VIP++
2 minuty temu, CountingDogs napisał:

To wyjaśnij jakim cudem mi poprawnie działa?

Niemożliwe żeby to ci nie wywaliło błędu if file "plugins/PVPKits/ScoreBoard.sk"

Tak samo że zapisuja ci się zmienione opcje w configu. 

set yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml" to "&b&lTwoje statystyki"
        set yaml value "Smierci" from file "plugins/PVPKits/ScoreBoard.yml" to "&a&lSmierci:"
        set {ScoreBoard} to yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml"
        set {Smierci} to yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml"
 

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik

@up u mnie ta część kodu wygląda inaczej

	if file "plugins/PVPKits/ScoreBoard.sk" doesn't exists:
		create file "plugins/PVPKits/ScoreBoard.yml"
		set yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml" to "&b&lTwoje statystyki"
		set yaml value "Smierci" from file "plugins/PVPKits/ScoreBoard.yml" to "&a&lSmierci:"
		set {ScoreBoard} to yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml"
		set {Smierci} to yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml"


Spróbuję ponownie wrzucić na CodeSkript

Wrzuciłem na codeskript ponownie, sprawdźcie czy błąd nadal występuje.

Edytowane przez CountingDogs

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
VIP++
8 minut temu, CountingDogs napisał:

@up u mnie ta część kodu wygląda inaczej

	if file "plugins/PVPKits/ScoreBoard.sk" doesn't exists:
		create file "plugins/PVPKits/ScoreBoard.yml"
		set yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml" to "&b&lTwoje statystyki"
		set yaml value "Smierci" from file "plugins/PVPKits/ScoreBoard.yml" to "&a&lSmierci:"
		set {ScoreBoard} to yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml"
		set {Smierci} to yaml value "ScoreBoard" from file "plugins/PVPKits/ScoreBoard.yml"


Spróbuję ponownie wrzucić na CodeSkript

Wrzuciłem na codeskript ponownie, sprawdźcie czy błąd nadal występuje.

Yml l i tak nie zadziała 

Daj całe zapisywanie do zmiennych na sam koniec i daj taba mniej. 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
VIP++
13 minut temu, CountingDogs napisał:

Równie dobrze, mógłbym zrobić osobne YML i osobny kod skryptu, ale nie wiem

Ty chyba nadal nie rozumiesz że to coś co zrobiłeś to żaden config ponieważ nic się nie zapisze. Wsm tak samo jest w twoich innych "skryptach" 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
VIP++
1 minutę temu, CountingDogs napisał:

@xAxee, jakoś ja mogę bez żadnego problemu zmienić, więc nie wiem jak wy nie możecie skoro ja mogę. Wchodzę w plugins/PVPKits/Messages.yml i zmieniam co chcę i jak chcę.

zmienić sobie możesz ale nic to nie zmieni w skrypcie.

Może ci to wyjaśnie co zrobiłeś:

if file "plugins/PVPKits/Message.yml" doesn't exists: #Sprawdza czy plik nie istnieje
	create file "plugins/PVPKits/Message.yml" #Tworzysz plik
	set yaml value "AntyLogOut1" from file "plugins/PVPKits/Message.yml" to "&6[&4AntyLogOut&4] &aJestes w trakcie walki, nie wychodz z gry!" #Ustawiasz opcje w pliku.
	set {AntyLogOut1} to yaml value "AntyLogOut1" from file "plugins/PVPKits/Message.yml" #Ustawiasz zmienną na tą opcje.

Potem już nigdzie nie zapisujesz do zmiennej opcji z pliku. Więc zmiana jakiejś opcji nic nie da ponieważ nie zostanie zapisana do zmiennej.
Zmienne zostają ustawiane tylko gdy sie usunie ten "config".

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik
40 minut temu, CountingDogs napisał:

Dodano konfiguracje w plikach YML

Poczytaj trochę w tym temacie:

Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść!

Nie podoba mi się, że za każdym razem pobierasz dane przy komendzie/evencie :)

Spoiler
on damage of player:
    if victim is player:
        set {AntyLogOut1} to yaml value "AntyLogOut1" from file "plugins/PVPKits/Message.yml"
        set {AntyLogOut2} to yaml value "AntyLogOut2" from file "plugins/PVPKits/Message.yml"
command /kit [<text>]:
    trigger:
        if arg is "pvp":
            set {Kit-PvP} to yaml value "Kit-PvP" from file "plugins/PVPKits/Message.yml"
  [...]
          if arg is "druid":
            set {Kit-Druid} to yaml value "Kit-Druid" from file "plugins/PVPKits/Message.yml"
  [...]
          if arg is "vip":
            if player has permission "use.vip":
                set {Kit-VIP} to yaml value "Kit-VIP" from file "plugins/PVPKits/Message.yml"
command /pk [<text>]:
    trigger:
        [...]
        if arg is "kits":
            set {KitsGUI} to yaml value "KitsGUI" from file "plugins/PVPKits/GUI.yml"
            set {KitsGUIRows} to yaml value "KitsGUIRows" from file "plugins/PVPKits/GUI.yml"

 

Najbardziej będzie wrażliwy tutaj event on damage, gdyż przy każdym uderzeniu, serwer musi pracować Procesor->Dysk->Ram a przy używaniu zmiennych masz po prostu Procesor->Ram 

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik
W dniu 2.09.2019 o 23:13, DαrϰVεnuς napisał:

Dodatkowo polecam zapoznać się z tym tematem


Bez tego nie możesz nazywać się "skrypterem" - o ile to robisz :)

Myślę, że to w jakiej kolejności układa kod skryptu nie ma większego znaczenia, bo i tak prawdopodobnie pracuje nad nim sam. Podobnie nazywanie zmiennych, nie wiem skąd się to wzięło, ale to nie żaden C# czy w ogóle język programowania, żeby się tak bawić. Przyda się w przyszłości, ale to jest nawyk którego łatwo się nauczyć.

Uważam, że z powodzeniem możesz się nazywać nawet skryptowym artystą i to jak układasz kod i nazywasz zmienne naprawdę niewiele zmieni.

EDIT: Ale rzeczywiście, powinna być spójność w dodawaniu "on" przy eventach i tym jak zapisujemy warunki. Zaznaczam więc, że nie odrzucam zupełnie tej "Skriptowej Konwencji Genewskiej" XD

Edytowane przez PanNiedzwiadek

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik
20 minut temu, PanNiedzwiadek napisał:

Myślę, że to w jakiej kolejności układa kod skryptu nie ma większego znaczenia, bo i tak prawdopodobnie pracuje nad nim sam. Podobnie nazywanie zmiennych, nie wiem skąd się to wzięło, ale to nie żaden C# czy w ogóle język programowania, żeby się tak bawić. Przyda się w przyszłości, ale to jest nawyk którego łatwo się nauczyć.

Uważam, że z powodzeniem możesz się nazywać nawet skryptowym artystą i to jak układasz kod i nazywasz zmienne naprawdę niewiele zmieni.

EDIT: Ale rzeczywiście, powinna być spójność w dodawaniu "on" przy eventach i tym jak zapisujemy warunki. Zaznaczam więc, że nie odrzucam zupełnie tej "Skriptowej Konwencji Genewskiej" XD

Tzn. chodzi w tym o to że łatwiej jest odczytać kod niż bawić się w grafologa. Więc wygląd kodu ma znaczenie, kolejność również, ale jego funkcje nie są zmienione, no chyba że ktoś źle postawi funkcje w ChatClear i pomyli
 

loop 100 times:
	send "" to players
send "Chat zostal wyczyszczony przez %sender%"

na

loop 100 times:
	send "" to players
	send "Chat zostal wyczyszczony przez %sender%"

Wtedy zaśmieci chat, a nie go "wyczyści"

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Użytkownik

Aktualizacja - 14.10.2019
1. System EXP'a
2. Sklep z zestawami
3. Skrzynia z zestawami
4. Statystyki
5. Dodano 3 nowe klasy

Tank - Klasa posiada diamentowe uzbrojenie i kamienny miecz.
Pirat - Żelazny miecz i mocna skórzana zbroja to atut tego zestawu.
Wampir - Drewniany miecz nie stoi na przeszkodzie, by pokonywać mocniejszych przeciwników.

6. Zupki pod komendą /kb soup
7. Nowe działanie zup i złotych jabłek
8. Komendy pod /kb


Aktualizacja - 14.10.2019
Version 1.0.1
1. Usuwanie dropu po śmierci.
2. Dodano dwa nowe zestawy:

Górnik i Pająk
 

Edytowane przez CountingDogs
Szifter

Usuwam formatowanie

Notatka dodana przez Szifter

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość i zarejestrować się później. Jeżeli masz już konto, zaloguj się, aby dodać zawartość za jego pomocą.

Losowy awatar
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Maksymalnie dozwolone są tylko 75 emotikony.

×   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.


  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×