Fix crash if Num_walls=0
[btb/d2x.git] / main / multibot.h
1 /* $Id: multibot.h,v 1.3 2004-08-28 23:17:45 schaffner Exp $ */
2 /*
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.
13 */
14
15 /*
16  *
17  * Header file for multiplayer robot support.
18  *
19  */
20
21
22 #ifndef _MULTIBOT_H
23 #define _MULTIBOT_H
24
25 #define MAX_ROBOTS_CONTROLLED 5
26
27 extern int robot_controlled[MAX_ROBOTS_CONTROLLED];
28 extern int robot_agitation[MAX_ROBOTS_CONTROLLED];
29 extern int robot_fired[MAX_ROBOTS_CONTROLLED];
30
31 int multi_can_move_robot(int objnum, int agitation);
32 void multi_send_robot_position(int objnum, int fired);
33 void multi_send_robot_fire(int objnum, int gun_num, vms_vector *fire);
34 void multi_send_claim_robot(int objnum);
35 void multi_send_robot_explode(int,int,char);
36 void multi_send_create_robot(int robotcen, int objnum, int type);
37 void multi_send_boss_actions(int bossobjnum, int action, int secondary, int objnum);
38 int multi_send_robot_frame(int sent);
39
40 void multi_do_robot_explode(char *buf);
41 void multi_do_robot_position(char *buf);
42 void multi_do_claim_robot(char *buf);
43 void multi_do_release_robot(char *buf);
44 void multi_do_robot_fire(char *buf);
45 void multi_do_create_robot(char *buf);
46 void multi_do_boss_actions(char *buf);
47 void multi_do_create_robot_powerups(char *buf);
48
49 int multi_explode_robot_sub(int botnum, int killer,char);
50
51 void multi_drop_robot_powerups(int objnum);
52 void multi_dump_robots(void);
53
54 void multi_strip_robots(int playernum);
55 void multi_check_robot_timeout(void);
56
57 void multi_robot_request_change(object *robot, int playernum);
58
59 #endif /* _MULTIBOT_H */