Skocz do zawartości
  • 0

Cooldown do komendy


Fallouter

Pytanie

Witam. Czy ktoś mógł by zrobić mi skrypt na cooldown że co jedną godzinę można używać komendy Krzyk lub przerobić mój skrypt na krzyki żeby miał ten cooldown z góry dziękuje.

Skrypt ma być na wersje 1.16.2

Skrypt 2.1.2
SkQuery 4.1.4

kod skryptu na krzyki i mówienie:

options:
    odleglosc_mowienia:20
    odleglosc_krzyku:999999999999999999999999999999

on chat:
    cancel event
    loop all players in radius {@odleglosc_mowienia} of player:
        send "&f%player% &e&l>&e&l> %message%" to loop-player
command /krzyk [<text>]:
    trigger:
        arg 1 is set:
            loop all players in radius {@odleglosc_krzyku} of player:
                send "&6[&eKRZYK&6] &6&l>&6&l> &f%player% %arg 1%" to loop-player
                stop
        send "Podaj wiadomosc"

 

Studziak

Wstawiam w kod

Notatka dodana przez Studziak

Odnośnik do komentarza
https://skript.pl/temat/46282-cooldown-do-komendy/
Udostępnij na innych stronach

10 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Nie testowane:

 

on join:
	if {cooldown::%player%} is not set:
		set {cooldown::%player%} to 0

options:
	odleglosc_mowienia:20
	odleglosc_krzyku:999999999999999999999999999999

on chat:
	cancel event
	loop all players in radius {@odleglosc_mowienia} of player:
		send "&f%player% &e&l>&e&l> %message%" to loop-player

command /krzyk [<text>]:
	trigger:
		if {cooldown::%player%} is 0:
			arg 1 is set:
				loop all players in radius {@odleglosc_krzyku} of player:
					send "&6[&eKRZYK&6] &6&l>&6&l> &f%player% %arg 1%" to loop-player
				set {cooldown::%player%} to 3600
				stop
			else:
				send "Podaj wiadomosc" to player
		else:
			send "&cPonownie krzyk możesz użyc za &7%{cooldown::%player%}% &csekund!" to player
		
every 1 second:
	loop {cooldown::*}:
		if {cooldown::%loop-index%} is bigger than 0:
			remove 1 from {cooldown::%loop-index%}

 

Odnośnik do komentarza
https://skript.pl/temat/46282-cooldown-do-komendy/#findComment-291397
Udostępnij na innych stronach

  • 1
4 godziny temu, Fallouter napisał:

Witam. Czy ktoś mógł by zrobić mi skrypt na cooldown że co jedną godzinę można używać komendy Krzyk lub przerobić mój skrypt na krzyki żeby miał ten cooldown z góry dziękuje.

Proszę, oto skrypt.

Usunąłem parę niepotrzebnych rzeczy, poprawiłem inne oraz wywaliłem zapętlanie graczy w tak absurdalnym promieniu. Już lepiej po prostu wysłać wiadomość do wszystkich graczy w świecie gracza.

Skoro masz wersję serwera 1.16.2 i silnik Spigot (lub dowolny jego fork, np. PaperSpigot (Paper), TacoSpigot, Tuinity, Purpur, itd.), pobierz najnowszego Skripta 2.5.3 od bensku. Wystarczy wyszukać w internecie "skript releases".

options:
	odleglosc_mowienia: 20

on chat:
	set chat recipients to all players in radius {@odleglosc_mowienia} around player
	
command /krzyk [<text>]:
	cooldown: 1 hour
	cooldown message: &cNie możesz jeszcze użyć tej komendy!
	trigger:
		arg 1 is not set:
			send "&cPodaj wiadomosc!" to player
			cancel cooldown
			stop
		send "&6[&eKRZYK&6] &6&l>&6&l> &f%player% %arg 1%" to all players in player's world

 

Odnośnik do komentarza
https://skript.pl/temat/46282-cooldown-do-komendy/#findComment-291403
Udostępnij na innych stronach

  • 1
16 minut temu, Fallouter napisał:

