Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Jak zrobić ograniczenie czasowe na wysyłanie wiadomości?


Blueas

Rekomendowane odpowiedzi

Opublikowano

Zła nazwa tematu, skoro skrypt działa nie ma w nim co naprawiać. Co do pytania zadanego w poście użyj:

 

 

set {timer.%player%} to 10 minutes

every 1 minute:
loop all players:
remove 1 minute from {timer.%loop-player%}

Pomogłem ? ;) Daj like !

Opublikowano

Nie testowane ;) mam nadzieje że będzie dobrze bo na Skript się mało znam

 

 

 

options:
Tell Reported: false
 
every 1 minute:
loop all players:
remove 1 minute from {timer.%loop-player%}
    
command /report <offline player> <text>:
permission: report.player
trigger:
    if {timer.%player%} is greater than 0 minutes:
        message "Tej komendy mozesz uzyc raz na 15 minut"
    argument 1 is set
    argument 1 has played before
    if {reports} is not set:
    set {reports} to 0
    add 1 to {reports}
    set {reports::%{reports}%} to "&8<&6%{reports}%&8> &f%arg 1% &7za &f%arg 2%"
    message "&8<<&4&lREPORT&8>> &7Zglosiles gracza &f%arg 1% &7za &f%arg 2%&7!"
    {@ Reported} is true
    send "&8<<&4&lREPORT&8>> &cZostales zgloszony przez &f%player% &7za &f%arg 2%&7!"
    set {timer.%player%} to 15 minutes
 
command /reported:
permission: report.check
trigger:
if {reports::*} is not set:
message "&8<<&4&lREPORT&8>> &cNie ma zadnych zgloszen"
stop
message "&8<<&4&lREPORT&8>> &7Zgloszeni gracze : &f%{reports::*}%"
 
command /delreport <integer>:
permission: report.delete
trigger:
{reports::%arg 1%} is set
delete {reports::%arg 1%}
message "&8<<&4&lREPORT&8>> &7Usunieto zgloszenie numer &f%arg 1%&7!"
stop

 

 

Pomogłem ? ;) Daj like !

Opublikowano

Gorzej wytabować sie nie dało ;-;?
 

options:
	Tell Reported: false
 
every 1 minute:
	loop all players:
		remove 1 minute from {r::%loop-player%}
on unload:
	clear {r::*}

command /report <offline player> <text>:
permission: report.player
trigger:
	if {rr::%player%} is greater than 0 minutes:
		message "Tej komendy mozesz uzyc raz na 15 minut"
		stop
	argument 1 is set:
		argument 1 has played before:
			if {reports} is not set:
				set {reports} to 0
			add 1 to {reports}
			set {reports::%{reports}%} to "&8<&6%{reports}%&8> &f%arg 1% &7za &f%arg 2%"
			message "&8<<&4&lREPORT&8>> &7Zglosiles gracza &f%arg 1% &7za &f%arg 2%&7!"
			{@ Reported} is true
			send "&8<<&4&lREPORT&8>> &cZostales zgloszony przez &f%player% &7za &f%arg 2%&7!"
			set {rr::%player%} to 15 minutes
	 
command /reported:
	permission: report.check
	trigger:
		if {reports::*} is not set:
			message "&8<<&4&lREPORT&8>> &cNie ma zadnych zgloszen"
			stop
		message "&8<<&4&lREPORT&8>> &7Zgloszeni gracze : &f%{reports::*}%"
 
command /delreport <integer>:
	permission: report.delete
	trigger:
		{reports::%arg 1%} is set:
			delete {reports::%arg 1%}
			message "&8<<&4&lREPORT&8>> &7Usunieto zgloszenie numer &f%arg 1%&7!"
			stop

+?

Opublikowano

Oj, bo mi się tab urwał przy triggerze ;)

 

options:
	Tell Reported: false
 
every 1 minute:
	loop all players:
		remove 1 minute from {r::%loop-player%}
on unload:
	clear {r::*}

command /report <offline player> <text>:
	permission: report.player
	trigger:
		if {rr::%player%} is greater than 0 minutes:
			message "Tej komendy mozesz uzyc raz na 15 minut"
			stop
		argument 1 is set:
			argument 1 has played before:
				if {reports} is not set:
					set {reports} to 0
				add 1 to {reports}
				set {reports::%{reports}%} to "&8<&6%{reports}%&8> &f%arg 1% &7za &f%arg 2%"
				message "&8<<&4&lREPORT&8>> &7Zglosiles gracza &f%arg 1% &7za &f%arg 2%&7!"
				{@ Reported} is true
				send "&8<<&4&lREPORT&8>> &cZostales zgloszony przez &f%player% &7za &f%arg 2%&7!"
				set {rr::%player%} to 15 minutes
	 
command /reported:
	permission: report.check
	trigger:
		if {reports::*} is not set:
			message "&8<<&4&lREPORT&8>> &cNie ma zadnych zgloszen"
			stop
		message "&8<<&4&lREPORT&8>> &7Zgloszeni gracze : &f%{reports::*}%"
 
command /delreport <integer>:
	permission: report.delete
	trigger:
		{reports::%arg 1%} is set:
			delete {reports::%arg 1%}
			message "&8<<&4&lREPORT&8>> &7Usunieto zgloszenie numer &f%arg 1%&7!"
			stop

+? :D

Opublikowano

Zamiast używać do tego eventu every second zrób to w jednej komendzie np tak

@up

