←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Awanse klas + Opis i pytanie po wyborze klasy

  • +
  • -
protypek - zdjęcie protypek 29.06.2015

Witam, mam problem z awansami klas. W silniku mam http://amxx.pl/topic...-wyborze-klasy/ ale chciałem też dodać awanse klas: http://amxx.pl/topic...63-awanse-klas/. Jak próbowałem wgrać awanse to gdy menu klas się wyświetliło to klasy nie dało się wybrać. Mógłby ktoś pomóc. Nie chce podpinać silnika bo mam takiego trochę unikalnego i nie chce go publikować.

A zapomniałbym dodać że na serwerze mam statystykę grawitację http://amxx.pl/topic...040#entry275040. Ale to z grawitacją umiem sb poradzić w codmod.inc  zmieniłem

native cod_register_advance(z_klasy, od_levela, const nazwa[], const opis[], bronie, punkty_zdrowia, punkty_kondycji, punkty_inteligencji, punkty_wytrzymalosci, punkty_grawitacji);

a także dodałem do kodu w public ZarejestrujAwans(plugin, params):

if(params != 10)
.
.
.
grawitacjac_klas[ilosc_klas] = get_param(10);

Proszę o pomoc. 
Każda pomoc + nagradzana. ;)

PS. Możecie to zrobić na czystym silniku cod moda jak jest wam łatwiej. Ja sb później kod wyciągnę.


Użytkownik protypek edytował ten post 29.06.2015 17:36
Odpowiedz

  • +
  • -
protypek - zdjęcie protypek 02.07.2015

Oto moje funkcje: 

public WybierzKlase(id)
{
new menu = menu_create("\rWybierz klase:", "WybierzKlase_Handle");
new klasa[50];
for(new i=1; i <= ilosc_klas; i++)
{
WczytajDane(id, i);
format(klasa, charsmax(klasa), "\y%s \rPoziom: %i", nazwy_klas[i], poziom_gracza[id]);
menu_additem(menu, klasa);
}


WczytajDane(id, klasa_gracza[id]);


menu_setprop(menu, MPROP_EXITNAME, "Wyjdz^n^n\dWitaj w modyfikacji CoD MoD: AW^nForum: xxxxxx^nSklep: Sklep.xxxxxxxxx/cod");
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
menu_display(id, menu);


client_cmd(id, "spk QTM_CodMod/select");
}


public WybierzKlase_Handle(id, menu, item)
{
client_cmd(id, "spk QTM_CodMod/select");


if(item++ == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}


if(item == klasa_gracza[id])
return PLUGIN_CONTINUE;


wybrana_klasa[id] = item


new text[513]


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


format(text, 512, "\rNazwa: \w%s ^n\rOpis: \w%s^n\rBronie: \w%s^n^n\yCzy chcesz wybrac te klase?",nazwy_klas[item], opisy_klas[item], bronie)


new nmenu = menu_create(text, "WybierzKlase_Handler")
menu_additem(nmenu, "Tak")
menu_additem(nmenu, "Nie")
menu_display(id, nmenu)


return PLUGIN_CONTINUE
}


public WybierzKlase_Handler(id, menu, item)
{
client_cmd(id, "spk QTM_CodMod/select");


if(wybrana_klasa[id] == klasa_gracza[id] && !nowa_klasa_gracza[id])
return PLUGIN_CONTINUE;


switch(item)
{
case 0:
{
nowa_klasa_gracza[id] = wybrana_klasa[id];


if(klasa_gracza[id])
client_print(id, print_chat, "[CoD AW]Klasa zostanie zmieniona w nastepnej rundzie.");
else
{
UstawNowaKlase(id);
DajBronie(id);
ZastosujAtrybuty(id);
}
}
case 1:
{
WybierzKlase(id)
}
}
return PLUGIN_CONTINUE;
}

 

Odpowiedz

  • +
  • -
protypek - zdjęcie protypek 06.07.2015

Można zamknąć. Poradziłem sobie sam. :) 

Odpowiedz