#! perl # for the tf animations, copy appropriate guesses for missing ones, to aid development before # all the anims are created. $did_something=1; while( $did_something ) { $did_something=0; &checkanim("swim.smd",""); &checkanim("body_poses_lean.smd",""); &checkanim("crouchwalke.smd","primary_crouch_walkn.smd"); &checkanim("crouchwalkn.smd","primary_crouch_walkn.smd"); &checkanim("crouchwalkne.smd","primary_crouch_walkn.smd"); &checkanim("crouchwalknw.smd","primary_crouch_walkn.smd"); &checkanim("crouchwalks.smd","primary_crouch_walkn.smd"); &checkanim("crouchwalkse.smd","primary_crouch_walkn.smd"); &checkanim("crouchwalksw.smd","primary_crouch_walkn.smd"); &checkanim("crouchwalkw.smd","primary_crouch_walkn.smd"); &checkanim("Melee_aim_matrix.smd",""); &checkanim("melee_crouch_aim_matrix.smd","primary_crouch_aim_matrix.smd"); &checkanim("melee_crouch_idle.smd","melee_idle.smd"); &checkanim("melee_crouch_swing.smd","melee_swing.smd"); &checkanim("melee_crouch_walkn.smd","crouchwalkn.smd"); &checkanim("Melee_grenade_throw.smd",""); &checkanim("melee_idle.smd",""); &checkanim("Melee_jump.smd",""); &checkanim("Melee_runN.smd",""); &checkanim("Melee_runN_aim_matrix.smd",""); &checkanim("melee_swim.smd","swim.smd"); &checkanim("melee_swim_swing.smd","swim.smd"); &checkanim("Melee_swing.smd","swim.smd"); &checkanim("melee_walkn.smd","walkn.smd"); &checkanim("Primary_aim_matrix.smd",""); &checkanim("Primary_crouch_aim_matrix.smd",""); &checkanim("Primary_crouch_fire.smd",""); &checkanim("primary_crouch_idle.smd",""); &checkanim("Primary_crouch_reload.smd",""); &checkanim("Primary_crouch_walkN.smd",""); &checkanim("Primary_fire.smd",""); &checkanim("Primary_grenade_throw.smd",""); &checkanim("primary_idle.smd",""); &checkanim("Primary_jump.smd",""); &checkanim("Primary_reload.smd",""); &checkanim("Primary_runN.smd",""); &checkanim("Primary_runN_aim_matrix.smd",""); &checkanim("Primary_swim.smd","swim.smd"); &checkanim("primary_swim_fire.smd","primary_fire.smd"); &checkanim("primary_swim_fire.smd","swim.smd"); &checkanim("primary_swim_reload.smd","swim.smd"); &checkanim("primary_walkn.smd","walkn.smd"); &checkanim("RunN.smd",""); &checkanim("RunE.smd","runn.smd"); &checkanim("RunNE.smd","runn.smd"); &checkanim("RunNW.smd","runn.smd"); &checkanim("RunS.smd","runn.cmd"); &checkanim("RunSE.smd","runs.cmd"); &checkanim("RunSW.smd","runs.cmd"); &checkanim("RunW.smd","runn.smd"); &checkanim("secondary_aim_matrix.smd",""); &checkanim("secondary_crouch_aim_matrix.smd",""); &checkanim("secondary_crouch_fire.smd",""); &checkanim("secondary_crouch_idle.smd",""); &checkanim("secondary_crouch_reload.smd",""); &checkanim("secondary_crouch_walkn.smd",""); &checkanim("secondary_fire.smd",""); &checkanim("secondary_grenade_throw.smd",""); &checkanim("secondary_idle.smd",""); &checkanim("secondary_jump.smd",""); &checkanim("secondary_reload.smd",""); &checkanim("secondary_runn.smd",""); &checkanim("secondary_runn_aim_matrix.smd",""); &checkanim("secondary_swim.smd","swim.smd"); &checkanim("secondary_swim_fire.smd","swim.smd"); &checkanim("secondary_swim_reload.smd","swim.smd"); &checkanim("secondary_walkn.smd","walkn.smd"); &checkanim("walke.smd","rune.smd"); &checkanim("walkn.smd","runn.smd"); &checkanim("walkne.smd","runne.smd"); &checkanim("walknw.smd","runnw.smd"); &checkanim("walks.smd","runs.smd"); &checkanim("walkse.smd","runse.smd"); &checkanim("walksw.smd","runsw.smd"); &checkanim("walkw.smd","runw.smd"); } sub checkanim { local($desired_file,$fallback_file)=@_; unless( -e $desired_file) { if (length($fallback_file) && (-e $fallback_file)) { print "**copying $fallback_file to $desired_file\n"; `copy $fallback_file $desired_file`; $did_something=1; } else { print "no fallback present for missing $desired_file, fallback=$fallback_file\n"; } } }