Skocz do zawartości
  • 0

Komenda z limitem użyć w danym czasie


bobiksonek

Pytanie

Hej!
Potrzebuję pomocy ze skriptem, na limit użyć komendy w danym czasie.
Już tłumaczę:
mamy np. komendę /spawn
i chcę aby ranga Gracz mogła jej użyć 3 razy w ciągu tygodnia, VIP mogła jej użyć 6 razy w ciągu tygodnia itd.
Jeżeli potrzebujecie dodatkowego info, pytajcie (bo może czegoś nie napisałem, co jest ważne).

Odnośnik do komentarza
Udostępnij na innych stronach

20 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
20 minut temu, bobiksonek napisał:

Hej!
Potrzebuję pomocy ze skriptem, na limit użyć komendy w danym czasie.
Już tłumaczę:
mamy np. komendę /spawn
i chcę aby ranga Gracz mogła jej użyć 3 razy w ciągu tygodnia, VIP mogła jej użyć 6 razy w ciągu tygodnia itd.
Jeżeli potrzebujecie dodatkowego info, pytajcie (bo może czegoś nie napisałem, co jest ważne).

Czyszczenie ma być jednocześnie dla wszystkich czy dla każdego osobno dany okres czasu od ostatnego użycia? Raczej to drugie, mam rację?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
40 minut temu, bobiksonek napisał:

tak, dla każdego osobno

variables:
	{uzycia::komenda::%player%} = 0
	
command /test:
	trigger:
		send "&aHej!" to player
	
on command "/test":
	if player has permission "tryb.gracz":
		if {cooldown::komenda::%player%} is greater than 0:
			cancel event
			send "&cMusisz odczekac jeszcze &6%ceil({cooldown::komenda::%player%} / 1440)% &cdni!" to player
		else:
			add 1 to {uzycia::komenda::%player%}
			if {uzycia::komenda::%player%} is 3:
				set {cooldown::komenda::%player%} to 10800
	else if player has permission "tryb.vip":
		if {cooldown::komenda::%player%} is greater than 0:
			cancel event
			send "&cMusisz odczekac jeszcze &6%ceil({cooldown::komenda::%player%} / 1440)% &cdni!" to player
		else:
			add 1 to {uzycia::komenda::%player%}
			if {uzycia::komenda::%player%} is 6:
				set {cooldown::komenda::%player%} to 10800
					
every 1 minute:
	loop {cooldown::komenda::*}:
		remove 1 from {cooldown::komenda::%loop-value%}
		if {cooldown::komenda::%loop-value%} is 0:
			clear {cooldown::komenda::%loop-value%}
			clear {uzycia::komenda::%loop-value%}

Napisałem coś takiego, sprawdź czy działa odpowiednio.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
8 minut temu, Kormic napisał:

variables:
	{uzycia::komenda::%player%} = 0
	
command /test:
	trigger:
		send "&aHej!" to player
	
on command "/test":
	if player has permission "tryb.gracz":
		if {cooldown::komenda::%player%} is greater than 0:
			cancel event
			send "&cMusisz odczekac jeszcze &6%ceil({cooldown::komenda::%player%} / 1440)% &cdni!" to player
		else:
			add 1 to {uzycia::komenda::%player%}
			if {uzycia::komenda::%player%} is 3:
				set {cooldown::komenda::%player%} to 10800
	else if player has permission "tryb.vip":
		if {cooldown::komenda::%player%} is greater than 0:
			cancel event
			send "&cMusisz odczekac jeszcze &6%ceil({cooldown::komenda::%player%} / 1440)% &cdni!" to player
		else:
			add 1 to {uzycia::komenda::%player%}
			if {uzycia::komenda::%player%} is 6:
				set {cooldown::komenda::%player%} to 10800
					
every 1 minute:
	loop {cooldown::komenda::*}:
		remove 1 from {cooldown::komenda::%loop-value%}
		if {cooldown::komenda::%loop-value%} is 0:
			clear {cooldown::komenda::%loop-value%}
			clear {uzycia::komenda::%loop-value%}

Napisałem coś takiego, sprawdź czy działa odpowiednio.

super, dziala prawidlowo! dzieki wielkie

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
3 minuty temu, bobiksonek napisał:

jednak jest problem,
jeżeli na jedną z komend zużyję limit
to na drugiej z komend też mam go automatycznie użyty.
wystarczy zrobić którąś zmienną osobno do każdego czy jak?

Tak, dokładnie. Najlepiej zrób sobie takie zmienne:

{cooldown::nazwaKomendy::%player%}

I będzie okej. Tylko musisz je przy okazji dopisać do 'every 1 minute' (ich odliczanie).

Edytowane przez Kormic
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
5 godzin temu, bobiksonek napisał:

Okej, poczekam

Spróbuj z tym, zobaczymy czy w ogóle zadziała. Jeśli nie, to jeszcze raz postaram się to naprawić. Coś czuję, że może nie działać.

Edytowane przez xAxee
xAxee

Wstawiam na code.skript.pl

Notatka dodana przez xAxee

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
4 godziny temu, Kormic napisał:


Spróbuj z tym, zobaczymy czy w ogóle zadziała. Jeśli nie, to jeszcze raz postaram się to naprawić. Coś czuję, że może nie działać.

komendy w ogóle nie działają, skript wykrzyczał tylko "TO" jak reloadowalem.
bVUn2rm.png

Edytowane przez xAxee
xAxee

Poprawiam cytat

Notatka dodana przez xAxee

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
40 minut temu, bobiksonek napisał:

tak, tym razem komendy działają, tylko po prostu zużyłem limit na jednej z komend (chyba) i nagle jest zużyty na każdej.
DpMTJhv.png

Chyba będzie trzeba to rozwiązać w inny sposób... Daj mi jeszcze chwilę.

EDIT:

Dobra, mam skrypt, z jednej strony jest większa szansa na to, że będzie działał, natomiast z drugiej strony już nie jest taki krótki...

 

Edytowane przez Kormic
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
3 godziny temu, Kormic napisał:

Chyba będzie trzeba to rozwiązać w inny sposób... Daj mi jeszcze chwilę.

EDIT:

Dobra, mam skrypt, z jednej strony jest większa szansa na to, że będzie działał, natomiast z drugiej strony już nie jest taki krótki...

 

dalej coś jest nie tak, ale jeszcze posprawdzam i pokombinuję jeszcze sam
najwyżej już będę pisać do ciebie na dsc,  będzie wygodniej to ogarnąć, tak myślę.
Oczywiście zmieniłem przecinki na and ;>

Wszystko działa prawidłowo! Posprawdzane z testerem i wszystko gra!
Wielkie dzięki za pomoc!

Edytowane przez bobiksonek
xAxee

Łączę posty

Notatka dodana przez xAxee

Odnośnik do komentarza
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ę...