Skocz do zawartości
  • 0

Plik YML


KodziaK

Pytanie

Witam chciałbym się dowiedzieć jak odczytać informacje z pliku YML,

Ale nie chce aby to były konkretne zmienne

Chce użyć czegoś mniej więcej takiego: (dodam że chcę tego użyć do automsg)

wiadomość1:

 -co ile sekund:

 -tresc:

Ale nie chce aby była ich ograniczona ilość.

Aby można było dodawać tyle wiadomości ile się chce.

Jeżeli coś nie jasno wytłumaczyłem proszę pisać niżej a ja odpisze :) 

Edytowane przez K0dziakOfSky
Odnośnik do komentarza
https://skript.pl/temat/17615-plik-yml/
Udostępnij na innych stronach

4 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Patrz..
Tak wygląda przykładowy config.yml:
 

config:
  wiadomosc1:
    czas: 15
    tresc: 'To jest wiadomosc 1'
  wiadomosc2:
    czas: 30
    tresc: 'To jest wiadomosc 2'
  wiadomosc3:
    czas: 120
    tresc: 'To jest wiadomosc 3'

 

Odczytanie tego jest banalnie proste:
 

command /load [<text>]:
	trigger:
		set {wiad::*} to configuration section "config" get of "plugins/xxx/config.yml" #zapisuje wszystkie nazwy wiadomosci do zmiennej (wiadomosc1, wiadomosc2, wiadomosc3, itd.. jak ustalisz)
		loop {wiad::*}: #zapętla wszystkie nazwy wiadomosci
			set {wiad::czas::%loop-value%} to single value "config.%loop-value%.czas" get of "plugins/xxx/config.yml" parsed as number #wczytuje czas zapętlonej wiadomosci do zmiennej np. {wiad::czas::wiadomosc1}, itd
			set {wiad::tresc::%loop-value%} to single value "config.%loop-value%.tresc" get of "plugins/xxx/config.yml" #wczytuje tresc zapętlonej wiadomosci do zmiennej np. {wiad::tresc::wiadomosc1}, itd
			
  		#jak odtworzyc
		loop {wiad::*}:
			send "Czas: %{wiad::czas::%loop-value%}%"
			send "Wiadomosc: %{wiad::tresc::%loop-value%}%"

Zrobiłem to w formie komendy, aby łatwo Ci było to przetestować, wymaga oczywiście WS.
Lecz ciężko Ci będzie zrobić automsg ze zmiennej. Możesz to zrobić sposobem, że sprawdzenie czasu będzie odbywało się co np. 15 sekund *(i to będzie minimalny czas do ustawienia), ponieważ nie można zrobić wydarzenia 'every {zmienna} seconds.

 

Odnośnik do komentarza
https://skript.pl/temat/17615-plik-yml/#findComment-120690
Udostępnij na innych stronach

  • 0
22 minuty temu, DαrϰVεnuς napisał:

Zrobiłem to w formie komendy, aby łatwo Ci było to przetestować, wymaga oczywiście WS.
Lecz ciężko Ci będzie zrobić automsg ze zmiennej. Możesz to zrobić sposobem, że sprawdzenie czasu będzie odbywało się co np. 15 sekund *(i to będzie minimalny czas do ustawienia), ponieważ nie można zrobić wydarzenia 'every {zmienna} seconds.

Myślę że po prostu zmienię czas na tag :)

 

Odnośnik do komentarza
https://skript.pl/temat/17615-plik-yml/#findComment-120693
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ę...