Incomplete SP dump provided by Louvenarde

This commit is contained in:
reaaLx
2024-09-05 17:14:53 +10:00
parent 1ea2370337
commit e5de1d5d55
784 changed files with 340494 additions and 0 deletions

View File

@ -0,0 +1,19 @@
#include common_scripts\utility;
#include maps\_utility;
#include maps\_anim;
#include animscripts\shared;
get_flashed_anim()
{
return anim.civilianFlashedArray[ randomint( anim.civilianFlashedArray.size ) ];
}
main()
{
flashDuration = self flashBangGetTimeLeftSec();
if ( flashDuration <= 0 )
return;
animscripts\flashed::flashBangedLoop( get_flashed_anim(), flashDuration );
}

View File

@ -0,0 +1,74 @@
#include common_scripts\utility;
#include maps\_utility;
#include maps\_anim;
#include animscripts\shared;
#using_animtree( "generic_human" );
main()
{
animscripts\init::main();
if ( !isdefined( level._initialized_civilian_animations ) )
{
initCivilianAnims();
}
animscripts\civilian\civilian_init_common::civilian_init();
}
initCivilianAnims()
{
level._initialized_civilian_animations = true;
//put the default ones here:
level._scr_anim[ "default_civilian" ][ "run_combat" ] = [ %civilian_run_upright ];
level._scr_anim[ "default_civilian" ][ "run_hunched_combat" ] = [ %civilian_run_hunched_A, %civilian_run_hunched_C, %civilian_run_hunched_flinch ];
level._scr_anim[ "default_civilian" ][ "run_noncombat" ] = [ %civilian_walk_cool ];
level._scr_anim[ "default_civilian" ][ "run_hunched_weights" ] = get_cumulative_weights( [3, 3, 1] );
level._scr_anim[ "default_civilian" ][ "run_weights" ] = get_cumulative_weights( [ 1 ] );
level._scr_anim[ "default_civilian" ][ "idle_noncombat" ] = [ %unarmed_cowerstand_idle ];
level._scr_anim[ "default_civilian" ][ "idle_combat" ] = [ %casual_crouch_v2_idle, %unarmed_cowercrouch_idle_duck ];
level._scr_anim[ "default_civilian" ][ "dodge_left" ] = %civilian_briefcase_walk_dodge_L;
level._scr_anim[ "default_civilian" ][ "dodge_right" ] = %civilian_briefcase_walk_dodge_R;
level._scr_anim[ "default_civilian" ][ "react_stumble" ] = [ %run_react_stumble ];
//7 9 <- 8 is invalid, it's straight.
//4 6 <- 5 is invalid, it's not a turn.
//1 2 3
level._scr_anim[ "default_civilian"]["run_combat_turn"][1] = %civilian_run_upright_turnL135;
level._scr_anim[ "default_civilian"]["run_combat_turn"][2] = %civilian_run_upright_turn180;
level._scr_anim[ "default_civilian"]["run_combat_turn"][3] = %civilian_run_upright_turnR135;
level._scr_anim[ "default_civilian"]["run_combat_turn"][4] = %civilian_run_upright_turnL90;
level._scr_anim[ "default_civilian"]["run_combat_turn"][6] = %civilian_run_upright_turnR90;
level._scr_anim[ "default_civilian"]["run_combat_turn"][7] = %civilian_run_upright_turnL45;
level._scr_anim[ "default_civilian"]["run_combat_turn"][9] = %civilian_run_upright_turnR45;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][1] = %civilian_run_upright_turnL135;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][2] = %civilian_run_upright_turn180;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][3] = %civilian_run_upright_turnR135;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][4] = %civilian_run_hunched_turnL90;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][6] = %civilian_run_hunched_turnR90;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][7] = %civilian_run_hunched_turnL45;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][9] = %civilian_run_hunched_turnR45;
//a more dramatic version. Randomly chosen from.
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][1] = [];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][2] = [];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][3] = [];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][4] = [ %civilian_run_hunched_turnL90_slide, %civilian_run_hunched_turnL90_stumble ];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][6] = [ %civilian_run_hunched_turnR90_slide, %civilian_run_hunched_turnR90_stumble ];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][7] = [];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][9] = [];
//TagCC<NOTE>: not happy with this, but we don't have flashes around civilians on the moon,
//so I'm hesistent to mess with this just yet.
anim.civilianFlashedArray = [ %unarmed_cowerstand_react, %unarmed_cowercrouch_react_A, %unarmed_cowercrouch_react_B ];
}