command /report <offline player> <text>:
	permission: report.player
	trigger:
		if {czas.%player%} is false:
			argument 1 is set:
				argument 1 has played before:
					if {reports} is not set:
						set {reports} to 0
					add 1 to {reports}
					set {reports::%{reports}%} to "&8<&6%{reports}%&8> &f%arg 1% &7za &f%arg 2%"
					message "&8<<&4&lREPORT&8>> &7Zglosiles gracza &f%arg 1% &7za &f%arg 2%&7!"
					{@ Reported} is true
					send "&8<<&4&lREPORT&8>> &cZostales zgloszony przez &f%player% &7za &f%arg 2%&7!"
					set {czas.%player%} to true
					wait 15 minutes
					set {czas.%player%} to false
					send "Możesz wyslac kolejny report"
		else:
			send "Musisz odczekac 15 minut"
Opublikowano

Zamiast używać do tego eventu every second zrób to w jednej komendzie np tak

@up

command /report <offline player> <text>:
	permission: report.player
	trigger:
		if {czas.%player%} is false:
			argument 1 is set:
				argument 1 has played before:
					if {reports} is not set:
						set {reports} to 0
					add 1 to {reports}
					set {reports::%{reports}%} to "&8<&6%{reports}%&8> &f%arg 1% &7za &f%arg 2%"
					message "&8<<&4&lREPORT&8>> &7Zglosiles gracza &f%arg 1% &7za &f%arg 2%&7!"
					{@ Reported} is true
					send "&8<<&4&lREPORT&8>> &cZostales zgloszony przez &f%player% &7za &f%arg 2%&7!"
					set {czas.%player%} to true
					wait 15 minutes
					set {czas.%player%} to false
					send "Możesz wyslac kolejny report"
		else:
			send "Musisz odczekac 15 minut"

Odradzam. Jeżeli wyłączysz serwer w czasie odliczania gracz już nigdy nie użyje tej komendy..

 

spróbuj tego;

options:
	Tell Reported: false
 
every 1 minute:
	loop all players:
		remove 1 from {r::%loop-player%}
on unload:
	clear {r::*}

command /report <offline player> <text>:
	permission: report.player
	trigger:
		if {rr::%player%} is greater than 0:
			message "Tej komendy mozesz uzyc raz na 15 minut"
			stop
		argument 1 is set:
			argument 1 has played before:
				if {reports} is not set:
					set {reports} to 0
				add 1 to {reports}
				set {reports::%{reports}%} to "&8<&6%{reports}%&8> &f%arg 1% &7za &f%arg 2%"
				message "&8<<&4&lREPORT&8>> &7Zglosiles gracza &f%arg 1% &7za &f%arg 2%&7!"
				{@ Reported} is true
				send "&8<<&4&lREPORT&8>> &cZostales zgloszony przez &f%player% &7za &f%arg 2%&7!"
				set {rr::%player%} to 15 
	 
command /reported:
	permission: report.check
	trigger:
		if {reports::*} is not set:
			message "&8<<&4&lREPORT&8>> &cNie ma zadnych zgloszen"
			stop
		message "&8<<&4&lREPORT&8>> &7Zgloszeni gracze : &f%{reports::*}%"
 
command /delreport <integer>:
	permission: report.delete
	trigger:
		{reports::%arg 1%} is set:
			delete {reports::%arg 1%}
			message "&8<<&4&lREPORT&8>> &7Usunieto zgloszenie numer &f%arg 1%&7!"
			stop
Opublikowano

@up to niech doda sobie coś takiego

 

on connect:

if {czas.%player%} is true:

wait 15 minutes

set {czas.%player%} to false

 

tak wiem że możesz się przywalić ze to będzie nie sprawiedliwe...

Opublikowano

@up to niech doda sobie coś takiego

 

on connect:

if {czas.%player%} is true:

wait 15 minutes

set {czas.%player%} to false

 

tak wiem że możesz się przywalić ze to będzie nie sprawiedliwe...

To mnie rozwala, zakładając, że ktoś botuje serwer i boty oddadzą 10 tysięcy połączeń.. Wiesz, że to będzie musiało liczyć 10 tysięcy razy te twoje wait?

W jakim celu w ogóle to jest w wydarzeniu on connect?

Już lepiej:

 

on quit:
	set {czas.%player%} to false

Ale rejoinując można wysyłać kolejne, więc to bez celu..

Opublikowano

@up Co to za serwer gdzie go boty będą atakować ? - Jak ktoś nie umie zabezpieczyć serwera to już tylko jego problem

 

 

a ja podaje najprostsze rozwiązanie tego problemu bo co jak co ale "loop all players" połączony z "every s/m" to zamulacz serwera w ....

i nie pisz że nie....

Opublikowano

@up Co to za serwer gdzie go boty będą atakować ? - Jak ktoś nie umie zabezpieczyć serwera to już tylko jego problem

 

 

a ja podaje najprostsze rozwiązanie tego problemu bo co jak co ale "loop all players" połączony z "every s/m" to zamulacz serwera w ....

i nie pisz że nie....

Nawet jeżeli ustawisz jakieś "auto kickanie", boty będą wykonywać PlayerLoginEvent (on connect). Więc nie mów mi, że jakiś magiczny antybot to zablokuje z poziomu serwera.

 

 

every 1 minute:
	loop all players:
		if {r::%loop-player%} is bigger than 0:
			remove 1 from {r::%loop-player%}

Jest lepszym rozwiązaniem, nawet przy 100 graczach.. Tutaj nie trzeba jakichś wielkich obliczeń więc nie będzie "lagowało"

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...