Witam. Zrobiłem sobie klasę która spowalnia wrogów. Jednak znalazłem jeden błąd który mnie denerwuje.
A mianowicie jest to błąd, że gdy przeciwnik zostanie spowolniony to gdy zmieni bron to znów porusza się normalnie.
Podaję sma klasy
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>
#define TASK_ID 128000
new const nazwa[] = "Lodowy Samuraj";
new const opis[] = "Samuraj posiada miecz samurajski , wyzej skaczy , jest prawie nie widzialny";
new const bronie = 0;
new const zdrowie = 5;
new const kondycja = 25;
new const inteligencja = 0;
new const wytrzymalosc = 15;
new bool:ma_klase[32]
new bool:spowolnij[33];
public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc, "Zwykle");
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
register_event("CurWeapon", "CurWeapon", "be", "1=1")
register_event("CurWeapon", "eventKnife_Niewidzialnosc", "be", "1=1");
register_event("Damage", "Damage", "be", "2!0", "3=0", "4!0")
register_event("ResetHUD", "ResetHUD", "abe");
register_forward(FM_PlayerPreThink, "client_PreThink");
}
public cod_class_enabled(id)
{
entity_set_float(id, EV_FL_gravity, 350.0/800.0);
ma_klase[id] = true;
}
public cod_class_disabled(id)
{
entity_set_float(id, EV_FL_gravity, 1.0);
ma_klase[id] = false;
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
public fwSpawn_Grawitacja(id)
{
if(ma_klase[id])
entity_set_float(id, EV_FL_gravity, 350.0/800.0);
}
public plugin_precache()
{
precache_model("models/knife/samuraj/p_knife.mdl");
precache_model("models/knife/samuraj/v_knife.mdl");
}
public CurWeapon(id)
{
new weapon = read_data(2);
if(ma_klase[id])
{
if(weapon == CSW_KNIFE)
{
set_pev(id, pev_viewmodel2, "models/knife/samuraj/v_knife.mdl")
set_pev(id, pev_weaponmodel2, "models/knife/samuraj/p_knife.mdl")
}
}
}
public eventKnife_Niewidzialnosc(id)
{
if(!ma_klase[id])
return;
if( read_data(2) == CSW_KNIFE )
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 35);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}
#define TASK_ZATRUCIE 64000
public Damage(id)
{
new attacker = get_user_attacker(id);
if(!is_user_alive(attacker)) return;
spowolnij[id] = true;
set_pev(id, pev_maxspeed, pev(id, pev_maxspeed)*0.6);
}
public ResetHUD(id)
{
spowolnij[id] = false;
}
public MocZaladowana(id)
{
id -= TASK_ID;
if(!ma_klase[id]) return;
CurWeapon(id);
}


Dodatki SourceMod




Moja zawartość
Mężczyzna