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
CoD Nowy

Klasa która może mieć jedynie określone perki

cod nowy

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
1 odpowiedź w tym temacie

#1 Fili:P

    Godlike

  • Power User

Reputacja: 754
Guru

  • Postów:1 679
  • Imię:Darek
  • Lokalizacja:Warszawa
Offline

Napisano 30.06.2012 13:43

W tym poradniku przedstawię wam w jaki sposób stworzyć klasę, która będzie mogła mieć tylko konkretne perki. No więc zacznijmy. Mamy podstawową klasę:

#include <amxmodx>
#include <codmod>

new const nazwa[] = "Henio";
new const opis[] = "Brak";
new const bronie = 1;
new const kondycja = 69;
new const inteligencja = 2;
new const wytrzymalosc = 15;


public plugin_init()
		cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

Najpierw wypadałoby dodać tablice zawierająca id perków, które klasa będzie mogła nosić. Więc dodajemy pod:
new const wytrzymalosc = 15;
To:
new const perki[]= // id perkow ktore moze miec klasa
{
1,
2,
5
}
W tym przypadku klasa będzie mogła nosić perki o id 1,2 i 5. Oczywiście możemy według własnego zdania dodawać perki do tablicy (wystarczy je edytować tu). Dobrze mamy już perki, ale teraz musimy wprowadzić to w działanie.

Najpierw dodajmy zmienną, która się przyda,
pod:
new const perki[]= // id perkow ktore moze miec klasa
{
1,
2,
5
}
Dodaj to:
new bool:ma_dobry_perk[33];
Musimy przypisać forwardowi cod_perk_changed sprawdzenie czy perk ma id 1,2 lub 5, jeżeli nie to musimy go zmienić. Więc pod:
public plugin_init()
		cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
Dodajemy to:
public cod_perk_changed(id, perk)
{
ma_dobry_perk[id]=false;
for(new i=0; i {
if(perki[i]==perk)
ma_dobry_perk[id] = true;
}
if(!ma_dobry_perk[id])
cod_set_user_perk(id, perki[random_num(0,sizeof perki-1)]);

return COD_CONTINUE;
}

No i proszę bardzo stworzyliśmy klasę, która może mieć tylko konkretne perki.


Jeżeli chcecie zamiast id podawać nazwę perku to zaczynajmy.
Zamień:
new const perki[]= // id perkow ktore moze miec klasa
{
1,
2,
5
}
Na:
new const perki[][]= // nazwy perkow ktore moze miec klasa
{
"Skrzydla Archaniola",
"Noz Cienia",
"Skazaniec"
}
Następnie, zamień:
public cod_perk_changed(id, perk)
{	
	ma_dobry_perk[id]=false;
	for(new i=0; i	{
		if(perki[i]==perk)
			ma_dobry_perk[id] = true;
	}
	if(!ma_dobry_perk[id])
		cod_set_user_perk(id, perki[random_num(0,sizeof perki-1)]);

	return COD_CONTINUE;
}
Na:
public cod_perk_changed(id, perk)
{
ma_dobry_perk[id]=false;
		new szPerk[64];
		cod_get_perk_name(perk, szPerk, 63);
for(new i=0; i if(equal(perki[i], szPerk))
ma_dobry_perk[id] = true;
}
if(!ma_dobry_perk[id])
cod_set_user_perk(id, cod_get_perkid(perki[random_num(0,sizeof perki-1)]));

return COD_CONTINUE;
}
I gotowe teraz do tablicy zamiast id możemy dodawać nazwy perków.
speedkill (30.06.2012 13:57):
Zamień [sma] na [code=auto:0]

  • +
  • -
  • 0

#2 SuchyBiceps

    Życzliwy

  • Użytkownik

Reputacja: 3
Nowy

  • Postów:32
  • Imię:Kamil
  • Lokalizacja:Bytom
Offline

Napisano 17.04.2017 05:26

Wiem na pewno, że zamiast:

new const bronie = 1;

Powinno być:

new const bronie = (1<<CSW_BRON);

W miejscu BRON wpisujesz wybraną przez siebie broń.

 

I po:

new const bronie = (1<<CSW_BRON);

Brakuje:

new const zdrowie = 10;

  • +
  • -
  • 0

ms-57937.png






Również z jednym lub większą ilością słów kluczowych: cod nowy

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

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