#include <amxmodx>
#include <engine>
 
#define	FL_WATERJUMP	(1<<11)
#define	FL_ONGROUND	(1<<9)
 
public plugin_init() {
	register_plugin("Admin Bhop", "1.0", "Nero")
	register_cvar("bhop_enabled", "1")
	register_cvar("bhop_onlyadmin", "1")
	register_cvar("bhop_autojump", "1")
}
 
public client_PreThink(id) {
	if ((get_cvar_num("bhop_onlyadmin") == 0)||(get_user_flags(id)&ADMIN_LEVEL_B)) {
		if (!get_cvar_num("bhop_enabled"))
			return PLUGIN_CONTINUE
 
		entity_set_float(id, EV_FL_fuser2, 0.0)
 
		if (!get_cvar_num("bhop_autojump"))
			return PLUGIN_CONTINUE
 
		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)
		}
		return PLUGIN_CONTINUE
	}
}
 
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1250\\ deff0\\ deflang1038{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