A czy by się dało tak zrobić że jak nie będzie nikogo w tym zasięgu 20 kratek to się wyświetla wiadomość?

Proszę.

options:
	odleglosc_mowienia: 20

on chat:
	size of (all players in radius {@odleglosc_mowienia} around player) < 2:
		cancel event
		send "&cNiestety, ale nikt cię nie usłyszał..." to player
		stop
	set chat recipients to all players in radius {@odleglosc_mowienia} around player
	
command /krzyk [<text>]:
	cooldown: 1 hour
	cooldown message: &cNie możesz jeszcze użyć tej komendy!
	trigger:
		arg 1 is not set:
			send "&cPodaj wiadomosc!" to player
			cancel cooldown
			stop
		send "&6[&eKRZYK&6] &6&l>&6&l> &f%player% %arg 1%" to all players in player's world

Jeżeli wiadomość gracza ma się wyświetlać nawet wtedy gdy nikogo innego nie ma w pobliżu, usuń 'cancel event'.

Edytowane przez Kormic
Odnośnik do komentarza
https://skript.pl/temat/46282-cooldown-do-komendy/#findComment-291556
Udostępnij na innych stronach

  • 0

a dało by się zrobić tak że ranga gracz z permisją krzyk.gracz miała by &6[&eKRZYK&6] &6&l>&6&l> &f%player% {Wiadomość} i cooldown 1h a ranga vip z permisją krzyk.vip miała by &6[&bKRZYK&6] &6&l>&6&l> &f%player% {Wiadomość} i cooldown 30 minut?

Proszę przerabiać:


 

options:
    odleglosc_mowienia: 20

on chat:
    if size of (all players in radius {@odleglosc_mowienia} around player) < 2:
        send "&cNikt nie usłyszał Twojego głosu" to player
        stop
    set chat recipients to all players in radius {@odleglosc_mowienia} around player
    
command /krzyk [<text>]:
    cooldown: 1 hour
    cooldown message: &cNie możesz jeszcze użyć tej komendy!
    trigger:
        arg 1 is not set:
            send "&cPodaj wiadomosc!" to player
            cancel cooldown
            stop
        send "&6[&eKRZYK&6] &6&l>&6&l> &f%player% %arg 1%" to all players in player's world

 

Studziak

Wstawiam w kod

Notatka dodana przez Studziak

Odnośnik do komentarza
https://skript.pl/temat/46282-cooldown-do-komendy/#findComment-292017
Udostępnij na innych stronach

  • 1
13 godzin temu, Fallouter napisał:

a dało by się zrobić tak że ranga gracz z permisją krzyk.gracz miała by &6[&eKRZYK&6] &6&l>&6&l> &f%player% {Wiadomość} i cooldown 1h a ranga vip z permisją krzyk.vip miała by &6[&bKRZYK&6] &6&l>&6&l> &f%player% {Wiadomość} i cooldown 30 minut?

Proszę.

options:
	odleglosc_mowienia: 20

on chat:
	if size of (all players in radius {@odleglosc_mowienia} around player) < 2:
		send "&cNikt nie usłyszał Twojego głosu" to player
		stop
	set chat recipients to all players in radius {@odleglosc_mowienia} around player
	
command /krzyk [<text>]:
	trigger:
		arg 1 is not set:
			send "&cPodaj wiadomosc!" to player
			stop
		if player has permission "krzyk.vip":
			set {_c} to 30 minutes
			set {_t} to "&6[&bKRZYK&6] &6&l>> &f%player% %arg-1%"
		else:
			set {_c} to 1 hour
			set {_t} to "&6[&eKRZYK&6] &6&l>> &f%player% %arg-1%"
		{cooldownShout::%player%} is set:
			difference between {cooldownShout::%player%} and now is less than {_c}
			send "&cNie możesz jeszcze użyć tej komendy!" to player
			stop
		set {cooldownShout::%player%} to now
		send {_t} to all players in player's world

 

Edytowane przez Kormic
Odnośnik do komentarza
https://skript.pl/temat/46282-cooldown-do-komendy/#findComment-292128
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ę...