Skocz do zawartości
  • 0

Banknoty


Korus135

Pytanie

Czy da się skryptem zrobić, że gdy gracz będzie miał w swoim eq kartkę podpisaną "&a&lBanknot ($100)" to usunie się ten banknot z jego eq i wykona się dla niego komenda "/gmoney give (nick gracza który ma ten banknot) 100". 

 

I tak samo "&a&lBanknot ($500)" i komenda "/gmoney give (nick) 500" 

 

Oraz $1000, $5000, $10000, $20000, $50000 i $200000

Odnośnik do komentarza
Udostępnij na innych stronach

11 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
1 minutę temu, Korus135 napisał:

Czy da się skryptem zrobić, że gdy gracz będzie miał w swoim eq kartkę podpisaną "&a&lBanknot ($100)" to usunie się ten banknot z jego eq i wykona się dla niego komenda "/gmoney give (nick gracza który ma ten banknot) 100". 

Ma to się dziać po kliknięciu prawym przyciskiem myszy z tą karteczką w ręce czy też masz już jakiś event i potrzebujesz jedynie warunku oraz przechwytywania tej liczby?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, Kormic napisał:

Ma to się dziać po kliknięciu prawym przyciskiem myszy z tą karteczką w ręce czy też masz już jakiś event i potrzebujesz jedynie warunku oraz przechwytywania tej liczby?

Ma się dziać gdy gracz po prostu będzie miał tą kartkę w eq skrypt to wykryje usunie ją i wykona komendę dla tego gracza. A jeżeli można to czy dał byś przy tym jakieś powiadomienie na czacie? Np. Gdy będzie miał banknot $100 to napisze mu "&7[&6OreMC&7] &aOtrzymales $100" 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
on load:
	clear {Banknoty::*}
	set {Banknoty::100} to "&a&lBanknot ($100)"
	set {Banknoty::500} to "&a&lBanknot ($500)"
	set {Banknoty::1000} to "&a&lBanknot ($0100)"
	set {Banknoty::5000} to "&a&lBanknot ($5000)"
	#itd...
	
on right click:
	loop {Banknoty::*}:
		if name of player's tool is colored loop-value:
			#add (loop-index parsed as integer) to player's balance
			remove 1 of player's tool from player
			execute console command "gmoney give %player% %loop-index%"

a... automatycznie ma być... no to:

on load:
	clear {Banknoty::*}
	set {Banknoty::100} to "&a&lBanknot ($100)"
	set {Banknoty::500} to "&a&lBanknot ($500)"
	set {Banknoty::1000} to "&a&lBanknot ($0100)"
	set {Banknoty::5000} to "&a&lBanknot ($5000)"
	#itd...
	
every 5 second:
	loop all players:
		loop {Banknoty::*}:
			if name of loop-player's tool is colored loop-value:
				#add (loop-index parsed as integer) to loop-player's balance
				remove 1 of loop-player's tool from loop-player's tool
				send title "&7Banknoty" with subtitle "&7Otrzymales: &a%loop-index%" to player for 5 seconds
				execute console command "gmoney give %loop-player% %loop-index%"

 

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

  • 0
1 minutę temu, xAxee napisał:


on load:
	clear {Banknoty::*}
	set {Banknoty::100} to "&a&lBanknot ($100)"
	set {Banknoty::500} to "&a&lBanknot ($500)"
	set {Banknoty::1000} to "&a&lBanknot ($0100)"
	set {Banknoty::5000} to "&a&lBanknot ($5000)"
	#itd...
	
on right click:
	loop {Banknoty::*}:
		if name of player's tool is colored loop-value:
			#add (loop-index parsed as integer) to player's balance
			remove 1 of player's tool from player
			execute console command "gmoney give %player% %loop-index%"

 

Jutro sprawdzę czy zadziała, ale nie oto mi chodziło bo nie chce aby gracz musiał klikać prawy przycisk myszy 

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

  • 0
Teraz, Korus135 napisał:

Ma się dziać gdy gracz po prostu będzie miał tą kartkę w eq skrypt to wykryje usunie ją i wykona komendę dla tego gracza. A jeżeli można to czy dał byś przy tym jakieś powiadomienie na czacie? Np. Gdy będzie miał banknot $100 to napisze mu "&7[&6OreMC&7] &aOtrzymales $100" 

Czyli po prostu gdy otrzyma to do ekwipunku? Niestety nie będzie to działało w 100%, gdyż przykładowo w sytuacji gdy admin lub skrypt/plugin umieści mu tę karteczkę w ekwipunku, to Skript nie jest w stanie jakkolwiek tego wykryć. Mogę tutaj jedynie użyć eventów 'on inventory click' oraz 'on pick up'.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, Kormic napisał:

Czyli po prostu gdy otrzyma to do ekwipunku? Niestety nie będzie to działało w 100%, gdyż przykładowo w sytuacji gdy admin lub skrypt/plugin umieści mu tę karteczkę w ekwipunku, to Skript nie jest w stanie jakkolwiek tego wykryć. Mogę tutaj jedynie użyć eventów 'on inventory click' oraz 'on pick up'.

