Как лучше использовать авто распрыжку? С помощью FM_PlayerPreThink (fakemeta) или же через client_PreThink (engine)?
или
Имеется виду какой код лучше (нагрузки меньше)
Код:
public client_PreThink(id) {
entity_set_float(id, EV_FL_fuser2, 0.0)
if (entity_get_int(id, EV_INT_button) & 2) {
new flags = entity_get_int(id, EV_INT_flags)
if (flags & FL_WATERJUMP)
return PLUGIN_CONTINUE
if ( entity_get_int(id, EV_INT_waterlevel) >= 2 )
return PLUGIN_CONTINUE
if ( !(flags & FL_ONGROUND) )
return PLUGIN_CONTINUE
new Float:velocity[3]
entity_get_vector(id, EV_VEC_velocity, velocity)
velocity[2] += 250.0
entity_set_vector(id, EV_VEC_velocity, velocity)
entity_set_int(id, EV_INT_gaitsequence, 6) // Jump graphics
}
return PLUGIN_CONTINUE
}
Код:
public FwdPlayerPreThink(id)
{
set_pev(id, pev_fuser2, 0.0)
if(pev(id, pev_button) & IN_JUMP)
{
static flags;
flags = pev(id, pev_flags);
if(flags & FL_WATERJUMP) return;
if(pev(id, pev_waterlevel) >= 2.0) return;
if(!(flags & FL_ONGROUND)) return;
static Float:VecVelocity[3];
pev(id, pev_velocity, VecVelocity)
VecVelocity[2] += 266.0;
set_pev(id, pev_velocity, VecVelocity)
set_pev(id, pev_gaitsequence, 6)
}
}