public UstawPerk(id, perk, wartosc, wytrzym, pokaz_info)
{
if(!ilosc_perkow)
return PLUGIN_CONTINUE;
static obroty[33];
if(obroty[id]++ >= 5)
{
UstawPerk(id, 0, 0, 0, 0);
obroty[id] = 0;
return PLUGIN_CONTINUE;
}
perk = (perk == -1)? random_num(1, ilosc_perkow): perk;
wartosc = (wartosc == -1 || min_wartosci_perkow[perk] > wartosc || wartosc > max_wartosci_perkow[perk])? random_num(min_wartosci_perkow[perk], max_wartosci_perkow[perk]): wartosc;
wytrzym = (wytrzym == -1 || min_wytrzymalosc_perkow[perk] > wytrzym || wytrzym > max_wytrzymalosc_perkow[perk])? random_num(min_wytrzymalosc_perkow[perk], max_wytrzymalosc_perkow[perk]): wytrzym;
new ret;
new forward_handle = CreateOneForward(pluginy_perkow[perk_gracza[id]], "cod_perk_disabled", FP_CELL, FP_CELL);
ExecuteForward(forward_handle, ret, id, perk);
DestroyForward(forward_handle);
perk_gracza[id] = 0;
forward_handle = CreateOneForward(pluginy_perkow[perk], "cod_perk_enabled", FP_CELL, FP_CELL, FP_CELL, FP_CELL);
ExecuteForward(forward_handle, ret, id, wytrzym, wartosc, perk);
DestroyForward(forward_handle);
if(ret == 4)
{
UstawPerk(id, -1, -1, -1, 1);
return PLUGIN_CONTINUE;
}
ExecuteForward(perk_zmieniony, ret, id, perk, wartosc, wytrzym);
if(ret == 4)
{
UstawPerk(id, -1, -1, -1, 1);
return PLUGIN_CONTINUE;
}
perk_gracza[id] = perk;
wartosc_perku_gracza[id] = wartosc;
wytrzymalosc_perku[id] = wytrzym;
obroty[id] = 0;
if(pokaz_info && perk_gracza[id])
ColorChat(id, GREEN, "[COD:MW3]^x01 Zdobyles %s.", nazwy_perkow[perk_gracza[id]]);
return PLUGIN_CONTINUE;
}
I
public ZarejestrujPerk(plugin, params)
{
if(params != 6)
return PLUGIN_CONTINUE;
if(++ilosc_perkow > MAX_ILOSC_PERKOW)
return -1;
pluginy_perkow[ilosc_perkow] = plugin;
get_string(1, nazwy_perkow[ilosc_perkow], MAX_WIELKOSC_NAZWY);
get_string(2, opisy_perkow[ilosc_perkow], MAX_WIELKOSC_OPISU);
min_wytrzymalosc_perkow[ilosc_perkow] = get_param(3);
max_wytrzymalosc_perkow[ilosc_perkow] = get_param(4);
min_wartosci_perkow[ilosc_perkow] = get_param(5);
max_wartosci_perkow[ilosc_perkow] = get_param(6);
return ilosc_perkow;
}
P.S W zarejestruj perk zmieniłem kolejność rejestracji wartości perku i jego wytrzymałości, pomysł był taki by była losowa wytrzymałość.


Dodatki SourceMod