Czyli nie zadziała gdy gracz wyciągnie banknot z skrzynki? 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
1 minutę temu, Korus135 napisał:

Jutro sprawdzę czy zadziała, ale nie oto mi chodziło bo nie chce aby gracz musiał klikać prawy przycisk myszy 

no właśnie nie wiedziałem że tak chciałeś, ale zobaczyłem co Kormicowi odpisałeś i tam dopisałem do odpowiedzi.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, Kormic napisał:

W tym przypadku zadziała, można to na spokojnie wykryć. Opisałem jeden z możliwie największych problemów przy takim skrypcie.

Bo chce zrobić że będą skrzynki na mapie które będą się co 10 minut respic i będą miały losowy drop w skrzynce i chce właśnie zrobić że będzie taka skrzynka ale z banknotami samymi. Taki los trochę. No i właśnie gdy gracz wyciągnie ten banknot który mu się wylosowal to dostanie ten hajs przez tamtą komendę co napisałem 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Godzinę temu, Korus135 napisał:

Bo chce zrobić że będą skrzynki na mapie które będą się co 10 minut respic i będą miały losowy drop w skrzynce i chce właśnie zrobić że będzie taka skrzynka ale z banknotami samymi. Taki los trochę. No i właśnie gdy gracz wyciągnie ten banknot który mu się wylosowal to dostanie ten hajs przez tamtą komendę co napisałem 

W takim razie proszę.

function getCashFromName(p: player, t: text, n: number):
	set {_m} to (subtext of {_t} from character (length of {_t} - 10) to character (length of {_t} - 1)) parsed as number
	execute console command "gmoney give %{_p}% %{_m} * {_n}%"
	send "&7[&6OreMC&7] &aOtrzymales $%{_m} * {_n}%" to {_p}

on right click with paper:
	uncoloured player's tool's name contains "Banknot ($"
	getCashFromName(player, uncoloured player's tool's name, item amount of player's tool)
	set player's tool to air
	
on pickup:
	uncoloured event-item's name contains "Banknot ($"
	getCashFromName(player, uncoloured event-item's name, item amount of event-item)
	cancel event
	delete event-entity
	
on inventory click:
	uncoloured event-slot's name contains "Banknot ($"
	set {_i} to event-slot
	getCashFromName(player, uncoloured {_i}'s name, item amount of {_i})
	set event-slot to air

 

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

  • 0
4 minuty temu, Kormic napisał:

W takim razie proszę.


function getCashFromName(p: player, t: text, n: number):
	set {_m} to subtext of {_t} from character (length of {_t} - 10) to character (length of {_t} - 1)
	execute console command "gmoney give %{_p}% %{_m} * {_n}%"
	send "&7[&6OreMC&7] &aOtrzymales $%{_m} * {_n}%" to {_p}

on right click with paper:
	uncoloured player's tool's name contains "Banknot ($"
	getCashFromName(player, uncoloured player's tool's name, item amount of player's tool)
	set player's tool to air
	
on pickup:
	uncoloured event-item's name contains "Banknot ($"
	getCashFromName(player, uncoloured event-item's name, item amount of event-item)
	cancel event
	delete event-entity
	
on inventory click:
	uncoloured event-slot's name contains "Banknot ($"
	set {_i} to event-slot
	getCashFromName(player, uncoloured {_i}'s name, item amount of {_i})
	set event-slot to air

 

 

Godzinę temu, xAxee napisał:

on load:
	clear {Banknoty::*}
	set {Banknoty::100} to "&a&lBanknot ($100)"
	set {Banknoty::500} to "&a&lBanknot ($500)"
	set {Banknoty::1000} to "&a&lBanknot ($0100)"
	set {Banknoty::5000} to "&a&lBanknot ($5000)"
	#itd...
	
on right click:
	loop {Banknoty::*}:
		if name of player's tool is colored loop-value:
			#add (loop-index parsed as integer) to player's balance
			remove 1 of player's tool from player
			execute console command "gmoney give %player% %loop-index%"

a... automatycznie ma być... no to:


on load:
	clear {Banknoty::*}
	set {Banknoty::100} to "&a&lBanknot ($100)"
	set {Banknoty::500} to "&a&lBanknot ($500)"
	set {Banknoty::1000} to "&a&lBanknot ($0100)"
	set {Banknoty::5000} to "&a&lBanknot ($5000)"
	#itd...
	
every 5 second:
	loop all players:
		loop {Banknoty::*}:
			if name of loop-player's tool is colored loop-value:
				#add (loop-index parsed as integer) to loop-player's balance
				remove 1 of loop-player's tool from loop-player's tool
				send title "&7Banknoty" with subtitle "&7Otrzymales: &a%loop-index%" to player for 5 seconds
				execute console command "gmoney give %loop-player% %loop-index%"

 

Te 2 skrypty sprawdzę jutro :)

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Nieaktywny
Odpowiedz na pytanie...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...