Not work.
I don't understand why...
How i create entity:
PHP Code:
new wall = create_entity("info_target")
entity_set_model( wall, "models/wall.mdl" )
new Float:pOrigin[3]
entity_get_vector( id, EV_VEC_origin, pOrigin )
pOrigin[2] += 36
entity_set_origin( wall, pOrigin )
entity_set_int( wall, EV_INT_solid, SOLID_TRIGGER )
entity_set_int( wall, EV_INT_movetype, MOVETYPE_FLY )
new Float:vRetVector[3]
entity_get_vector( id, EV_VEC_v_angle, vRetVector )
vRetVector[0] = 0.0
entity_set_vector( wall, EV_VEC_angles, vRetVector )
//Which side is thicker? +X and -X or +Y and -Y
if( ( (vRetVector[1] >= 45.0) && (vRetVector[1] <= 135.0) ) || ( (vRetVector[1] >= -135.0) && (vRetVector[1] <= -45.0) ) )
{
entity_set_size( wall, Float:{-16.0,-5.0,-72.0}, Float:{16.0,5.0,72.0} )
}
else
{
entity_set_size( wall, Float:{-5.0,-16.0,-72.0}, Float:{5.0,16.0,72.0} )
}
How i try to change angles:
PHP Code:
new Float:vRetVector[3]
new Float:vVector[3]
entity_get_vector( id, EV_VEC_v_angle, vVector )
entity_get_vector( id, EV_VEC_angles, vRetVector )
//Pitch
vRetVector[0] = 0.0
vVector[0] = 0.0
//Fix float values ( 125.6574 -> 125.0 )
//Yaw
new vecVA = floatround(vVector[1])
vVector[1] = float(vecVA)
new vecV = floatround(vRetVector[1])
vRetVector[1] = float(vecV)
//Fakemeta way - don't work
set_pev( wall, pev_angles, vRetVector )
set_pev( wall, pev_v_angle, vVector )
set_pev( wall, pev_punchangle, 1.0 )
//Engine way - don't work
// entity_set_vector( wall, EV_VEC_angles, vRetVector )
// entity_set_vector( wall, EV_VEC_v_angle, vVector )
//entity_set_int( wall, EV_INT_fixangle, 1 )
Only the model angles changed.
The entity angles remain the same ( thicker +X -X or +Y - Y ).
Other ideas?
Sorry for my bad english.