Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[ROZWIĄZANE] Jaki kod na komende którą można użyć raz na mape?


  • Zamknięty Temat jest zamknięty
9 odpowiedzi w tym temacie

#1 aRrOw

    Profesjonalista

  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:196
  • Imię:Luk
  • Lokalizacja:Amxx.pl
Offline

Napisano 17.07.2015 11:15

Witajcie, mam kolejny problem sam już nie wiem który z kolei :D ale przechodząc do sedna rzeczy. Jaki kod na zablokowanie komendy żeby można ją było użyć raz na mapę?
  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png


#2 vanillah

    nie wiem

  • Użytkownik

Reputacja: 125
Zaawansowany

  • Postów:324
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 17.07.2015 11:35

podaj kod tej komendy to ci pomoge


  • +
  • -
  • 0

Wykonam pluginy, paczki (amxx) kontakt GG: 32263742, Steam: https://steamcommuni...om/id/vankillah

Multi-Head.pl


#3 aRrOw

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:196
  • Imię:Luk
  • Lokalizacja:Amxx.pl
Offline

Napisano 17.07.2015 13:06

A nie można tego poprostu w publicu? Ty podajesz kod który mam wrzucić do publica odpowiedzialnego za to co komenda ma robić? Bo ja jeszcze ogólnie pluginy nie mam zrobionego. Bo chcę zrobić tak że po wpisaniu /losuj losujesz sobie perk i żeby była ta komenda raz na mape.
  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png


#4 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 17.07.2015 14:21

Dodaj zmienną typu boolean 33elementową.

 

W funkcji, która się wywołuje po wpisaniu odpowiedniej komendy sprawdzasz, czy wartość zmiennej jest na false, jeżeli jest na false puszczasz plugin dalej i ustawiasz w tym miejscu wartość na true.

 

Jest pełno poradników/pluginów zawierających taką modyfikację, wystarczy poświęcić 5min.


  • +
  • -
  • 0

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#5 aRrOw

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:196
  • Imię:Luk
  • Lokalizacja:Amxx.pl
Offline

Napisano 17.07.2015 14:57

Szukałem ale niestety nie znalazłem a nawet jeśli bym znalazł to po przerobieniu by na pewno wywaliło jakieś błędy wiem z doświadczenia..

 

Mam już tyle:


public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)

	register_clcmd("say /losuj", "losujperk");
        register_clcmd("say /losuj2", "losujperk2");
}

public losujperk(id)
{
        if(cod_get_user_perk(id))
                client_print(id, 3, "Posiadasz juz perk, wyrzuc go aby wylosowac drugi")
        else
	        cod_set_user_perk(id, -1, -1, 1);
}

public losujperk2(id)
{
        if(cod_get_user_perk(id))
                client_print(id, 3, "Posiadasz juz perk, wyrzuc go aby wylosowac drugi")
        else
                cod_set_user_perk(id, -1, -1, 1, 1);
}

Jak do tego dodać żeby komenda /losuj2 była na flage H a /losuj na zwykłą USERA, i jak dodać właśnie te zabezpieczenie żeby można było te komendy użyć raz na mapę. Pomoże ktoś :) ?


Użytkownik aRrOw edytował ten post 17.07.2015 14:59

  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png


#6 Linux'

    Pan Pomocny

  • Power User

Reputacja: 549
Wszechwiedzący

  • Postów:1 501
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:AmxMod i SourceMod
Offline

Napisano 17.07.2015 15:15

new bool:uzywal[33];
public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)

	register_clcmd("say /losuj", "losujperk");
	register_clcmd("say /losuj2", "losujperk2");
}
public client_authorized(id)
{
	uzywal[id] = false;
}
public losujperk(id)
{
	if(get_user_flags(id) & FLAGA)
	{
		if(!uzywal[id])
		{
			if(cod_get_user_perk(id))
				client_print(id, "Posiadasz juz perk, wyrzuc go aby wylosowac drugi");
			else
			{
				cod_set_user_perk(id, -1, -1, 1);
				uzywal[id] = true;
			}
		}
		else
			client_print(id, "Uzywales juz tej komendy.");
	}
	else
		client_print(id, "Nie posiadasz dostepu do tej komendy.");
}
public losujperk2(id)
{
	if(get_user_flags(id) & FLAGA)
	{
		if(!uzywal[id])
		{
			if(cod_get_user_perk(id))
				client_print(id, "Posiadasz juz perk, wyrzuc go aby wylosowac drugi");
			else
			{
				cod_set_user_perk(id, -1, -1, 1, 1);
				uzywal[id] = true;
			}
		}
		else
			client_print(id, "Uzywales juz tej komendy.");
	}
	else
		client_print(id, "Nie posiadasz dostepu do tej komendy.");
}

Nie ustawialem tylko flag, poniewaz od jakiegos czasu nie operuje w amxx i zapomnialem nazw :P.

 

Powiedz mi jeszcze, na co ta trojka w skladni?

client_print(id, 3, "Posiadasz juz perk, wyrzuc go aby wylosowac drugi")

Edit: Aaa no tak, juz przejrzalem dokumentacje i wiem o co chodzi hehe :D.


  • +
  • -
  • 1

b35020692_qesnxqa.png


#7 aRrOw

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:196
  • Imię:Luk
  • Lokalizacja:Amxx.pl
Offline

Napisano 17.07.2015 15:22

client_print(id, 3, "xxxxxxxxxxxxxxxxxxx")

Przyznaję się  ;>  - Ten kod skopiowałem z innego pluginu więc nwm :D

 

Czyli teraz jeśli ktoś wylosuje perk i wyjdzie z serwera a po chwili wejdzie to nie będzie mógł użyć komendy aż do zmiany mapy tak?


Użytkownik aRrOw edytował ten post 17.07.2015 15:25

  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png


#8 Linux'

    Pan Pomocny

  • Power User

Reputacja: 549
Wszechwiedzący

  • Postów:1 501
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:AmxMod i SourceMod
Offline

Napisano 17.07.2015 15:28

client_print(id, 3, "xxxxxxxxxxxxxxxxxxx")

Ten kod skopiowałem z innego pluginu więc nwm :D

 

Czyli teraz jeśli ktoś wylosuje perk i wyjdzie z serwera a po chwili wejdzie to nie będzie mógł użyć komendy aż do zmiany mapy tak?

 

 

Dobrze masz skladnie, zapomnialem za co to odpowiada :P. Nie nie to tak nie dziala, jak ktos to uzyje to az do zmiany mapy nie bedzie mogl tego ponownie uzyc lub przelogowania sie. Jak chcesz to zrobic tak jak mowisz to mozesz sprobowac usunac resetowanie zmiennej przy wchodzeniu na serwer (client_authorized(id)), powinna zmienna resetowac dopiero sie po zmianie mapy ale tez nie w kazdym przypadku. Trzeba by zrobic zapisywanie i resetowac co zmiane mapy.


  • +
  • -
  • 0

b35020692_qesnxqa.png


#9 aRrOw

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:196
  • Imię:Luk
  • Lokalizacja:Amxx.pl
Offline

Napisano 17.07.2015 15:32

No dobra dzięki ponownie :D. można zamknąć


  • +
  • -
  • 0

b_350_20_692108_381007_FFFFFF_000000.png


#10 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 661
Wszechmogący

  • Postów:1 535
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 21.07.2015 11:47

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych