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

Pieniądze za przebywanie na serwerze


Miszel03

Rekomendowane odpowiedzi

Opublikowano

Cześć, czy mógłby ktoś napisać mi skrypt na automatyczne dawanie pieniędzy (dajmy na to 50$) za 10 minut grania na serwerze. Od razu mówie, że nie chcę żadnych bankomatów etc. chodzi mi tylko o automatyczne dawanie pieniędzy. Posiadam plugin Essentials oraz Vault, gdyż zapewne są do tego potrzebne. 

Opublikowano
on join:
	set {online.%player%} to true
	set {czas.%player%} to 0
on quit:
	set {online.%player%} to false
	set {czas.%player%} to 0
	
every 1 second:
	loop all players:
		add 1 to {czas.%loop-player%}
		if {czas.%loop-player%} is bigger or equal to 600:
			execute console command "eco give %loop-player% 50"

Powinno dzialac ale nie bylo testowane, jesli beda bledy to daj ss

Opublikowano

Dziękuje za dotychczasową pomoc. Dam znać za chwilkę czy działa, prosiłbym jeszcze o skrypt, który umożliwia graczowi używanie chatu dopiero po 10 minutach od pierwszego wejścia na serwer. 

 

EDIT: Skrypt działa, ale nie poprawnie gdyż po upływie 10 minut cały czas dodaję 50$ do konta gracza. 

Opublikowano

poprawilem zeby nie dawalo tego caly czas(po tym jak da kase to zeruje zmienna)

 

tutaj masz poprawiony+ ten skrypt z chatem

variables:
	{pisanie.%player%} = false
	{czaspis.%player%} = 0
on join:
	set {online.%player%} to true
	set {czas.%player%} to 0
on quit:
	set {online.%player%} to false
	set {czas.%player%} to 0
	
every 1 second:
	loop all players:
		if {online.%loop-player%} is true:
			add 1 to {czas.%loop-player%}
			if {czas.%loop-player%} is bigger or equal to 600:
				execute console command "eco give %loop-player% 50"
				set {czas.%loop-player%} to 0
			
on chat:
	if {pisanie.%player%} is false:
		cancel event
		
every 1 second:
	loop all players:
		if {pisanie.%loop-player%} is false:
			add 1 to {czaspis.%loop-player%}
			if {czaspis.%loop-player%} is bigger or equal to 600:
				set {pisanie.%loop-player%} to true
				clear {czaspis.%loop-player%}
		if {pisanie.%loop-player%} is true:
			stop
on first join:
	if {pisanie.%player%%} is true:
		stop
	else:
		set {pisanie.player%} to false
	if {czaspis.%player%%} is smaller than 1:
		set {czaspis.%player%%} to 0
Opublikowano

Dzięki, już sprawdzam. 

 

EDIT: Skrypt dot. Chatu nie działa, pieniądze jeszcze sprawdzam. 

 

EDIT 2:  Pieniądze działają, dzięki! Prosiłbym jeszcze, aby po dodaniu 50$ do konta gracza napisało mu: "Otrzymałeś 50$ za ostatnie 10 minut grania na serwerze!". - sam sobie poradziłem. 

Opublikowano
on chat:
	if {pisanie.%player%} is false:
		cancel event
		
every 1 second:
	loop all players:
		if {onlinepis.%loop-player%} is true:
			if {pisanie.%loop-player%} is false:
				add 1 to {czaspis.%loop-player%}
				if {czaspis.%loop-player%} is bigger or equal to 600:
					set {pisanie.%loop-player%} to true
					clear {czaspis.%loop-player%}
					send "&aJuz mozesz pisac!"
on join:
	set {onlinepis.%player%} to true
	if {pisanie.%player%} is false:
		set {_czas} to 600-{czaspis.%player%}
		send "&cPrzebywasz na serwerze zbyt krotko by moc pisanie na chacie"
		send "&cAby moc pisac na chacie musisz byc na serwerze jeszcze %{_czas}% sekund"
	if {pisanie.%player%} is true:
		send "&aCiesz sie chatem!"
on quit:
	set {onlinepis.%player%} to false

Pokazuje jakies bledy?

Opublikowano

Działa! Dziękuję Ci za pomoc. Myślę, że jak będę potrzebował pomocy dot. skryptów to na pewno się do Ciebie zgłoszę. 

Opublikowano

@Matak606

 

Mam problem, wiadomości (zaznaczam je boldem) nie są wysyłane do gracza, a chodzi o to, żeby były. 

 

on chat:
if {pisanie.%player%} is false:
send "&cMozliwosc pisania na chcacie zostanie Ci umozliwiona dopiero po 10 minutach grania na naszym serwerze!"
send "&cGrasz juz 10 minut, a nadal nie masz dostepu do chatu? Relognij!"
cancel event
 
every 1 second:
loop all players:
if {onlinepis.%loop-player%} is true:
if {pisanie.%loop-player%} is false:
add 1 to {czaspis.%loop-player%}
if {czaspis.%loop-player%} is bigger or equal to 600:
set {pisanie.%loop-player%} to true
clear {czaspis.%loop-player%}
send "&aGrasz juz na naszym serwerze od 10 minut, - odblokowywujemy Ci mozliwosc pisania na chcacie!"  #<-------
on join:
set {onlinepis.%player%} to true
if {pisanie.%player%} is false:
set {_czas} to 600-{czaspis.%player%}
 
