Witam.
Jak przerobić owy kod aby wartość była losowa:
public TakeDamagePost(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_alive(idattacker))
return HAM_IGNORED;
if(!ma_klase[idattacker])
return HAM_IGNORED;
new Float:maksymalne_zdrowie = 100.0 + cod_get_user_health(idattacker);
new Float:nowe_zdrowie = damage * (10/100) + pev(idattacker, pev_health);
set_pev(idattacker, pev_health, (nowe_zdrowie < maksymalne_zdrowie)? nowe_zdrowie: maksymalne_zdrowie);
return HAM_IGNORED;
}
Przykładowy perk na losową wartość dmg
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <hamsandwich>
#include <codmod>
#define DMG_BULLET (1<<1)
new const perk_name[] = "Srebny Wzmacniacz";
new const perk_desc[] = "Zadaje LW dodatkowych obrazen";
new wartosc_perku[33];
new bool:ma_perk[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", "xXx");
cod_register_perk(perk_name, perk_desc, 3, 6)
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}
public cod_perk_enabled(id, wartosc)
{
wartosc_perku[id] = wartosc;
ma_perk[id] = true;
}
public cod_perk_disabled(id)
{
ma_perk[id] = false;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(ma_perk[idattacker])
SetHamParamFloat(4, damage+float(wartosc_perku[idattacker]))
return HAM_IGNORED;
}


Dodatki SourceMod













