#include <codmod>
#include <hamsandwich>
#include <fakemeta>
#include <cstrike>
#include <fun>
new bool:g_NitrogenGalil[33]
new NitrogenGalilSpr
new const nazwa[] = "Freezer";
new const opis[] = "Posiada nitrogen aug ktora ma 1/5 szansy na zamrozenie wroga na 5 sec.";
new const bronie = 1<<CSW_AUG;
new const zdrowie = 10;
new const kondycja = 5;
new const inteligencja = 0;
new const wytrzymalosc = 5;
new bool:ma_klase[33];
public plugin_init() {
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
}
public plugin_precache()
{
NitrogenGalilSpr = precache_model("sprites/shockwave.spr");
}
public cod_class_enabled(id, itemid)
{
ma_klase[id] = true;
g_NitrogenGalil[id] = true;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
g_NitrogenGalil[id] = false
}
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type)
{
if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim || !attacker)
return HAM_IGNORED
if(!ma_klase[attacker])
return HAM_IGNORED;
static Float:originF[3]
pev(victim, pev_origin, originF)
if (g_NitrogenGalil[attacker] && get_user_weapon(attacker) == CSW_AUG && random_num(1,5) == 1)
{
if(cs_get_user_team(attacker) == cs_get_user_team(victim))
return HAM_IGNORED
set_pev(victim, pev_velocity, Float:{0.0,0.0,0.0}) // stop motion
set_pev(victim, pev_maxspeed, 15.0) // prevent from moving
Effects(originF)
}
return PLUGIN_HANDLED;
}
//___________/ Effects \___________________________________________________________________________________________
//**************************************************************************************************************************/
Effects(const Float:originF3[3])
{
// Largest ring
engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, originF3, 0)
write_byte(TE_BEAMCYLINDER) // TE id
engfunc(EngFunc_WriteCoord, originF3[0]) // x
engfunc(EngFunc_WriteCoord, originF3[1]) // y
engfunc(EngFunc_WriteCoord, originF3[2]) // z
engfunc(EngFunc_WriteCoord, originF3[0]) // x axis
engfunc(EngFunc_WriteCoord, originF3[1]) // y axis
engfunc(EngFunc_WriteCoord, originF3[2]+100.0) // z axis
write_short(NitrogenGalilSpr) // sprite
write_byte(0) // startframe
write_byte(0) // framerate
write_byte(4) // life
write_byte(60) // width
write_byte(0) // noise
write_byte(41) // red
write_byte(138) // green
write_byte(255) // blue
write_byte(200) // brightness
write_byte(0) // speed
message_end()
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
Chcę aby zamrażało na 3 sekundy bo coś jest nie tak i zamraża na 1s.
#include <amxmodx>
#include <codmod>
#include <hamsandwich>
#include <fakemeta>
new const perk_name[] = "Kamizelka Strefy";
new const perk_desc[] = "Jestes odporny na wszystkie umiejetnosci oraz perki. Trudna do zdobycia.";
new bool:ma_perk[33];
public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote");
cod_register_perk(perk_name, perk_desc, 1, 2);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage")
}
public cod_perk_enabled(id, wartosc)
{
if(wartosc == 1)
return COD_STOP;
ma_perk[id] = true;
return COD_CONTINUE;
}
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[this])
return HAM_IGNORED;
if(damagebits & DMG_CODSKILL)
return HAM_SUPERCEDE;
return HAM_IGNORED;
}
Ten perk ma jakieś bugi na graczu który go posiada działają obrażenia z HE;Błyskawice; i 1/1 z noża.
Czy da się to naprawić?
Edited by 4Frag DIABELSKI, 29.07.2014 19:45.