on quit:
set {onlinepis.%player%} to false
 
 
variables:
{pisanie.%player%} = false
{czaspis.%player%} = 0
on join:
set {online.%player%} to true
set {czas.%player%} to 0
on quit:
set {online.%player%} to false
set {czas.%player%} to 0
 
every 1 second:
loop all players:
if {online.%loop-player%} is true:
add 1 to {czas.%loop-player%}
if {czas.%loop-player%} is bigger or equal to 600:
execute console command "eco give %loop-player% 50"
send "&7Otrzymales &e50$&7 za ostatnie 10 minut grania na serwerze!" #<-------
set {czas.%loop-player%} to 0
 
 
 
 
Opublikowano
on join:
	while player is online:
		wait 10 minutes
		add 50 to player's balance
		send "&aOtrzymales &e$50 &aza gre na serwerze!"

Tak najłatwiej :D

Opublikowano

inuxDev oczywiscie ze latwiej, ale w tym mozesz sobie wejsc i wyjsc i po 10 minutach wrocic, tamten skrypt nalicza czas tylko gdy gracz jest online

 

@topic

 

Domyslnie wysyla to do gracza ktory uzywa eventu ale jako ze tam jest loop to musi do loop-player

 

Napisalem tam, dalem "to loop-player" ale jesli nie bedzie dzialac to daj "to the loop-player"


on chat:
	if {pisanie.%player%} is false:
		send "&cMozliwosc pisania na chcacie zostanie Ci umozliwiona dopiero po 10 minutach grania na naszym serwerze!"
		send "&cGrasz juz 10 minut, a nadal nie masz dostepu do chatu? Relognij!"
		cancel event
 
every 1 second:
	loop all players:
		if {onlinepis.%loop-player%} is true:
			if {pisanie.%loop-player%} is false:
				add 1 to {czaspis.%loop-player%}
				if {czaspis.%loop-player%} is bigger or equal to 600:
					set {pisanie.%loop-player%} to true
					clear {czaspis.%loop-player%}
					send "&aGrasz juz na naszym serwerze od 10 minut, - odblokowywujemy Ci mozliwosc pisania na chcacie!" to loop-player #lub: to the loop-player
on join:
	set {onlinepis.%player%} to true
	if {pisanie.%player%} is false:
	set {_czas} to 600-{czaspis.%player%}

on quit:
	set {onlinepis.%player%} to false
 
 
 
variables:
	{pisanie.%player%} = false
	{czaspis.%player%} = 0
on join:
	set {online.%player%} to true
	set {czas.%player%} to 0
on quit:
	set {online.%player%} to false
	set {czas.%player%} to 0
 
every 1 second:
	loop all players:
		if {online.%loop-player%} is true:
			add 1 to {czas.%loop-player%}
			if {czas.%loop-player%} is bigger or equal to 600:
				execute console command "eco give %loop-player% 50"
				send "&7Otrzymales &e50$&7 za ostatnie 10 minut grania na serwerze!" to loop-player #lub: to the loop-player
				set {czas.%loop-player%} to 0
Opublikowano

@topic

@Matak606

 

Ja bym trochę poprawił i usunął wiadomości z konsoli o dodaniu kasy do konta gracza czyli;

on chat:
	if {pisanie.%player%} is false:
		send "&cMozliwosc pisania na chcacie zostanie Ci umozliwiona dopiero po 10 minutach grania na naszym serwerze!"
		send "&cGrasz juz 10 minut, a nadal nie masz dostepu do chatu? Relognij!"
		cancel event
 
every 1 second:
	loop all players:
		if {onlinepis.%loop-player%} is true:
			if {pisanie.%loop-player%} is false:
				add 1 to {czaspis.%loop-player%}
				if {czaspis.%loop-player%} is bigger or equal to 600:
					set {pisanie.%loop-player%} to true
					clear {czaspis.%loop-player%}
					send "&aGrasz juz na naszym serwerze od 10 minut, - odblokowywujemy Ci mozliwosc pisania na chcacie!" to loop-player #lub: to the loop-player
on join:
	set {onlinepis.%player%} to true
	if {pisanie.%player%} is false:
	set {_czas} to 600-{czaspis.%player%}
 
on quit:
	set {onlinepis.%player%} to false
 
 
 
variables:
	{pisanie.%player%} = false
	{czaspis.%player%} = 0
on join:
	set {online.%player%} to true
	set {czas.%player%} to 0
on quit:
	set {online.%player%} to false
	set {czas.%player%} to 0
 
every 1 second:
	loop all players:
		if {online.%loop-player%} is true:
			add 1 to {czas.%loop-player%}
			if {czas.%loop-player%} is bigger or equal to 600:
				add 50 to loop-player's balance
				send "&7Otrzymales &e50$&7 za ostatnie 10 minut grania na serwerze!" to loop-player #lub: to the loop-player
				set {czas.%loop-player%} to 0

Oczywiście nie podpisuje się po tą pracą ponieważ zmieniłem tylko jedną linijkę a całość należy do @Matak606

Opublikowano

tak wiem, ale wolalem przez essentialsa dac bo pozniej by bylo gadanie masz czy nie masz dodatkow i odpowiednich pluginow, bo z tego co pamietam do takiego dodawania potrzebny byl iConomy (mi bez iConomy oraz vault nie dzialalo to)

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...