1 /* $Id: multibot.h,v 1.2 2003-10-10 09:36:35 btb Exp $ */
3 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
4 SOFTWARE CORPORATION ("PARALLAX"). PARALLAX, IN DISTRIBUTING THE CODE TO
5 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
6 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
7 IN USING, DISPLAYING, AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
8 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
9 FREE PURPOSES. IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
10 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES. THE END-USER UNDERSTANDS
11 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
12 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED.
17 * Header file for multiplayer robot support.
20 * Revision 1.2 1995/08/24 16:04:38 allender
21 * fix function prototype for compiler warning
23 * Revision 1.1 1995/05/16 15:59:53 allender
26 * Revision 2.1 1995/03/21 14:40:18 john
27 * Ifdef'd out the NETWORK code.
29 * Revision 2.0 1995/02/27 11:30:57 john
30 * New version 2.0, which has no anonymous unions, builds with
31 * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
33 * Revision 1.20 1995/02/06 18:18:05 rob
34 * Tweaking cooperative stuff.
36 * Revision 1.19 1995/02/04 16:49:50 rob
37 * Changed multi_send_robot_frame to return the number of robot positions that were sent.
39 * Revision 1.18 1995/02/04 12:29:32 rob
40 * Added buffered fire sends.
42 * Revision 1.17 1995/01/30 17:22:02 rob
43 * Added prototype for modem robot send function.
45 * Revision 1.16 1995/01/26 18:24:56 rob
46 * Reduced # of controlled bots.
48 * Revision 1.15 1995/01/25 19:26:35 rob
49 * Added define for robot laser agitation.
51 * Revision 1.14 1995/01/25 13:45:26 rob
52 * Added prototype of robot transfer fucm.
54 * Revision 1.13 1995/01/14 19:01:08 rob
55 * Added prototypes for new functionality.
57 * Revision 1.12 1995/01/12 16:41:53 rob
58 * Added new prototypes.
60 * Revision 1.11 1995/01/12 15:42:55 rob
61 * Fixing score awards for coop.
63 * Revision 1.10 1995/01/02 21:00:40 rob
64 * added robot matcen support.
66 * Revision 1.9 1994/12/31 21:03:53 rob
67 * More tweaking for robot behavior.
69 * Revision 1.8 1994/12/29 13:54:25 rob
70 * Ooops.. fixed a bug..
72 * Revision 1.7 1994/12/29 12:51:38 rob
73 * ADded proto for multi_robot_explode_sub
75 * Revision 1.6 1994/12/21 21:08:32 rob
76 * Added new functions for robot firing.
78 * Revision 1.5 1994/12/21 19:04:02 rob
79 * Fixing score accounting for multi robot games.
81 * Revision 1.4 1994/12/21 17:36:09 rob
84 * Revision 1.3 1994/12/21 11:12:02 rob
85 * Added new function and new vars.
87 * Revision 1.2 1994/12/19 16:41:42 rob
90 * Revision 1.1 1994/12/16 15:48:20 rob
100 #define MAX_ROBOTS_CONTROLLED 5
102 extern int robot_controlled[MAX_ROBOTS_CONTROLLED];
103 extern int robot_agitation[MAX_ROBOTS_CONTROLLED];
104 extern int robot_fired[MAX_ROBOTS_CONTROLLED];
106 int multi_can_move_robot(int objnum, int agitation);
107 void multi_send_robot_position(int objnum, int fired);
108 void multi_send_robot_fire(int objnum, int gun_num, vms_vector *fire);
109 void multi_send_claim_robot(int objnum);
110 void multi_send_robot_explode(int,int,char);
111 void multi_send_create_robot(int robotcen, int objnum, int type);
112 void multi_send_boss_actions(int bossobjnum, int action, int secondary, int objnum);
113 int multi_send_robot_frame(int sent);
115 void multi_do_robot_explode(char *buf);
116 void multi_do_robot_position(char *buf);
117 void multi_do_claim_robot(char *buf);
118 void multi_do_release_robot(char *buf);
119 void multi_do_robot_fire(char *buf);
120 void multi_do_create_robot(char *buf);
121 void multi_do_boss_actions(char *buf);
122 void multi_do_create_robot_powerups(char *buf);
124 int multi_explode_robot_sub(int botnum, int killer,char);
126 void multi_drop_robot_powerups(int objnum);
127 void multi_dump_robots(void);
129 void multi_strip_robots(int playernum);
130 void multi_check_robot_timeout(void);
132 void multi_robot_request_change(object *robot, int playernum);
134 #endif /* _MULTIBOT_H */