]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/pathlib/pathlib.qh
Merge branch 'master' into terencehill/translated_keys
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / pathlib / pathlib.qh
index 9afbcd55451c3a8ecbff5cca7fc094d05f0e6d41..d1bafe392a892e2fae67b165eb9c8b32d1a41a9a 100644 (file)
-#ifndef PATHLIB_H
-#define PATHLIB_H
-
-#if defined(CSQC)
-#elif defined(MENUQC)
-#elif defined(SVQC)
-       #include "../../common/util-pre.qh"
-    #include "../sys-pre.qh"
-    #include "../../dpdefs/progsdefs.qh"
-    #include "../../dpdefs/dpextensions.qh"
-    #include "../sys-post.qh"
-    #include "../../warpzonelib/anglestransform.qh"
-    #include "../../warpzonelib/mathlib.qh"
-    #include "../../warpzonelib/common.qh"
-    #include "../../warpzonelib/util_server.qh"
-    #include "../../warpzonelib/server.qh"
-    #include "../../common/constants.qh"
-    #include "../../common/stats.qh"
-    #include "../../common/teams.qh"
-    #include "../../common/util.qh"
-    #include "../../common/nades.qh"
-    #include "../../common/buffs.qh"
-    #include "../../common/test.qh"
-    #include "../../common/counting.qh"
-    #include "../../common/urllib.qh"
-    #include "../../common/command/markup.qh"
-    #include "../../common/command/rpn.qh"
-    #include "../../common/command/generic.qh"
-    #include "../../common/command/shared_defs.qh"
-    #include "../../common/net_notice.qh"
-    #include "../../common/animdecide.qh"
-    #include "../../common/monsters/monsters.qh"
-    #include "../../common/monsters/sv_monsters.qh"
-    #include "../../common/monsters/spawn.qh"
-    #include "../../common/weapons/config.qh"
-    #include "../../common/weapons/weapons.qh"
-    #include "../weapons/accuracy.qh"
-    #include "../weapons/common.qh"
-    #include "../weapons/csqcprojectile.qh"
-    #include "../weapons/hitplot.qh"
-    #include "../weapons/selection.qh"
-    #include "../weapons/spawning.qh"
-    #include "../weapons/throwing.qh"
-    #include "../weapons/tracing.qh"
-    #include "../weapons/weaponstats.qh"
-    #include "../weapons/weaponsystem.qh"
-    #include "../t_items.qh"
-    #include "../autocvars.qh"
-    #include "../constants.qh"
-    #include "../defs.qh"
-    #include "../../common/notifications.qh"
-    #include "../../common/deathtypes.qh"
-    #include "../mutators/mutators_include.qh"
-    #include "../tturrets/include/turrets_early.qh"
-    #include "../vehicles/vehicles_def.qh"
-    #include "../campaign.qh"
-    #include "../../common/campaign_common.qh"
-    #include "../../common/mapinfo.qh"
-    #include "../command/common.qh"
-    #include "../command/banning.qh"
-    #include "../command/radarmap.qh"
-    #include "../command/vote.qh"
-    #include "../command/getreplies.qh"
-    #include "../command/cmd.qh"
-    #include "../command/sv_cmd.qh"
-    #include "../../common/csqcmodel_settings.qh"
-    #include "../../csqcmodellib/common.qh"
-    #include "../../csqcmodellib/sv_model.qh"
-    #include "../anticheat.qh"
-    #include "../cheats.qh"
-    #include "../../common/playerstats.qh"
-    #include "../portals.qh"
-    #include "../g_hook.qh"
-    #include "../scores.qh"
-    #include "../spawnpoints.qh"
-    #include "../mapvoting.qh"
-    #include "../ipban.qh"
-    #include "../race.qh"
-    #include "../antilag.qh"
-    #include "../playerdemo.qh"
-    #include "../round_handler.qh"
-    #include "../item_key.qh"
-    #include "../secret.qh"
-#endif
+#pragma once
 
+#ifndef DEBUGPATHING
+       #define DEBUGPATHING 0
+#endif
 
 .entity pathlib_list;
 .entity path_next;
 .entity path_prev;
 
 #define inwater(point) (pointcontents(point) == CONTENT_WATER)
-#define medium spawnshieldtime
 
 const vector PLIB_FORWARD = '0 1 0';
 //#define PLIB_BACK    '0 -1 0'
 const vector PLIB_RIGHT = '1 0 0';
 //#define PLIB_LEFT    '-1 0 0'
 
-#define DEBUGPATHING
-#ifdef DEBUGPATHING
-void pathlib_showpath(entity start);
-void pathlib_showpath2(entity path);
-#endif
-
 entity openlist;
 entity closedlist;
 
 entity goal_node;
 entity start_node;
 
