Zaczynamy od:
new Float:szybkosc_gracza[33];
pod tym dodajemy:
new bonus_gracza[33];
Pozniej w client_connect(id) pod:
kondycja_gracza[id] = 0;
dodajemy:
bonus_gracza[id] = 0;
W public PrzydzielPunkty(id) pod:
new kondycja[60]
dodajemy:
new bonusik[60];
a nastepnie pod:
format(kondycja, 59, "Kondycja: %i (Zwieksza tempo chodu)", kondycja_gracza[id]);
dodajemy:
format(bonusik, 59, "Frager: %i (Zwieksza Expa za Fraga)", bonus_gracza[id]);
i pod:
menu_additem(menu, kondycja);
dodajemy:
menu_additem(menu, bonusik);
Teraz przechodzimy do: public PrzydzielPunkty_Handler(id, menu, item)
Jezeli chcemy aby ta umiejetnosc mozna bylo uzyc od danego lvl robimy tak:
Pod case 3: dodajemy to:
case 4:
{
if (poziom_gracza[id] >=xx)
{
if(bonus_gracza[id]<100)
bonus_gracza[id]++;
else
ColorChat(id,GREEN,"^x03 Frager^x01 osiagniety.");
}
else
ColorChat(id,GREEN,"^x03 Aby uzyc wbij^x04 xx LvL");
}xx - poziom od jakiego mozemy zyc
Jezeli chcemy aby statystka byla nie zaleznie od lvl robimy tak:
case 4:
{
if(bonus_gracza[id]<100)
bonus_gracza[id]++;
else
ColorChat(id,GREEN,"^x03 Frager^x01 osiagniety.");
}
W public ResetujPunkty(id) pod:
wytrzymalosc_gracza[id] = 0;
dodajemy:
bonus_gracza[id] = 0;
Cały public ZapiszDane(id) podmieniamy z tym:
public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id], bonus_gracza[id]);
nvault_set(g_vault,vaultkey,vaultdata);
}I takze public WczytajDane(id, klasa) podmieniamy z tym:
public WczytajDane(id, klasa)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id], bonus_gracza[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new doswiadczeniegracza[32], poziomgracza[32], inteligencjagracza[32], silagracza[32], zrecznoscgracza[32], zwinnoscgracza[32], bonus[32];
parse(vaultdata, doswiadczeniegracza, 31, poziomgracza, 31, inteligencjagracza, 31, silagracza, 31, zrecznoscgracza, 31, zwinnoscgracza, 31, bonus, 31);
doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
poziom_gracza[id] = str_to_num(poziomgracza)>0?str_to_num(poziomgracza):1;
inteligencja_gracza[id] = str_to_num(inteligencjagracza);
zdrowie_gracza[id] = str_to_num(silagracza);
wytrzymalosc_gracza[id] = str_to_num(zrecznoscgracza);
kondycja_gracza[id] = str_to_num(zwinnoscgracza);
bonus_gracza[id] = str_to_num(bonus);
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id]-bonus_gracza[id];
}W public SprawdzPoziom(id) podmieniamy to:
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
Z tym :
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id]-bonus_gracza[id];
No i na koniec przechodzimy do public Death():
Szukamy:
set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
ShowSyncHudMsg(attacker, SyncHudObj2, "+%i", nowe_doswiadczenie);
doswiadczenie_gracza[attacker] += nowe_doswiadczenie;I zamieniamy na :
new wynik = nowe_doswiadczenie+bonus_gracza[attacker];
set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
ShowSyncHudMsg(attacker, SyncHudObj2, "+%i", wynik);
doswiadczenie_gracza[attacker] += wynik;Gdzie :
new wynik = nowe_doswiadczenie+bonus_gracza[attacker];
Kazdy moze sobie ustawic do wlasnych potrzeb.Ja zrobilem ze za kazdy 1pkt dodaje mi 1 expa ;]
W zasadzie to jest moj 1 poradnik wiec jak bd jakies bledy lub literowki to wybaczcie(ale wszsytko 10 razy sprawdzilem


Dodatki SourceMod















