All pastes #720416 Raw Edit

ss

public c v1 · immutable
#720416 ·published 2007-09-30 09:23 UTC
rendered paste body
#ifndef _TRACER_H#define _TRACER_H// stupid include hell workaround#ifndef ETH_H_#include "eth.h"#endif#define RAILTRAIL_INTERVAL	13void debug_head_box( int player );qboolean trace_body( int player, vec3_t hitpoint );qboolean trace_head( refEntity_t *head, vec3_t hitpoint, int player );typedef enum {	HITBOX_OFF,	HITBOX_ETMAIN,	HITBOX_ETPUB,	HITBOX_ETPRO,	HITBOX_GENERIC,	HITBOX_CSERVER,	HITBOX_DEF,	HITBOX_SIL1,	HITBOX_SIL2,	HITBOX_HIGH,	HITBOX_FASTKILLS,	HITBOX_FRAGKILLS,	HITBOX_SYSTEMKILLS,	HITBOX_CUSTOM	} hitbox_type_t;typedef enum {	MS_STAND,	MS_STAND_MOVING,	MS_CROUCH,	MS_CROUCH_MOVING,	MS_PRONE,	MS_PRONE_MOVING} model_state_t;typedef struct {	vec3_t stand_offset;	vec3_t crouch_offset;	vec3_t prone_offset;	vec3_t stand_offset_moving;	vec3_t crouch_offset_moving;		vec3_t size;	// for body boxes	vec3_t size2;} hitbox_t;/* these define the head hitboxes. format is { fwd, right, up }, relative to the tag's orientation	matched them as good as possibly with server head hitboxes using hacked servercode	hitboxes don't rotate, but their origin does! it rotates with tag_head	etpub/etmain boxes are really based on centity position, not on tag_head position, so need	different aimbot code to handle those mods... for now use everything tag_head based	always use correct hitbox mode.. wrong vecs == suck4ge*/const static hitbox_t head_hitboxes[] ={// stand               crouch         prone              stand moving      crouch moving    hitbox size (x,y,z){ { 0.0, 0.0, 0.0}, { 0.0, 0.0, 0.0}, { 0.0,  0.0, 0.0}, { 0.0,  0.0, 0.0}, { 0.0,  0.0, 0.0}, { 0.0, 0.0, 0.0} },	// OFF{ { 0.0, 0.0, 4.0}, { 0.0, 0.0, 4.0}, { 0.0,  0.0, 4.0}, { 0.0,  0.0, 4.0}, { 0.0,  0.0, 4.0}, {12.0,12.0,12.0} },	// ETMAIN{ { 3.0, 0.0, 6.5}, { 3.0,-0.5, 6.0}, { 1.0,  0.0, 7.0}, {-5.0, -1.0, 6.5}, { 1.0,  3.0, 4.5}, {12.0,12.0,12.0} },	// ETPUB FIXED{ { 0.3, 0.3, 7.0}, {-0.3, 0.8, 7.0}, { 0.0,  0.3, 6.9}, { 0.0,  0.0, 6.5}, { 0.0, -0.7, 7.0}, {11.0,11.0,12.0} },	// ETPRO b_realhead 1{ { 0.5, 0.0, 6.5}, { 0.5, 0.0, 6.5}, { 0.5,  0.0, 6.5}, { 0.5,  0.0, 6.5}, { 0.5,  0.0, 6.5}, {12.0,12.0,12.0} },	// GENERIC REALISTIC{ { 0.4, 0.4, 5.8}, { 0.4, 0.4, 5.8}, { 0.4, 0.4, 5.8}, { 0.4, 0.4, 5.8}, { 0.4, 0.4, 5.8}, { 12.0, 12.0, 12.0} },     // *C SERVER{ { 0.4, 0.8, 5.7}, { 0.4, 0.8, 5.7}, { 0.4, 0.8, 5.7}, { 0.4, 0.8, 5.7}, { 0.4, 0.8, 5.7}, { 9.0, 9.0, 9.0} },        // deF{ { 1.4, 3.0, 6.1}, { 0.1, 2.1, 7.3}, { 0.6, 2.1, 5.9}, { 0.1, 1.2, 4.7}, { 0.1, -0.1, 7.1}, { 15.0, 15.0, 15.0} },        // Sil1{ { 0.4, 0.2, 5.7}, { 9.6, 5.5, 5.4}, { 0.6, 2.1, 5.9}, { 0.1, 1.2, 4.7}, { 0.1, -0.1, 7.1}, { 15.0, 15.0, 15.0} },        // Sil2{ { 1.4, 0.2, 5.7}, { 5.0, 2.0, 5.4}, { 0.6, 2.1, 5.9}, { 0.1, 1.2, 4.7}, { 0.1, -0.1, 7.1}, { 15.0, 15.0, 15.0} },        // High{ { 1.4, 0.2, 5.7}, { 8.2, 3.2, 4.7}, { 0.6, 2.1, 5.9}, { 0.7, 1.2, 5.9}, { 0.1, -0.1, 7.1}, { 15.0, 15.0, 15.0} },           // Fastkills{ { 1.4, 0.2, 5.7}, { 7.3, 2.0, 7.2}, { 0.6, 2.1, 5.9}, { 0.1, 1.2, 4.7}, { 0.1, -0.1, 7.1}, { 15.0, 15.0, 15.0} },           // Fragkill{ { 1.4, 0.2, 5.8}, { 4.0, 0.5, 6.3}, { 0.6, 2.1, 6.0}, { 0.1, 1.2, 4.7}, { 0.1, -0.1, 7.1}, { 15.0, 15.0, 15.0} },           // Systemkill};// seems to be the same for every mod      stand              crouch              prone         stand moving       prone moving      stand bounds      prone boundsconst static hitbox_t body_hitbox = { {36.0,36.0,72.0}, {36.0,36.0,72.0}, {36.0, 36.0,48.0}, {36.0,36.0,72.0}, {36.0, 36.0,48.0}, {36.0,36.0,72.0}, {36.0, 36.0,48.0} };hitbox_t custom_headhitbox;#endif