-.float is_path_node;
+.bool is_path_node;
 .float pathlib_node_g;
 .float pathlib_node_h;
 .float pathlib_node_f;
 .float pathlib_node_c;
 
 const float pathlib_node_edgeflag_unknown              = 0;
-const float pathlib_node_edgeflag_left                         = 2;
-const float pathlib_node_edgeflag_right                = 4;
-const float pathlib_node_edgeflag_forward              = 8;
-const float pathlib_node_edgeflag_back                         = 16;
-const float pathlib_node_edgeflag_backleft             = 32;
-const float pathlib_node_edgeflag_backright    = 64;
-const float pathlib_node_edgeflag_forwardleft  = 128;
-const float pathlib_node_edgeflag_forwardright         = 256;
-const float pathlib_node_edgeflag_none                         = 512;
+const float pathlib_node_edgeflag_left                         = BIT(1);
+const float pathlib_node_edgeflag_right                = BIT(2);
+const float pathlib_node_edgeflag_forward              = BIT(3);
+const float pathlib_node_edgeflag_back                         = BIT(4);
+const float pathlib_node_edgeflag_backleft             = BIT(5);
+const float pathlib_node_edgeflag_backright    = BIT(6);
+const float pathlib_node_edgeflag_forwardleft  = BIT(7);
+const float pathlib_node_edgeflag_forwardright         = BIT(8);
+const float pathlib_node_edgeflag_none                         = BIT(9);
 .float pathlib_node_edgeflags;
 
 float pathlib_open_cnt;
@@ -131,7 +44,7 @@ float pathlib_closed_cnt;
 float pathlib_made_cnt;
 float pathlib_merge_cnt;
 float pathlib_searched_cnt;
-float pathlib_bestopen_seached;
+float pathlib_bestopen_searched;
 float pathlib_bestcash_hits;
 float pathlib_bestcash_saved;
 float pathlib_gridsize;
@@ -148,10 +61,10 @@ entity best_open_node;
 vector tile_check_up;
 vector tile_check_down;
 float  tile_check_size;
-float     tile_check_cross(vector where);
-float     tile_check_plus(vector where);
-float     tile_check_star(vector where);
-var float tile_check(vector where);
+bool     tile_check_cross(entity this, vector where);
+bool     tile_check_plus(entity this, vector where);
+bool     tile_check_star(entity this, vector where);
+var bool tile_check(entity this, vector where);
 
 float  movenode_stepsize;
 vector movenode_stepup;
@@ -159,13 +72,13 @@ vector movenode_maxdrop;
 vector movenode_boxup;
 vector movenode_boxmax;
 vector movenode_boxmin;
-float  pathlib_movenode_goodnode;
+bool  pathlib_movenode_goodnode;
 
-vector     pathlib_wateroutnode(vector start, vector end, float doedge);
-vector     pathlib_swimnode(vector start, vector end, float doedge);
-vector     pathlib_flynode(vector start, vector end, float doedge);
-vector     pathlib_walknode(vector start, vector end, float doedge);
-var vector pathlib_movenode(vector start, vector end, float doedge);
+vector     pathlib_wateroutnode(entity this, vector start, vector end, float doedge);
+vector     pathlib_swimnode(entity this, vector start, vector end, float doedge);
+vector     pathlib_flynode(entity this, vector start, vector end, float doedge);
+vector     pathlib_walknode(entity this, vector start, vector end, float doedge);
+var vector pathlib_movenode(entity this, vector start, vector end, float doedge);
 
 float      pathlib_expandnode_star(entity node, vector start, vector goal);
 float      pathlib_expandnode_box(entity node, vector start, vector goal);
@@ -187,19 +100,7 @@ float      pathlib_h_diagonal2sdp(vector preprev, vector prev, vector point, vec
 float      pathlib_h_none(vector preprev, vector prev) { return 0; }
 var float  pathlib_heuristic(vector from, vector to);
 
-var float  pathlib_makenode(entity parent,vector start, vector to, vector goal,float cost);
-var float  buildpath_nodefilter(vector n,vector c,vector p);
+var bool  pathlib_makenode(entity parent,vector start, vector to, vector goal,float cost);
+var bool  buildpath_nodefilter(vector n,vector c,vector p);
 
 var float  pathlib_wpp_waypointcallback(entity wp, entity wp_prev);
-
-#ifdef DEBUGPATHING
-       #include "debug.qc"
-#endif
-
-#include "utility.qc"
-#include "movenode.qc"
-#include "costs.qc"
-#include "expandnode.qc"
-#include "main.qc"
-#include "path_waypoint.qc"
-#endif
\ No newline at end of file