procedure combat_p_proc begin
//bigguns
if (spec_ani != 1) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_POWERED_ARMOR) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_HARDENED_POWER_ARMOR) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_FLAMER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_FLAMER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_PLASMA_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_PLASMA_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_LASER_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_LASER_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_LASER_RIFLE_EXT_CAP) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_LASER_RIFLE_EXT_CAP) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_M60) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_M60) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_LIGHT_SUPPORT_WEAPON) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_LIGHT_SUPPORT_WEAPON) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_YK42B_PULSE_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_YK42B_PULSE_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_IMPROVED_FLAMETHROWER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_IMPROVED_FLAMETHROWER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_TURBO_PLASMA_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_TURBO_PLASMA_RIFLE)
then begin
art_change_fid_num(dude_obj, FID_HAPOWR);
anim(dude_obj, ANIM_falling, 0);
spec_ani := 1;
display_msg("combat start");
end
//miniguns
else if (spec_ani != 1) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_POWERED_ARMOR) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_HARDENED_POWER_ARMOR) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_MINIGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_MINIGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_AVENGER_MINIGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_AVENGER_MINIGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_VINDICATOR_MINIGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_VINDICATOR_MINIGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_GATLING_LASER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_GATLING_LASER)
then begin
art_change_fid_num(dude_obj, FID_HAPOWR);
anim(dude_obj, ANIM_up_stairs_right, 0);
spec_ani := 1;
display_msg("combat start");
end
//RK Launcher
else if (spec_ani != 1) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_POWERED_ARMOR) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_HARDENED_POWER_ARMOR) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_ROCKET_LAUNCHER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_ROCKET_LAUNCHER)
then begin
art_change_fid_num(dude_obj, FID_HAPOWR);
anim(dude_obj, ANIM_up_stairs_left, 0);
spec_ani := 1;
display_msg("combat start");
end
//Hammers
else if (spec_ani != 1) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_POWERED_ARMOR) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_HARDENED_POWER_ARMOR) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_SLEDGEHAMMER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_SLEDGEHAMMER) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_SUPER_SLEDGE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_SUPER_SLEDGE)
then begin
art_change_fid_num(dude_obj, FID_HAPOWR);
anim(dude_obj, ANIM_down_stairs_right, 0);
spec_ani := 1;
display_msg("combat start");
end
//Rifles
else if (spec_ani != 1) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_POWERED_ARMOR) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_HARDENED_POWER_ARMOR) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_ASSAULT_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_ASSAULT_RIFLE) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_ASSAULT_RIFLE_EXT_MAG) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_ASSAULT_RIFLE_EXT_MAG)
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_SHOTGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_SHOTGUN) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_LEFT_HAND)) == PID_ASSAULT_RIFLE_EXT_MAG) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_RIGHT_HAND)) == PID_ASSAULT_RIFLE_EXT_MAG)
then begin
art_change_fid_num(dude_obj, FID_HAPOWR);
anim(dude_obj, ANIM_down_stairs_right, 0);
spec_ani := 1;
display_msg("combat start");
end
//all other weapons
else if (spec_ani != 1) and
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_POWERED_ARMOR) or
(obj_pid(critter_inven_obj(dude_obj,INVEN_TYPE_WORN)) == PID_HARDENED_POWER_ARMOR)
then begin
art_change_fid_num(dude_obj, FID_HAPOWR);
anim(dude_obj, ANIM_magic_hands_up, 0);
spec_ani := 1;
display_msg("combat start");
end
// end
end