←  Poradniki, Łatki oraz Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
[Poradnik] Jak dodać bronie obok nazwy klasy.

  • +
  • -
Mr. Dziwny - zdjęcie Mr. Dziwny 02.02.2014

Witajcie, zacznę od tego że jest to mój pierwszy poradnik tutaj, tak więc nie oceniajcie surowo :).
Na forum takiego poradnika niestety nie znalazłem, a myślę że się przyda. 
Chodzi mi oto: http://amxx.pl/topic...y-bron-jaka-ma/

Spoiler

Źródło do oryginału: http://amxx.pl/topic...siadanej-broni/ 

Jak łatwo zauważyć jest to na frakcje natomiast ja pokaże jak można to zrobić nie mając frakcji na swoim serwerze, albo korzystając ze frakcji darkgl'a (sposób I, a czy II to nie patrzałem :) )

 

Wszystko edytujemy w funkcji

public WybierzKlase(id)

Zmieniamy to:

new klasa[50];

Na:

new klasa[370],bronie[320],bron[22],n

Teraz szukamy:

WczytajDane(id, i);

i pod tym dodajemy:

bronie = ""
			n=1
			for(new b=1 ; b <= 32; b++)
			{
				if((1<<b) & bronie_klasy[i])
				{
					get_weaponname(b, bron, 21)
					replace_all(bron, 21, "weapon_", "")
					ucfirst(bron)
					if(n > 1)	add(bronie, charsmax(bronie), ", ")
					
					add(bronie, charsmax(bronie), bron)
					n++
				}
			}

Pod koniec szukamy:

format(klasa, charsmax(klasa), "%s \yPoziom: %i", nazwy_klas[i], poziom_gracza[id]);

i zmieniamy na:

format(klasa, charsmax(klasa), "%s \y[Poziom: %i] \w-%s %s", nazwy_klas[i], poziom_gracza[id],(n == 2 ? "Bron: " : "Bronie: "),bronie);

Oczywiście można się pobawić w tym żeby lepiej wyglądało itd., ale to już szczegół ^^.

 

Całość powinna wyglądać tak:

Spoiler
Odpowiedz

  • +
  • -
f .? - zdjęcie f .? 07.02.2014

Działa ! Leci plusik.

Odpowiedz

TyrTrek - zdjęcie TyrTrek 01.03.2014

da to jakoś usunąć ten napis Bron ? i Bronie ? i czy jeszcze dało by rade zeby grantów nie pokazywało ? w tym opisie? bo za duzo będzie tego :C


Użytkownik TyrTrek edytował ten post 01.03.2014 00:20
Odpowiedz

PkZc - zdjęcie PkZc 01.03.2014

Działa +

Odpowiedz

Heineken - zdjęcie Heineken 01.03.2014

da to jakoś usunąć ten napis Bron ? i Bronie ? i czy jeszcze dało by rade zeby grantów nie pokazywało ? w tym opisie? bo za duzo będzie tego :C

Zmień

format(klasa, charsmax(klasa), "%s \y[Poziom: %i] \w-%s %s", nazwy_klas[i], poziom_gracza[id],(n == 2 ? "Bron: " : "Bronie: "),bronie);

Na

format(klasa, charsmax(klasa), "%s \y[Poziom: %i] \w-%s %s", nazwy_klas[i], poziom_gracza[id],(n == 2 ? " " :""),bronie);
Odpowiedz

TyrTrek - zdjęcie TyrTrek 01.03.2014

 

da to jakoś usunąć ten napis Bron ? i Bronie ? i czy jeszcze dało by rade zeby grantów nie pokazywało ? w tym opisie? bo za duzo będzie tego :C

Zmień

format(klasa, charsmax(klasa), "%s \y[Poziom: %i] \w-%s %s", nazwy_klas[i], poziom_gracza[id],(n == 2 ? "Bron: " : "Bronie: "),bronie);

Na

format(klasa, charsmax(klasa), "%s \y[Poziom: %i] \w-%s %s", nazwy_klas[i], poziom_gracza[id],(n == 2 ? " " :""),bronie);

to wiem ale to 2 czytaj xD

Odpowiedz

  • +
  • -
Kuba22 - zdjęcie Kuba22 01.02.2015

Jakis poradnik jak ktos ma wgrane frakcje?

Odpowiedz

  • +
  • -
EmiLowaTy - zdjęcie EmiLowaTy 03.02.2015

Przyda się :)

Odpowiedz

  • +
  • -
adi22399 - zdjęcie adi22399 15.02.2015

A jezeli ja mam frakcje w silniku to jak to dodac ? Probowalem ale nie wyszlo

Odpowiedz

  • +
  • -
NapiszMiPlugina - zdjęcie NapiszMiPlugina 04.03.2015

A jezeli ja mam frakcje w silniku to jak to dodac ? Probowalem ale nie wyszlo

 

Dołączam się .

 

public WybierzKlase(id)
{
        new menu = menu_create("Wybierz klase:", "WybierzKlase_Frakcje");
        for(new i=1; i <= ilosc_klas; i++)
        {
                if(!equal(frakcja_klas[i],"") && !is_in_previous(frakcja_klas[i],i)){
                        menu_additem(menu,frakcja_klas[i],frakcja_klas[i])
                }
        }
        
        menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
        menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
        menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
        menu_display(id, menu);
}
 
Odpowiedz

  • +
  • -
Hajmus - zdjęcie Hajmus 04.03.2015

 

A jezeli ja mam frakcje w silniku to jak to dodac ? Probowalem ale nie wyszlo

 

Dołączam się .

 

 

Dla frakcji wbudowanych w silnik :

public WybierzKlase_Frakcje(id, menu, item)
{
	if(item == MENU_EXIT){
		menu_destroy(menu);
		return PLUGIN_CONTINUE;
	}
	
	new data[65], iName[64] 
	new acces, callback 
	menu_item_getinfo(menu, item, acces, data,64, iName, 63, callback) 
	
	new menu2 = menu_create("Wybierz klase:", "WybierzKlase_Handle");
	
	new klasa[370],szTmp[5];
	new bronie[320],bron[22],n;
	
	for(new i=1; i <= ilosc_klas; i++)
	{
		if(equali(data,frakcja_klas[i])){
			WczytajDane(id, i);
			bronie = "";
			n=1
			
			for(new b=1 ; b <= 32; b++)
			{
				if((1<<b) & bronie_klasy[i])
				{
					get_weaponname(b, bron, 21)
					replace_all(bron, 21, "weapon_", "")
					ucfirst(bron)
					if(n > 1)	add(bronie, charsmax(bronie), ", ")
					
					add(bronie, charsmax(bronie), bron)
					n++
				}
			}
			format(klasa, charsmax(klasa), "%s \y[Poziom: %i] \w-%s %s", nazwy_klas[i], poziom_gracza[id],(n == 2 ? " Bron:" : " Bronie:"),bronie);
			num_to_str(i,szTmp,charsmax(szTmp));
			menu_additem(menu2, klasa,szTmp);
		}
	}
	
	WczytajDane(id, klasa_gracza[id]);
	
	
	menu_setprop(menu2, MPROP_EXITNAME, "Wyjdz");
	menu_setprop(menu2, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu2, MPROP_NEXTNAME, "Nastepna strona");
	menu_display(id, menu2);
	
	client_cmd(id, "spk QTM_CodMod/select");
	
	menu_destroy(menu);
	return PLUGIN_CONTINUE;
}

Użytkownik Hajmus edytował ten post 04.03.2015 21:45
Odpowiedz