View File

@ -0,0 +1,229 @@
#include common_scripts\utility;
#include maps\_utility;
#include maps\_anim;
#include animscripts\shared;
#using_animtree( "generic_human" );
civilian_init()
{
self.allowdeath = 1;
self.disablearrivals = true;
self.disableexits = true;
self.neverEnableCQB = true;
self.alwaysRunForward = true;
self OrientMode( "face default" );
self.combatmode = "no_cover";
self.pushplayer = false;
self pushplayer( false );
self.a.reactToBulletChance = 1;
// set the civilians animname to use defaults, or specific group if specified in radiant
animName = undefined;
if ( isdefined( self.civilian_walk_animation ) )
{
self.animname = self.civilian_walk_animation;
self attachProps( self.civilian_walk_animation );
self.alertLevel = "noncombat";
startNonCombat();
}
else
{
self.animname = "default_civilian";
self.alertLevel = "alert";
startCombat();
}
self thread checkCombatState();
// Make sure all required anims exist for this civilian, or set some defaults if they weren't specified
assert( isdefined( level._scr_anim[ self.animname ][ "run_noncombat" ] ) );
self.dropWeapon = false;
self DropAIWeapon();
self.saved = false;
}
attachProps( anime )
{
if ( isdefined( self.hasAttachedProps ) )
return;
initCivilianProps();
prop_model = anim.civilianProps[ anime ];
if ( isdefined( prop_model ) )
{
self attach( prop_model, "tag_inhand", true );
self.hasAttachedProps = true;
}
}
detachProps( anime )
{
if ( isdefined( self.hasAttachedProps ) )
{
self.hasAttachedProps = undefined;
self detach( anim.civilianProps[ anime ], "tag_inhand" );
}
}
initCivilianProps()
{
if ( isdefined( anim.civilianProps ) )
return;
anim.civilianProps = [];
anim.civilianProps[ "civilian_briefcase_walk" ] = "com_metal_briefcase";
anim.civilianProps[ "civilian_crazy_walk" ] = "electronics_pda";
anim.civilianProps[ "civilian_cellphone_walk" ] = "com_cellphone_on";
anim.civilianProps[ "sit_lunch_A" ] = "com_cellphone_on";
anim.civilianProps[ "civilian_soda_walk" ] = "ma_cup_single_closed";
anim.civilianProps[ "civilian_paper_walk" ] = "paper_memo";
anim.civilianProps[ "civilian_coffee_walk" ] = "cs_coffeemug02";
anim.civilianProps[ "civilian_pda_walk" ] = "electronics_pda";
anim.civilianProps[ "reading1" ] = "open_book";
anim.civilianProps[ "reading2" ] = "open_book";
anim.civilianProps[ "texting_stand" ] = "electronics_pda";
anim.civilianProps[ "texting_sit" ] = "electronics_pda";
anim.civilianProps[ "smoking1" ] = "prop_cigarette";
anim.civilianProps[ "smoking2" ] = "prop_cigarette";
}
startNonCombat()
{
self.turnRate = 0.2;
// dodge animations
if ( isdefined( self.civilian_walk_animation ) )
{
dodgeLeft = level._scr_anim[ "default_civilian" ][ "dodge_left" ];
dodgeRight = level._scr_anim[ "default_civilian" ][ "dodge_right" ];
if ( isdefined( level._scr_anim[ self.animname ][ "dodge_left" ] ) )
dodgeLeft = level._scr_anim[ self.animname ][ "dodge_left" ];
if ( isdefined( level._scr_anim[ self.animname ][ "dodge_right" ] ) )
dodgeRight = level._scr_anim[ self.animname ][ "dodge_right" ];
self animscripts\move::setDodgeAnims( dodgeLeft, dodgeRight );
}
// move turn animations
if ( isdefined( level._scr_anim[ self.animname ][ "turn_left_90" ] ) )
{
assert( isdefined( level._scr_anim[ self.animname ][ "turn_right_90" ] ) );
self.pathTurnAnimOverrideFunc = animscripts\civilian\civilian_move::civilian_nonCombatMoveTurn;
self.pathTurnAnimBlendTime = 0.1;
self enable_turnAnims();
}
else
{
self disable_turnAnims();
}
self.run_overrideanim = level._scr_anim[ self.animname ][ "run_noncombat" ];
self.walk_overrideanim = self.run_overrideanim;
self.run_overrideBulletReact = undefined;
if ( self.animname == "default_civilian" )
{
self.run_override_weights = level._scr_anim[ self.animname ][ "run_weights_noncombat" ];
self.walk_override_weights = self.run_override_weights;
}
}
startCombat()
{
self notify( "combat" );
self animscripts\move::clearDodgeAnims();
self.pathTurnAnimBlendTime = undefined;
self enable_turnAnims();
self.turnRate = 0.3;
standing_run = randomint( 3 ) < 1;
if ( isdefined( self.force_civilian_stand_run ) )
{
standing_run = true;
}
else
if ( isdefined( self.force_civilian_hunched_run ) )
{
standing_run = false;
}
if ( standing_run )
{
self.pathTurnAnimOverrideFunc = animscripts\civilian\civilian_move::civilian_combatMoveTurn;
self.run_overrideanim = level._scr_anim[ "default_civilian" ][ "run_combat" ];
self.run_override_weights = level._scr_anim[ "default_civilian" ][ "run_weights" ];
//now check if this animset defines it's own anims
if ( IsDefined( level._scr_anim[ self.animname ][ "run_combat" ] ) )
{
self.run_overrideanim = level._scr_anim[ self.animname ][ "run_combat" ];
self.run_override_weights = level._scr_anim[ self.animname ][ "run_weights" ];
}
}
else
{
self.pathTurnAnimOverrideFunc = animscripts\civilian\civilian_move::civilian_combatHunchedMoveTurn;
self.run_overrideanim = level._scr_anim[ "default_civilian" ][ "run_hunched_combat" ];
self.run_override_weights = level._scr_anim[ "default_civilian" ][ "run_hunched_weights" ];
//now check if this animset defines it's own anims
if ( IsDefined( level._scr_anim[ self.animname ][ "run_hunched_combat" ] ) )
{
self.run_overrideanim = level._scr_anim[ self.animname ][ "run_hunched_combat" ];
self.run_override_weights = level._scr_anim[ self.animname ][ "run_hunched_weights" ];
}
}
self.run_overrideBulletReact = level._scr_anim[ "default_civilian" ][ "react_stumble" ];
//now check if this animset defines it's own anims
if ( IsDefined( level._scr_anim[ self.animname ][ "react_stumble" ] ) )
{
self.run_overrideBulletReact = level._scr_anim[ self.animname ][ "react_stumble" ];
}
self.walk_overrideanim = self.run_overrideanim;
self.walk_override_weights = self.run_override_weights;
detachProps( self.civilian_walk_animation );
}
checkCombatState()
{
self endon( "death" );
wasInCombat = ( self.alertLevelInt > 1 );
while ( 1 )
{
isInCombat = ( self.alertLevelInt > 1 );
if ( wasInCombat && !isInCombat )
startNonCombat();
else if ( !wasInCombat && isInCombat )
startCombat();
wasInCombat = isInCombat;
wait 0.05; // TEMP make this an alert level change wait when code is in.
}
}

