Cześć! Dopiero zaczynam przygodę z COD Modem i mam drobny problem z modyfikacją dwóch perków, tj. Naboje ninjy oraz notatki kapitana.
Notatki kapitana
Spoiler
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <hamsandwich>
#include <codmod>
#define DMG_BULLET (1<<1)
new const perk_name[] = "Notatki Kapitana";
new const perk_desc[] = "Odbijasz LW pociskow na runde";
new bool:ma_perk[33];
new wartosc_perku[33];
new pozostale_strzaly[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote");
cod_register_perk(perk_name, perk_desc, 1, 5);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
RegisterHam(Ham_Spawn, "player", "Spawn", 1);
}
public cod_perk_enabled(id, wartosc)
{
ma_perk[id] = true;
pozostale_strzaly[id] = (wartosc_perku[id] = wartosc);
}
public cod_perk_disabled(id)
ma_perk[id] = false;
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!ma_perk[this])
return HAM_IGNORED;
if(pozostale_strzaly[this] > 0 && damagebits & DMG_BULLET)
{
pozostale_strzaly[this]--;
return HAM_SUPERCEDE;
}
return HAM_IGNORED;
}
public Spawn(id)
pozostale_strzaly[id] = wartosc_perku[id];
Obecnie jest taki: Odbijasz 1-5 pociskow na runde. Ja natomiast chcę. aby odbijał 4 (nie 1-4, tylko samo 4)
Kolejny perk, Naboje ninjy
Spoiler
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
#include <codmod>
#define DMG_BULLET (1<<1)
new const perk_name[] = "Naboje Ninjy";
new const perk_desc[] = "Twoje zdrowie regeneruje sie o LW procent zadanych obrazen";
new bool:ma_perk[33];
new wartosc_perku[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote");
cod_register_perk(perk_name, perk_desc, 22, 30);
RegisterHam(Ham_TakeDamage, "player", "TakeDamagePost", 1);
}
public cod_perk_enabled(id, wartosc)
{
ma_perk[id] = true;
wartosc_perku[id] = wartosc;
}
public cod_perk_disabled(id)
ma_perk[id] = false;
public TakeDamagePost(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_alive(idattacker))
return HAM_IGNORED;
if(!ma_perk[idattacker])
return HAM_IGNORED;
new Float:maksymalne_zdrowie = 100.0 + cod_get_user_health(idattacker);
new Float:nowe_zdrowie = damage * (wartosc_perku[idattacker]/100) + pev(idattacker, pev_health);
set_pev(idattacker, pev_health, (nowe_zdrowie < maksymalne_zdrowie)? nowe_zdrowie: maksymalne_zdrowie);
return HAM_IGNORED;
}
Podobnie jak wyżej, Naboje Ninjy - Twoje zdrowie regeneruje się o 22-30 procent zadanych obrażeń.
Ja chcę, by regenerowało się o 30 - od razu. Liczę na pomoc