167 lines
3.1 KiB
Plaintext

anim_get_dvar_int( dvar, def )
{
return int( anim_get_dvar( dvar, def ) );
}
anim_get_dvar( dvar, def )
{
if ( getDvar( dvar ) != "" )
{
return getDvarFloat( dvar );
}
else
{
setdvar( dvar, def );
return def;
}
}
set_orient_mode( mode, val1 )
{
/#
if ( level.dog_debug_orient == self getentnum() )
{
if ( isDefined( val1 ) )
{
println( "DOG: Setting orient mode: " + mode + " " + val1 + " " + getTime() );
}
else
{
println( "DOG: Setting orient mode: " + mode + " " + getTime() );
#/
}
}
if ( isDefined( val1 ) )
{
self orientmode( mode, val1 );
}
else
{
self orientmode( mode );
}
}
debug_anim_print( text )
{
/#
if ( level.dog_debug_anims )
{
println( ( text + " " ) + getTime() );
}
if ( level.dog_debug_anims_ent == self getentnum() )
{
println( ( text + " " ) + getTime() );
#/
}
}
debug_turn_print( text, line )
{
/#
if ( level.dog_debug_turns == self getentnum() )
{
duration = 200;
currentyawcolor = ( 1, 0, 1 );
lookaheadyawcolor = ( 1, 0, 1 );
desiredyawcolor = ( 1, 0, 1 );
currentyaw = angleClamp180( self.angles[ 1 ] );
desiredyaw = angleClamp180( self.desiredangle );
lookaheaddir = self.lookaheaddir;
lookaheadangles = vectorToAngle( lookaheaddir );
lookaheadyaw = angleClamp180( lookaheadangles[ 1 ] );
println( ( text + " " ) + getTime() + " cur: " + currentyaw + " look: " + lookaheadyaw + " desired: " + desiredyaw );
#/
}
}
debug_allow_movement()
{
/#
return anim_get_dvar_int( "debug_dog_allow_movement", "1" );
#/
return 1;
}
debug_allow_combat()
{
/#
return anim_get_dvar_int( "debug_dog_allow_combat", "1" );
#/
return 1;
}
current_yaw_line_debug( duration )
{
/#
currentyawcolor = [];
currentyawcolor[ 0 ] = ( 1, 0, 1 );
currentyawcolor[ 1 ] = ( 1, 0, 1 );
current_color_index = 0;
start_time = getTime();
if ( !isDefined( level.lastdebugheight ) )
{
level.lastdebugheight = 15;
}
while ( ( getTime() - start_time ) < 1000 )
{
pos1 = ( self.origin[ 0 ], self.origin[ 1 ], self.origin[ 2 ] + level.lastdebugheight );
pos2 = pos1 + vectorScale( anglesToForward( self.angles ), ( current_color_index + 1 ) * 10 );
line( pos1, pos2, currentyawcolor[ current_color_index ], 0,3, 1, duration );
current_color_index = ( current_color_index + 1 ) % currentyawcolor.size;
wait 0,05;
}
if ( level.lastdebugheight == 15 )
{
level.lastdebugheight = 30;
}
else
{
level.lastdebugheight = 15;
#/
}
}
getanimdirection( damageyaw )
{
if ( damageyaw > 135 || damageyaw <= -135 )
{
return "front";
}
else
{
if ( damageyaw > 45 && damageyaw <= 135 )
{
return "right";
}
else
{
if ( damageyaw > -45 && damageyaw <= 45 )
{
return "back";
}
else
{
return "left";
}
}
}
return "front";
}
setfootstepeffect( name, fx )
{
/#
assert( isDefined( name ), "Need to define the footstep surface type." );
#/
/#
assert( isDefined( fx ), "Need to define the mud footstep effect." );
#/
if ( !isDefined( anim.optionalstepeffects ) )
{
anim.optionalstepeffects = [];
}
anim.optionalstepeffects[ anim.optionalstepeffects.size ] = name;
level._effect[ "step_" + name ] = fx;
}