View File

@ -0,0 +1,133 @@
#include animscripts\Utility;
#using_animtree( "generic_human" );
main()
{
animscripts\move::main();
}
civilian_nonCombatMoveTurn( angleDiff )
{
assert( isdefined( level._scr_anim[ self.animname ][ "turn_left_90" ] ) );
assert( isdefined( level._scr_anim[ self.animname ][ "turn_right_90" ] ) );
turnAnim = undefined;
if ( angleDiff < -60 && angleDiff > -120 )
turnAnim = level._scr_anim[ self.animname ][ "turn_left_90" ];
if ( angleDiff > 60 && angleDiff < 120 )
turnAnim = level._scr_anim[ self.animname ][ "turn_right_90" ];
if ( isdefined( turnAnim ) && animscripts\move::pathChange_canDoTurnAnim( turnAnim ) )
return turnAnim;
else
return undefined;
}
//7 9 <- 8 is invalid, it's straight.
//4 6 <- 5 is invalid, it's not a turn.
//1 2 3
civilian_combatMoveTurn( angleDiff )
{
turnDir = -1;
turnAnim = undefined;
if ( angleDiff < -22.5 )
{
if ( angleDiff > -45 )
turnDir = 7;
else if ( angleDiff > -112.5 )
turnDir = 4;
else if ( angleDiff > -157.5 )
turnDir = 1;
else
turnDir = 2;
}
else if ( angleDiff > 22.5 )
{
if ( angleDiff < 45 )
turnDir = 9;
else if ( angleDiff < 112.5 )
turnDir = 6;
else if ( angleDiff < 157.5 )
turnDir = 3;
else
turnDir = 2;
}
if ( IsDefined(level._scr_anim[ self.animname ])
&& IsDefined(level._scr_anim[ self.animname ][ "run_combat_turn" ])
&& IsDefined(level._scr_anim[ self.animname ][ "run_combat_turn" ][turnDir]) )
{
turnAnim = level._scr_anim[ self.animname ][ "run_combat_turn" ][turnDir];
}
if ( IsDefined( turnAnim ) && animscripts\move::pathChange_canDoTurnAnim( turnAnim ) )
return turnAnim;
else
return undefined;
}
civilian_combatHunchedMoveTurn( angleDiff )
{
turnDir = -1;
turnAnim = undefined;
largeTurnAnim = undefined;
if ( angleDiff < -22.5 )
{
if ( angleDiff > -45 )
turnDir = 7;
else if ( angleDiff > -112.5 )
turnDir = 4;
else if ( angleDiff > -157.5 )
turnDir = 1;
else
turnDir = 2;
}
else if ( angleDiff > 22.5 )
{
if ( angleDiff < 45 )
turnDir = 9;
else if ( angleDiff < 112.5 )
turnDir = 6;
else if ( angleDiff < 157.5 )
turnDir = 3;
else
turnDir = 2;
}
if ( IsDefined(level._scr_anim[ self.animname ])
&& IsDefined(level._scr_anim[ self.animname ][ "run_combat_hunched_large_turn" ])
&& IsDefined(level._scr_anim[ self.animname ][ "run_combat_hunched_large_turn" ][turnDir]) )
{
largeTurns = level._scr_anim[ self.animname ][ "run_combat_hunched_large_turn" ][turnDir];
if ( largeTurns.size > 0 )
{
largeTurnAnim = largeTurns[RandomInt(largeTurns.size)];
}
else
{
largeTurnAnim = undefined;
}
}
if ( IsDefined( largeTurnAnim ) && ( RandomInt( 3 ) < 2 ) && animscripts\move::pathChange_canDoTurnAnim( largeTurnAnim ) )
return largeTurnAnim;
if ( IsDefined(level._scr_anim[ self.animname ])
&& IsDefined(level._scr_anim[ self.animname ][ "run_combat_hunched_turn" ])
&& IsDefined(level._scr_anim[ self.animname ][ "run_combat_hunched_turn" ][turnDir]) )
{
turnAnim = level._scr_anim[ self.animname ][ "run_combat_hunched_turn" ][turnDir];
}
if ( isdefined( turnAnim ) && animscripts\move::pathChange_canDoTurnAnim( turnAnim ) )
return turnAnim;
else
return undefined;
}

