]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/server/bot/default/havocbot/havocbot.qh
Bot AI: while targetting an enemy try to pick a new target after some seconds (bot_ai...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / bot / default / havocbot / havocbot.qh
1 #pragma once
2
3 /*
4  * Globals and Fields
5  */
6
7 .float havocbot_keyboardskill;
8 .float ignoregoaltime;
9 .float lastfiredweapon;
10 .float lastcombotime;
11 .float havocbot_blockhead;
12
13 .float havocbot_keyboardtime;
14 .float havocbot_ducktime;
15 .float bot_chooseweapontime;
16 .float rocketjumptime;
17 .float nextaim;
18 .float havocbot_personal_waypoint_searchtime;
19 .float havocbot_personal_waypoint_failcounter;
20 .float havocbot_chooseenemy_finished;
21 .float havocbot_stickenemy_time;
22 .float havocbot_role_timeout;
23
24 .float bot_stop_moving_timeout;
25 .float bot_tracewalk_time;
26 .entity ignoregoal;
27 .entity bot_lastseengoal;
28 .entity havocbot_personal_waypoint;
29
30 .vector havocbot_keyboard;
31
32 /*
33  * Functions
34  */
35
36 void havocbot_ai(entity this);
37 void havocbot_aim(entity this);
38 void havocbot_setupbot(entity this);
39 void havocbot_movetogoal(entity this);
40 void havocbot_chooserole(entity this);
41 void havocbot_chooseenemy(entity this);
42 void havocbot_chooseweapon(entity this, .entity weaponentity);
43 void havocbot_bunnyhop(entity this, vector dir);
44 void havocbot_keyboard_movement(entity this, vector destorg);
45
46 float havocbot_resetgoal(entity this);
47 float havocbot_moveto(entity this, vector pos);
48 float havocbot_moveto_refresh_route(entity this);
49
50 vector havocbot_dodge(entity this);
51
52 void(entity this, float ratingscale, vector org, float sradius) havocbot_goalrating_items;
53 void(entity this, float ratingscale, vector org, float sradius) havocbot_goalrating_enemyplayers;
54
55 /*
56  * Imports
57  */
58
59 .entity draggedby;