2 * Copyright (C) Volition, Inc. 1999. All rights reserved.
4 * All source code herein is the property of Volition, Inc. You may not sell
5 * or otherwise commercially exploit the source or things you created based on
10 * $Logfile: /Freespace2/code/Ship/AiBig.h $
15 * Header file for AI code related to large ships
18 * Revision 1.2 2002/06/09 04:41:12 relnev
19 * added copyright header
21 * Revision 1.1.1.1 2002/05/03 03:28:12 root
25 * 2 10/07/98 10:53a Dave
28 * 1 10/07/98 10:51a Dave
30 * 13 4/29/98 5:01p Mike
31 * Large overhaul in how turrets fire.
33 * 12 4/27/98 11:59p Mike
34 * Intermediate checkin. Getting big ship turrets firing at big ships to
35 * use pick_big_attack_point.
37 * 11 3/21/98 3:36p Mike
38 * Fix/optimize attacking of big ships.
40 * 10 1/29/98 1:39p Mike
41 * Better heat seeking homing on big ships.
43 * 9 1/22/98 5:14p Lawrance
44 * clean up ai_big code, clear path info when stop attacking a subsystem
46 * 8 1/06/98 6:58p Lawrance
47 * Attack turrets (sometimes) when fired upon while attacking a ship.
49 * 7 12/15/97 7:16p Lawrance
50 * improving subsystem attacking
52 * 6 12/01/97 5:11p Lawrance
53 * make strafe mode more effective... slow down when approaching and use
54 * afterburner in avoids
56 * 5 10/30/97 9:17p Lawrance
57 * work on getting AIM_STRAFE working well with disable/disarm, try to
60 * 4 10/30/97 12:32a Lawrance
61 * further work on AIM_STRAFE
63 * 3 10/29/97 6:24p Lawrance
66 * 2 10/26/97 3:24p Lawrance
67 * split off large ship ai code into AiBig.cpp
76 void ai_big_ship(object *objp);
78 void ai_big_subsys_path_cleanup(ai_info *aip);
82 int ai_big_maybe_enter_strafe_mode(object *objp, int weapon_objnum, int consider_target_only=0);
83 void ai_big_strafe_maybe_attack_turret(object *ship_objp, object *weapon_objp);
84 void ai_big_pick_attack_point(object *objp, object *attacker_objp, vector *attack_point, float fov=1.0f);
85 void ai_big_pick_attack_point_turret(object *objp, ship_subsys *ssp, vector *gpos, vector *gvec, vector *attack_point, float weapon_travel_dist, float fov=1.0f);