mirror of
https://github.com/mapbase-source/mapbase-model-src.git
synced 2025-03-13 14:10:15 +03:00
600 lines
22 KiB
Plaintext
600 lines
22 KiB
Plaintext
|
// ================================================================
|
||
|
//
|
||
|
// New Pistol Animations for Combine Soldiers
|
||
|
//
|
||
|
// Author: Blixibon
|
||
|
//
|
||
|
// (Metrocop animations were decompiled by Crowbar 0.71)
|
||
|
//
|
||
|
// ================================================================
|
||
|
//
|
||
|
// This QCI file implements full pistol idle, walk, run, aim, and crouch animations based on decompiled metrocop animations.
|
||
|
// These are combined with other soldier animations to help make them fit in with the soldier's existing posture/animation set
|
||
|
// and differentiate them from metrocops. They also use soldier walk/run blends and "NPC_CombineS" footstep animation events.
|
||
|
//
|
||
|
// Due to the limitations of my animation skills, this uses no custom SMD animations.
|
||
|
// Instead, most of these sequences involve complex QC commands applied on directly decompiled
|
||
|
// animations. This can produce surprisingly good results, but it's still very crude and has a few caveats which require
|
||
|
// a lot of work to iron out. As a result, this technique didn't always turn out perfectly and there are a few flaws in these
|
||
|
// sequences if you look hard enough. Fortunately, the animations are mostly passable otherwise.
|
||
|
//
|
||
|
// If you would like to contribute actual animatons to replace some of these sequences, please contact Blixibon.
|
||
|
//
|
||
|
// ================================================================
|
||
|
|
||
|
|
||
|
|
||
|
// ================================================================
|
||
|
// Metrocop Base Animations
|
||
|
// ================================================================
|
||
|
$include "NewPistolAnimations_MetrocopBase.qci"
|
||
|
|
||
|
// ================================================================
|
||
|
// New Weightlists
|
||
|
// ================================================================
|
||
|
$weightlist "weights_pistol_new_arms" {
|
||
|
"ValveBiped.Bip01_Pelvis" 0
|
||
|
"ValveBiped.Bip01_Spine4" 1
|
||
|
"ValveBiped.Bip01_L_Clavicle" 1
|
||
|
"ValveBiped.Bip01_L_UpperArm" 1
|
||
|
"ValveBiped.Bip01_L_Forearm" 1
|
||
|
"ValveBiped.Bip01_L_Hand" 1
|
||
|
"ValveBiped.Bip01_R_Clavicle" 1
|
||
|
"ValveBiped.Bip01_R_UpperArm" 1
|
||
|
"ValveBiped.Bip01_R_Forearm" 1
|
||
|
"ValveBiped.Bip01_R_Hand" 1
|
||
|
}
|
||
|
|
||
|
$weightlist "weights_pistol_new_arms2" {
|
||
|
"ValveBiped.Bip01_Pelvis" 0
|
||
|
"ValveBiped.Bip01_Spine4" 0.5
|
||
|
"ValveBiped.Bip01_L_Clavicle" 0.5
|
||
|
"ValveBiped.Bip01_L_UpperArm" 0.5
|
||
|
"ValveBiped.Bip01_L_Forearm" 0.5
|
||
|
"ValveBiped.Bip01_L_Hand" 0.5
|
||
|
"ValveBiped.Bip01_R_Clavicle" 0.5
|
||
|
"ValveBiped.Bip01_R_UpperArm" 0.5
|
||
|
"ValveBiped.Bip01_R_Forearm" 0.5
|
||
|
"ValveBiped.Bip01_R_Hand" 0.5
|
||
|
}
|
||
|
|
||
|
$weightlist "weights_pistol_new_arms3" {
|
||
|
"ValveBiped.Bip01_Pelvis" 0
|
||
|
"ValveBiped.Bip01_Spine4" 0
|
||
|
"ValveBiped.Bip01_L_Clavicle" 1
|
||
|
"ValveBiped.Bip01_L_UpperArm" 1
|
||
|
"ValveBiped.Bip01_L_Forearm" 1
|
||
|
"ValveBiped.Bip01_L_Hand" 1
|
||
|
"ValveBiped.Bip01_R_Clavicle" 1
|
||
|
"ValveBiped.Bip01_R_UpperArm" 1
|
||
|
"ValveBiped.Bip01_R_Forearm" 1
|
||
|
"ValveBiped.Bip01_R_Hand" 1
|
||
|
}
|
||
|
|
||
|
$weightlist "weights_pistol_new_arms4" {
|
||
|
"ValveBiped.Bip01_Pelvis" 0
|
||
|
"ValveBiped.Bip01_Spine4" 0.5
|
||
|
"ValveBiped.Bip01_L_Clavicle" 0.5
|
||
|
"ValveBiped.Bip01_L_UpperArm" 0
|
||
|
"ValveBiped.Bip01_L_Forearm" 0
|
||
|
"ValveBiped.Bip01_L_Hand" 0
|
||
|
"ValveBiped.Bip01_R_Clavicle" 0.5
|
||
|
"ValveBiped.Bip01_R_UpperArm" 0.5
|
||
|
"ValveBiped.Bip01_R_Forearm" 0.5
|
||
|
"ValveBiped.Bip01_R_Hand" 0.5
|
||
|
}
|
||
|
|
||
|
$weightlist "weights_larm_only" { "ValveBiped.Bip01_Pelvis" 0 "ValveBiped.Bip01_L_UpperArm" 1 "ValveBiped.Bip01_L_Forearm" 1 "ValveBiped.Bip01_L_Hand" 1 }
|
||
|
$weightlist "weights_legs_only" { "ValveBiped.Bip01_Spine" 0 "ValveBiped.Bip01_Pelvis" 1 "ValveBiped.Bip01_L_Thigh" 1 "ValveBiped.Bip01_R_Thigh" 1 }
|
||
|
|
||
|
// ================================================================
|
||
|
//
|
||
|
// The layers below are combined with existing soldier animations to create believable-looking pistol animations.
|
||
|
//
|
||
|
// 'layer_pistolangryidle2' is the most important layer, although due to weightlists and the soldier combat stance differing
|
||
|
// so much from metrocops, many existing soldier animations do not align the layer with the soldier's actual forward direction.
|
||
|
// As a result, we have to have "nudged" versions of this layer which use aiming animations to slightly offset the direction
|
||
|
// to a point where the aiming animations are facing properly.
|
||
|
//
|
||
|
// This should be phased out if full pistol animation SMDs are added.
|
||
|
//
|
||
|
// ================================================================
|
||
|
$sequence "layer_pistolangryidle2_up_left" "a_pistol_aim_up_left" weightlist "weights_pistol_new_arms2" delta hidden
|
||
|
$sequence "layer_pistolangryidle2_up_mid" "a_pistol_aim_up_center" weightlist "weights_pistol_new_arms2" delta hidden
|
||
|
$sequence "layer_pistolangryidle2_mid_left" "a_pistol_aim_mid_left" weightlist "weights_pistol_new_arms4" delta hidden
|
||
|
$sequence "layer_pistolangryidle2_mid_right" "a_pistol_aim_mid_right" weightlist "weights_pistol_new_arms4" delta hidden
|
||
|
$sequence "layer_pistolangryidle2_down" "a_pistol_aim_down_center" weightlist "weights_pistol_new_arms3" delta hidden
|
||
|
|
||
|
$sequence "layer_pistolangryidle2" {
|
||
|
"police_animations_anims\pistolangryidle2.smd"
|
||
|
weightlist "weights_pistol_new_arms"
|
||
|
addlayer "layer_pistolangryidle2_up_mid"
|
||
|
hidden
|
||
|
}
|
||
|
|
||
|
$sequence "layer_pistolangryidle2_nudgeright" {
|
||
|
"police_animations_anims\pistolangryidle2.smd"
|
||
|
weightlist "weights_pistol_new_arms"
|
||
|
addlayer "layer_pistolangryidle2_up_mid"
|
||
|
addlayer "layer_pistolangryidle2_up_mid" // Need to layer this twice
|
||
|
addlayer "layer_pistolangryidle2_mid_right"
|
||
|
hidden
|
||
|
}
|
||
|
|
||
|
$sequence "layer_pistolangryidle2_nudgeleft" {
|
||
|
"police_animations_anims\pistolangryidle2.smd"
|
||
|
weightlist "weights_pistol_new_arms"
|
||
|
addlayer "layer_pistolangryidle2_up_mid"
|
||
|
addlayer "layer_pistolangryidle2_mid_left"
|
||
|
hidden
|
||
|
}
|
||
|
|
||
|
$sequence "layer_pistolangryidle2_armsonly" {
|
||
|
"police_animations_anims\pistolangryidle2.smd"
|
||
|
weightlist "weights_pistol_new_arms2"
|
||
|
hidden
|
||
|
}
|
||
|
|
||
|
$sequence "layer_shootp1" "police_animations_anims\shootp1.smd" subtract "layer_shootp1" 4 delta hidden
|
||
|
$sequence "layer_reload_pistol" "police_animations_anims\reload_pistol.smd" weightlist "weights_pistol_new_arms" addlayer "layer_pistolangryidle2_up_mid" hidden
|
||
|
$sequence "layer_reload_combine" "combine_soldier_anims_anims\reload.smd" weightlist "weights_legs_only" hidden
|
||
|
$sequence "layer_reload_combine_low" "combine_soldier_anims_anims\reload_low.smd" weightlist "weights_legs_only" hidden
|
||
|
|
||
|
// ================================================================
|
||
|
// Combat Animations
|
||
|
// ================================================================
|
||
|
$sequence "CombatIdle1_Pistol" { // pistolangryidle2
|
||
|
$Blend_SMD_Rifle$
|
||
|
blendlayer "layer_pistolangryidle2" 0 0 0 0 local
|
||
|
addlayer "Aim_stand_delta_all"
|
||
|
//snap
|
||
|
|
||
|
//"police_animations_anims\pistolangryidle2.smd"
|
||
|
activity "ACT_IDLE_ANGRY_PISTOL" 1
|
||
|
//addlayer "layer_pistolangryidle2_up"
|
||
|
//node "shooting_pistol"
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
fps 30
|
||
|
loop
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 18 4.61 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 30 30 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -14.07 -4.91 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 30 30 target 2
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 30 30 target 1
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 30 30 target 0
|
||
|
}
|
||
|
|
||
|
$sequence "Crouch_idle_pistol" {
|
||
|
"police_animations_anims\Crouch_idle_pistol.smd"
|
||
|
activity "ACT_COVER_PISTOL_LOW" 1
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
//node "crouching_pistol"
|
||
|
fps 30
|
||
|
loop
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 5.77 8.81 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 80 80 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -11.36 9.68 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 80 80 target 2
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 80 80 target 0
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 80 80 target 1
|
||
|
}
|
||
|
|
||
|
$sequence "shootp1" {
|
||
|
$Blend_SMD_Rifle$
|
||
|
blendlayer "layer_pistolangryidle2" 0 0 0 0 local
|
||
|
addlayer "layer_shootp1" //blendlayer "layer_shootp1" 0 2 4 4
|
||
|
addlayer "Aim_stand_delta_all"
|
||
|
numframes 5
|
||
|
//snap
|
||
|
|
||
|
//"police_animations_anims\shootp1.smd"
|
||
|
activity "ACT_RANGE_ATTACK_PISTOL" 1
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
//addlayer "pistol_Aim_all"
|
||
|
//node "shooting_pistol"
|
||
|
fps 30
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 18 4.61 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 4 4 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -14.07 -4.91 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 4 4 target 2
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 4 4 target 1
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 4 4 target 0
|
||
|
}
|
||
|
|
||
|
$sequence "gesture_shoot_pistol" {
|
||
|
"police_animations_anims\gesture_shoot_pistol.smd"
|
||
|
activity "ACT_GESTURE_RANGE_ATTACK_PISTOL" 1
|
||
|
delta
|
||
|
// Crowbar writes this subtract option to prevent jigglebone and poseparameter problems when delta sequences are recompiled.
|
||
|
subtract "@gesture_shoot_pistol_corrective_animation" 0
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
fps 30
|
||
|
}
|
||
|
|
||
|
$sequence "reload_pistol" {
|
||
|
$Blend_SMD_Rifle$
|
||
|
blendlayer "layer_pistolangryidle2" 0 0 1 5 local
|
||
|
blendlayer "layer_pistolangryidle2" 33 39 41 41 local
|
||
|
blendlayer "layer_reload_pistol" 0 5 33 39
|
||
|
blendlayer "layer_reload_combine" 0 5 35 40
|
||
|
//blendlayer "Aim_stand_delta_all" 0 0 0 15 spline
|
||
|
//blendlayer "Aim_stand_delta_all" 30 41 41 41 spline
|
||
|
numframes 41
|
||
|
|
||
|
//"police_animations_anims\reload_pistol.smd"
|
||
|
activity "ACT_RELOAD_PISTOL" 1
|
||
|
{ event 3017 0 "" }
|
||
|
{ event 3018 34 "" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
//blendlayer "pistol_Aim_all" 0 0 0 15 spline
|
||
|
//blendlayer "pistol_Aim_all" 30 41 41 41 spline
|
||
|
//node "shooting_pistol"
|
||
|
fps 30
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 11.95 7.22 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 40 40 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -9.2 -3.23 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 40 40 target 2
|
||
|
//ikrule "lhand" touch "ValveBiped.Bip01_R_Hand" contact 29 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 26 29 30 31 target 1
|
||
|
//ikrule "lhand" touch "ValveBiped.Bip01_Spine" contact 13 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 10 13 16 18 target 1
|
||
|
//ikrule "lhand" touch "ValveBiped.Bip01_R_Hand" contact 40 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 38 40 10 10 target 1 usesequence
|
||
|
//ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 40 40 target 0
|
||
|
}
|
||
|
|
||
|
$sequence "reload_pistol_low" { // crouch_reload_pistol
|
||
|
$Blend_SMD_Rifle_Crouched$
|
||
|
blendlayer "layer_pistolangryidle2" 0 0 1 5 local
|
||
|
blendlayer "layer_pistolangryidle2" 33 39 41 41 local
|
||
|
blendlayer "layer_reload_pistol" 0 5 33 39
|
||
|
blendlayer "layer_reload_combine_low" 0 5 35 40
|
||
|
numframes 41
|
||
|
|
||
|
//"police_animations_anims\crouch_reload_pistol.smd"
|
||
|
activity "ACT_RELOAD_PISTOL_LOW" 1
|
||
|
{ event 3017 0 "" }
|
||
|
{ event 3018 34 "" }
|
||
|
//{ event 3017 0 "" }
|
||
|
//{ event 3018 56 "" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
//node "crouching_pistol"
|
||
|
fps 30
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 18 5.59 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 30 30 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -10.25 -3.4 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 30 30 target 2
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 60 60 target 0
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 60 60 target 1
|
||
|
}
|
||
|
|
||
|
$sequence "gesture_reload_pistolspine" {
|
||
|
"police_animations_anims\gesture_reload_pistolspine.smd"
|
||
|
delta
|
||
|
// Crowbar writes this subtract option to prevent jigglebone and poseparameter problems when delta sequences are recompiled.
|
||
|
subtract "@gesture_reload_pistolspine_corrective_animation" 0
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
hidden
|
||
|
fps 30
|
||
|
weightlist "weights_neck_trans_x"
|
||
|
}
|
||
|
|
||
|
$sequence "gesture_reload_pistolarms" {
|
||
|
"police_animations_anims\gesture_reload_pistolarms.smd"
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
hidden
|
||
|
fps 30
|
||
|
//ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 40 40 target 0
|
||
|
//ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 40 40 target 1
|
||
|
weightlist "weights_gesture_reload_pistolarms"
|
||
|
}
|
||
|
|
||
|
$sequence "gesture_reload_pistol" {
|
||
|
"police_animations_anims\gesture_reload_pistol.smd"
|
||
|
activity "ACT_GESTURE_RELOAD_PISTOL" 1
|
||
|
{ event 3017 0 "" }
|
||
|
{ event 3018 37 "" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
iklock "rfoot" 1 0
|
||
|
iklock "lfoot" 1 0
|
||
|
blendlayer "gesture_reload_pistolarms" 0 5 32 40 spline
|
||
|
blendlayer "gesture_reload_pistolspine" 0 5 32 40 spline
|
||
|
//node "standing_pistol"
|
||
|
fps 30
|
||
|
//ikrule "lhand" touch "ValveBiped.Bip01_Pelvis" contact 8 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 1 8 16 20 target 1 usesequence
|
||
|
//ikrule "lhand" touch "ValveBiped.Bip01_R_Hand" contact 22 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 18 22 38 39 target 1 usesequence
|
||
|
weightlist "weights_gesture_reload_pistol"
|
||
|
}
|
||
|
|
||
|
$sequence "crouch_aim_pistol" {
|
||
|
$Blend_SMD_Rifle_Crouched$
|
||
|
blendlayer "layer_pistolangryidle2" 0 0 0 0 local
|
||
|
addlayer "Aim_stand_delta_all" //addlayer "Aim_crouch_delta_all"
|
||
|
|
||
|
//"combine_soldier_anims_anims\crouch_aim_sm1.smd"
|
||
|
activity "ACT_RANGE_AIM_PISTOL_LOW" 1
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
fps 18
|
||
|
loop
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 18 5.59 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 30 30 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -10.25 -3.4 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 30 30 target 2
|
||
|
//ikrule "lhand" touch "ValveBiped.Bip01_R_Hand" contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 30 30 target 1
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 30 30 target 0
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 30 30 target 0
|
||
|
}
|
||
|
|
||
|
$sequence "shootp1c" {
|
||
|
$Blend_SMD_Rifle_Crouched$
|
||
|
blendlayer "layer_pistolangryidle2" 0 0 0 0 local
|
||
|
addlayer "layer_shootp1" //blendlayer "layer_shootp1" 0 2 4 4
|
||
|
addlayer "Aim_stand_delta_all" //addlayer "Aim_crouch_delta_all"
|
||
|
numframes 5
|
||
|
//snap
|
||
|
|
||
|
//"combine_soldier_anims_anims\shootSMG1c.smd"
|
||
|
//blendlayer "layer_pistolangryidle2" 0 0 0 0 local
|
||
|
//addlayer "Aim_crouch_delta_all"
|
||
|
////snap
|
||
|
|
||
|
activity "ACT_RANGE_ATTACK_PISTOL_LOW" 1
|
||
|
{ event 4 0 "" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
fps 30
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 18 5.59 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 4 4 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -10.25 -3.4 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 4 4 target 2
|
||
|
//ikrule "lhand" touch "ValveBiped.Bip01_R_Hand" contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 4 4 target 1
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 4 4 target 0
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 4 4 target 0
|
||
|
}
|
||
|
|
||
|
// ================================================================
|
||
|
// Aim Animations
|
||
|
// ================================================================
|
||
|
$sequence "pistol_Aim_all" {
|
||
|
"a_pistol_aim_straight_up"
|
||
|
"a_pistol_aim_straight_up"
|
||
|
"a_pistol_aim_straight_up"
|
||
|
"a_pistol_aim_up_right"
|
||
|
"a_pistol_aim_up_center"
|
||
|
"a_pistol_aim_up_left"
|
||
|
"a_pistol_aim_mid_right"
|
||
|
"a_pistol_aim_mid_center"
|
||
|
"a_pistol_aim_mid_left"
|
||
|
"a_pistol_aim_down_right"
|
||
|
"a_pistol_aim_down_center"
|
||
|
"a_pistol_aim_down_left"
|
||
|
blend "aim_yaw" -43.47391 45.51665
|
||
|
blend "aim_pitch" -82.85746 45.59517
|
||
|
blendwidth 3
|
||
|
delta
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
hidden
|
||
|
iklock "rfoot" 1 0
|
||
|
iklock "lfoot" 1 0
|
||
|
}
|
||
|
|
||
|
$sequence "WalkN_pistol_Aim_all" {
|
||
|
"a_WalkN_pistol_aim_straight_up"
|
||
|
"a_WalkN_pistol_aim_straight_up"
|
||
|
"a_WalkN_pistol_aim_straight_up"
|
||
|
"a_WalkN_pistol_aim_up_right"
|
||
|
"a_WalkN_pistol_aim_up_center"
|
||
|
"a_WalkN_pistol_aim_up_left"
|
||
|
"a_WalkN_pistol_aim_mid_right"
|
||
|
"a_WalkN_pistol_aim_mid_center"
|
||
|
"a_WalkN_pistol_aim_mid_left"
|
||
|
"a_WalkN_pistol_aim_down_right"
|
||
|
"a_WalkN_pistol_aim_down_center"
|
||
|
"a_WalkN_pistol_aim_down_left"
|
||
|
blend "aim_yaw" -45.59397 44.46127
|
||
|
blend "aim_pitch" -78.71045 43.57745
|
||
|
blendwidth 3
|
||
|
delta
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
hidden
|
||
|
iklock "rfoot" 1 0
|
||
|
iklock "lfoot" 1 0
|
||
|
}
|
||
|
|
||
|
// ================================================================
|
||
|
// Walk Animations
|
||
|
// ================================================================
|
||
|
$sequence "walk_aiming_pistol_all" {
|
||
|
"a_SoldierWalkS"
|
||
|
"a_SoldierWalkSE"
|
||
|
"a_SoldierWalkE"
|
||
|
"a_SoldierWalkNE"
|
||
|
"a_SoldierWalkN"
|
||
|
"a_SoldierWalkNW"
|
||
|
"a_SoldierWalkW"
|
||
|
"a_SoldierWalkSW"
|
||
|
"a_SoldierWalkS"
|
||
|
activity "ACT_WALK_AIM_PISTOL" 1
|
||
|
blend "move_yaw" -180 180
|
||
|
blendwidth 9
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
blendlayer "layer_pistolangryidle2_nudgeleft" 0 0 0 0 local
|
||
|
addlayer "Aim_stand_delta_all"
|
||
|
//addlayer "WalkN_pistol_Aim_all"
|
||
|
//blendlayer "layer_walk_aiming_pistol" 0 0 0 0 local
|
||
|
}
|
||
|
|
||
|
$sequence "layer_walk_hold_pistol" {
|
||
|
"police_animations_anims\layer_walk_hold_pistol.smd"
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
hidden
|
||
|
addlayer "WalkN_pistol_Aim_all"
|
||
|
fps 30
|
||
|
loop
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 30 30 target 0
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 30 30 target 1
|
||
|
weightlist "weights_pistol_new_arms"
|
||
|
}
|
||
|
|
||
|
$sequence "walk_hold_pistol" {
|
||
|
"a_SoldierWalkS"
|
||
|
"a_SoldierWalkSE"
|
||
|
"a_SoldierWalkE"
|
||
|
"a_SoldierWalkNE"
|
||
|
"a_SoldierWalkN"
|
||
|
"a_SoldierWalkNW"
|
||
|
"a_SoldierWalkW"
|
||
|
"a_SoldierWalkSW"
|
||
|
"a_SoldierWalkS"
|
||
|
activity "ACT_WALK_PISTOL" 1
|
||
|
blend "move_yaw" -180 180
|
||
|
blendwidth 9
|
||
|
{ event 6004 9 "NPC_CombineS" }
|
||
|
{ event 6005 25 "NPC_CombineS" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
//addlayer "layer_walk_hold_pistol"
|
||
|
blendlayer "layer_pistolangryidle2_armsonly" 0 0 0 0 local
|
||
|
//node "standing_pistol"
|
||
|
}
|
||
|
|
||
|
$sequence "walk_hold_pistol_easy" {
|
||
|
"a_SoldierWalkEasyS"
|
||
|
"a_SoldierWalkEasySE"
|
||
|
"a_SoldierWalkEasyE"
|
||
|
"a_SoldierWalkEasyNE"
|
||
|
"a_SoldierWalkEasyN"
|
||
|
"a_SoldierWalkEasyNW"
|
||
|
"a_SoldierWalkEasyW"
|
||
|
"a_SoldierWalkEasySW"
|
||
|
"a_SoldierWalkEasyS"
|
||
|
activity "ACT_WALK_EASY_PISTOL" 1
|
||
|
blend "move_yaw" -180 180
|
||
|
blendwidth 9
|
||
|
{ event 6004 9 "NPC_CombineS" }
|
||
|
{ event 6005 25 "NPC_CombineS" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
blendlayer "layer_walk_hold_pistol" 0 0 0 0 local
|
||
|
//addlayer "layer_pistolangryidle2_armsonly"
|
||
|
//node "standing_pistol"
|
||
|
}
|
||
|
|
||
|
// ================================================================
|
||
|
// Run Animations
|
||
|
// ================================================================
|
||
|
$sequence "run_hold_pistol" {
|
||
|
"a_SoldierRunS"
|
||
|
"a_SoldierRunSE"
|
||
|
"a_SoldierRunE"
|
||
|
"a_SoldierRunNE"
|
||
|
"a_SoldierRunN"
|
||
|
"a_SoldierRunNW"
|
||
|
"a_SoldierRunW"
|
||
|
"a_SoldierRunSW"
|
||
|
"a_SoldierRunS"
|
||
|
activity "ACT_RUN_PISTOL" 1
|
||
|
blend "move_yaw" -180 180
|
||
|
blendwidth 9
|
||
|
{ event 6004 7 "NPC_CombineS" }
|
||
|
{ event 6005 16 "NPC_CombineS" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
blendlayer "layer_pistolangryidle2_armsonly" 0 0 0 0 local
|
||
|
}
|
||
|
|
||
|
$sequence "run_aiming_pistol_all" {
|
||
|
"a_SoldierRunS"
|
||
|
"a_SoldierRunSE"
|
||
|
"a_SoldierRunE"
|
||
|
"a_SoldierRunNE"
|
||
|
"a_SoldierRunN"
|
||
|
"a_SoldierRunNW"
|
||
|
"a_SoldierRunW"
|
||
|
"a_SoldierRunSW"
|
||
|
"a_SoldierRunS"
|
||
|
activity "ACT_RUN_AIM_PISTOL" 1
|
||
|
blend "move_yaw" -180 180
|
||
|
blendwidth 9
|
||
|
{ event 6004 7 "NPC_CombineS" }
|
||
|
{ event 6005 16 "NPC_CombineS" }
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
blendlayer "layer_pistolangryidle2_nudgeright" 0 0 0 0 local
|
||
|
addlayer "Aim_stand_delta_all"
|
||
|
}
|
||
|
|
||
|
// ================================================================
|
||
|
// Idle Animations
|
||
|
// ================================================================
|
||
|
$sequence "Idle1_Pistol_armlayer" {
|
||
|
"combine_soldier_anims_anims\Idle_Unarmed.smd"
|
||
|
weightlist "weights_larm_only"
|
||
|
hidden
|
||
|
}
|
||
|
|
||
|
$weightlist "weights_pistol_idle_layer2" {
|
||
|
"ValveBiped.Bip01_Pelvis" 0
|
||
|
"ValveBiped.Bip01_Spine4" 0.5
|
||
|
"ValveBiped.Bip01_Neck1" 0
|
||
|
"ValveBiped.Bip01_L_Clavicle" 1
|
||
|
"ValveBiped.Bip01_L_UpperArm" 0
|
||
|
"ValveBiped.Bip01_L_Forearm" 0.5
|
||
|
"ValveBiped.Bip01_L_Hand" 1
|
||
|
"ValveBiped.Bip01_R_Clavicle" 0.5
|
||
|
"ValveBiped.Bip01_R_UpperArm" 0
|
||
|
"ValveBiped.Bip01_R_Forearm" 1
|
||
|
"ValveBiped.Bip01_R_Hand" 1
|
||
|
"ValveBiped.Bip01_R_Finger0" 0
|
||
|
"ValveBiped.Bip01_R_Finger1" 0
|
||
|
"ValveBiped.Bip01_R_Finger2" 0
|
||
|
"ValveBiped.Bip01_R_Finger3" 0
|
||
|
"ValveBiped.Bip01_R_Finger4" 0
|
||
|
}
|
||
|
|
||
|
$weightlist "weights_pistol_idle_layer2a" {
|
||
|
"ValveBiped.Bip01_Pelvis" 0
|
||
|
"ValveBiped.Bip01_L_Clavicle" 0
|
||
|
"ValveBiped.Bip01_L_UpperArm" 0.25
|
||
|
"ValveBiped.Bip01_L_Forearm" 0.5
|
||
|
"ValveBiped.Bip01_L_Hand" 1
|
||
|
"ValveBiped.Bip01_R_Clavicle" 0.5
|
||
|
"ValveBiped.Bip01_R_UpperArm" 0.25
|
||
|
"ValveBiped.Bip01_R_Forearm" 0.5
|
||
|
}
|
||
|
|
||
|
// "Lowered" animation
|
||
|
$sequence "Idle_Pistol_Layer2a" {
|
||
|
"police_animations_anims\a_walkN_hold_pistol.smd"
|
||
|
frame 0 0
|
||
|
numframes 30
|
||
|
weightlist "weights_pistol_idle_layer2a"
|
||
|
loop
|
||
|
hidden
|
||
|
}
|
||
|
|
||
|
// "Raised" animation combined with the lowered one
|
||
|
$sequence "Idle1_Pistol_Layer2" {
|
||
|
"police_animations_anims\Crouch_idle_pistol.smd"
|
||
|
frame 0 0
|
||
|
numframes 30
|
||
|
addlayer "Idle_Pistol_Layer2a"
|
||
|
weightlist "weights_pistol_idle_layer2"
|
||
|
loop
|
||
|
hidden
|
||
|
}
|
||
|
|
||
|
// Idle animation which blends the raised/lowered combo.
|
||
|
// This is an attempt to create an animation akin to the soldier's other Idle1 animations.
|
||
|
// The left hand isn't quite aligned, so it could still use some work.
|
||
|
$sequence "Idle1_Pistol" {
|
||
|
"combine_soldier_anims_anims\Idle1.smd"
|
||
|
activity "ACT_IDLE_PISTOL" 1
|
||
|
addlayer "Idle1_Pistol_Layer2"
|
||
|
fadein 0.2
|
||
|
fadeout 0.2
|
||
|
fps 30
|
||
|
loop
|
||
|
ikrule "lfoot" footstep contact 0 fakeorigin 0.78 6.48 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 341 341 target 3
|
||
|
ikrule "rfoot" footstep contact 0 fakeorigin -1.99 -1.78 0 fakerotate 0 0 0 floor 0 height 20 radius 2.5 range 0 0 341 341 target 2
|
||
|
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 341 341 target 1
|
||
|
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 341 341 target 0
|
||
|
}
|