View File

@ -0,0 +1,4 @@
main()
{
animscripts\scripted::main();
}

View File

@ -0,0 +1,76 @@
#include common_scripts\utility;
#include maps\_utility;
#include maps\_anim;
#include animscripts\shared;
#using_animtree( "generic_human" );
main()
{
animscripts\lunar\init::main();
if ( !isdefined( level._initialized_civilian_animations ) )
{
initCivilianAnims();
}
animscripts\civilian\civilian_init_common::civilian_init();
}
initCivilianAnims()
{
level._initialized_civilian_animations = true;
level._scr_anim[ "default_civilian" ][ "run_combat" ] = [ %tp_moon_civ_run_combat ];
level._scr_anim[ "default_civilian" ][ "run_weights" ] = common_scripts\utility::get_cumulative_weights( [ 1 ] );
level._scr_anim[ "default_civilian" ][ "run_noncombat" ] = [ %tp_moon_civ_run_noncombat ];
level._scr_anim[ "default_civilian" ][ "run_hunched_combat" ] = [ %tp_moon_civ_run_hunched_combat_A, %tp_moon_civ_run_hunched_combat_B, %tp_moon_civ_run_hunched_combat_C ];
level._scr_anim[ "default_civilian" ][ "run_hunched_weights" ] = common_scripts\utility::get_cumulative_weights( [ 1, 1, 1 ] );
level._scr_anim[ "default_civilian" ][ "idle_noncombat" ] = [ %tp_moon_civ_idle_noncombat ];
level._scr_anim[ "default_civilian" ][ "idle_combat" ] = [ %tp_moon_civ_idle_combat_A, %tp_moon_civ_idle_combat_B ];
level._scr_anim[ "default_civilian" ][ "dodge_left" ] = %tp_moon_civ_dodge_L;
level._scr_anim[ "default_civilian" ][ "dodge_right" ] = %tp_moon_civ_dodge_R;
level._scr_anim[ "default_civilian" ][ "react_stumble" ] = [ %tp_moon_civ_react_stumble ];
level._scr_anim[ "default_civilian" ][ "turn_left_90" ] = %tp_moon_civ_run_noncombat_turn_L90;
level._scr_anim[ "default_civilian" ][ "turn_right_90" ] = %tp_moon_civ_run_noncombat_turn_R90;
//7 9 <- 8 is invalid, it's straight.
//4 6 <- 5 is invalid, it's not a turn.
//1 2 3
level._scr_anim[ "default_civilian"]["run_combat_turn"][1] = %tp_moon_civ_run_combat_turn_L135;
level._scr_anim[ "default_civilian"]["run_combat_turn"][2] = %tp_moon_civ_run_combat_turn_180;
level._scr_anim[ "default_civilian"]["run_combat_turn"][3] = %tp_moon_civ_run_combat_turn_R135;
level._scr_anim[ "default_civilian"]["run_combat_turn"][4] = %tp_moon_civ_run_combat_turn_L90;
level._scr_anim[ "default_civilian"]["run_combat_turn"][6] = %tp_moon_civ_run_combat_turn_R90;
level._scr_anim[ "default_civilian"]["run_combat_turn"][7] = %tp_moon_civ_run_combat_turn_L45;
level._scr_anim[ "default_civilian"]["run_combat_turn"][9] = %tp_moon_civ_run_combat_turn_R45;
//define these if we want hunched turns, they aren't required though.
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][1] = %tp_moon_civ_run_combat_turn_L135;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][2] = %tp_moon_civ_run_combat_turn_180;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][3] = %tp_moon_civ_run_combat_turn_R135;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][4] = %tp_moon_civ_run_combat_hunched_turnL90;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][6] = %tp_moon_civ_run_combat_hunched_turnR90;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][7] = %tp_moon_civ_run_combat_hunched_turnL45;
level._scr_anim[ "default_civilian"]["run_combat_hunched_turn"][9] = %tp_moon_civ_run_combat_hunched_turnR45;
/*
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][1] = undefined;
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][2] = undefined;
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][3] = undefined;
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][4] = [ %tp_moon_civ_run_combat_hunched_large_turnL90_slide, %tp_moon_civ_run_combat_hunched_large_turnL90_stumble ];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][6] = [ %tp_moon_civ_run_combat_hunched_large_turnR90_slide, %tp_moon_civ_run_combat_hunched_large_turnR90_stumble ];
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][7] = undefined;
level._scr_anim[ "default_civilian"]["run_combat_hunched_large_turn"][9] = undefined;
*/
}