[Poradnik] Jak dodać bronie obok nazwy klasy.
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/
Ź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:
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
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);
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
adi22399
15.02.2015
A jezeli ja mam frakcje w silniku to jak to dodac ? Probowalem ale nie wyszlo
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); }
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