Skocz do zawartości
  • 0

Czy napisałby mi ktoś skrypt na "Kody"


poprosturudy

Pytanie

4 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
Godzinę temu, poprosturudy napisał:

Witam, skrypt polegał by na tym że gracz pod komendą /kod ma swój kod (każdy ma własny) i jeśli nowy gracz wejdzie i wpisze kod kogoś innego (/kod <kod>) to właśicicel kodu dostaje 10$ (Valut) i gracz może tylko raz wpisać ten kod. Z góry dzięki

W sensie ten gracz może tylko raz komuś użyć kodu czy też kod jest jednorazowy?

Rozumiem, że gracz nie może samemu sobie wpisać, tak?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
15 minut temu, poprosturudy napisał:

1. Ten gracz może jeden raz komuś użyć kodu

2. Tak

Proszę, skrypt nietestowany.

Aby skrypt zadziałał poprawnie, należy wejść ponownie na serwer.

function randomizedCode(znaki: text, ilosc: integer) :: text:
	if {_znaki} is "all":
		set {_znaki::*} to "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0"
	else:
		set {_znaki::*} to {_znaki} split at ","
	set {_kod} to ""
	loop {_ilosc} times:
		set {_kod} to "%{_kod}%%random element out of {_znaki::*}%"
	return {_kod}

command /kod [<text>]:
	executable by: players
	trigger:
		arg-1 is not set:
			send "&aTwój kod to &6%{personalCode::%player%}%" to player
			stop
		{hasTypedCode::%player%} is set:
			send "&cJuż wpisałeś czyjś kod!" to player
			stop
		{personalPlayer::%arg-1%} is player:
			send "&cNie możesz wpisać własnego kodu!" to player
			stop
		{personalCode::*} doesn't contain arg-1:
			send "&cNie ma takiego kodu!" to player
			stop
		send "&aPodarowałeś graczowi &6%{personalPlayer::%arg-1%}% &a10$!" to player
		add 10 to balance of {personalPlayer::%arg-1%}
		set {hasTypedCode::%player%} to true
		
on join:
	{personalCode::%player%} is not set
	set {_t} to randomizedCode("all", 10)
	while {personalCode::*} contains {_t}:
		set {_t} to randomizedCode("all", 10)
	set {personalCode::%player%} to {_t}
	set {personalPlayer::%{_t}%} to player

EDIT:

Jeżeli oczekujesz dużej ilości graczy, daj znać, a przerobię to na nieco optymalniejszą wersję.

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

  • 0
2 minuty temu, Kormic napisał:

Proszę, skrypt nietestowany.

Aby skrypt zadziałał poprawnie, należy wejść ponownie na serwer.


function randomizedCode(znaki: text, ilosc: integer) :: text:
	if {_znaki} is "all":
		set {_znaki::*} to "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0"
	else:
		set {_znaki::*} to {_znaki} split at ","
	set {_kod} to ""
	loop {_ilosc} times:
		set {_kod} to "%{_kod}%%random element out of {_znaki::*}%"
	return {_kod}

command /kod [<text>]:
	executable by: players
	trigger:
		arg-1 is not set:
			send "&aTwój kod to &6%{personalCode::%player%}%" to player
			stop
		{hasTypedCode::%player%} is set:
			send "&cJuż wpisałeś czyjś kod!" to player
			stop
		{personalPlayer::%arg-1%} is player:
			send "&cNie możesz wpisać własnego kodu!" to player
			stop
		{personalCode::*} doesn't contain arg-1:
			send "&cNie ma takiego kodu!" to player
			stop
		send "&aPodarowałeś graczowi &6%{personalPlayer::%arg-1%}% &a10$!" to player
		add 10 to balance of {personalPlayer::%arg-1%}
		set {hasTypedCode::%player%} to true
		
on join:
	{personalCode::%player%} is not set
	set {_t} to randomizedCode("all", 10)
	while {personalCode::*} contains {_t}:
		set {_t} to randomizedCode("all", 10)
	set {personalCode::%player%} to {_t}
	set {personalPlayer::%{_t}%} to player

EDIT:

Jeżeli oczekujesz dużej ilości graczy, daj znać, a przerobię to na nieco optymalniejszą wersję.

Nie trzeba, mam teraz około 10-15 graczy. Dzięki

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ę...