X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fcommon%2Futil.qh;h=79b93d3ede3d238d5e6d8ad4eaf4f787aa331ea0;hp=23126b6331df1557b15461dab2ab36947caeeb1c;hb=254051b63223cdf024b92ee0c9a4ed148e04ae1a;hpb=61efc693bb60ef3fd9d34f48b377e9b2a9425b85 diff --git a/qcsrc/common/util.qh b/qcsrc/common/util.qh index 23126b6331..79b93d3ede 100644 --- a/qcsrc/common/util.qh +++ b/qcsrc/common/util.qh @@ -1,3 +1,6 @@ +// a dummy macro that prevents the "hanging ;" warning +#define ENDS_WITH_CURLY_BRACE + #define ACCUMULATE_FUNCTION(func,otherfunc) \ #ifdef func \ void __merge__##otherfunc() { func(); otherfunc(); } \ @@ -162,7 +165,7 @@ void check_unacceptable_compiler_bugs(); float compressShotOrigin(vector v); vector decompressShotOrigin(float f); -string rankings_reply, lsmaps_reply, lsnewmaps_reply, maplist_reply; // cached replies +string rankings_reply, ladder_reply, lsmaps_reply, lsnewmaps_reply, maplist_reply; // cached replies string records_reply[10]; float RandomSelection_totalweight; @@ -210,3 +213,39 @@ float get_model_parameters_weight; float get_model_parameters_age; string get_model_parameters_desc; float get_model_parameters(string mod, float skn); // call with string_null to clear; skin -1 means mod is the filename of the txt file and is to be split + +// stupid stupid stupid FTEQCC has a max limit on macro sizes, let's work around by splitting the macro into two macros! :( +#define HUD_Panel_GetName_Part2(id) \ +switch(id) {\ + case HUD_PANEL_ENGINEINFO: panel_name = HUD_PANELNAME_ENGINEINFO; break; \ + case HUD_PANEL_INFOMESSAGES: panel_name = HUD_PANELNAME_INFOMESSAGES; break; \ +} ENDS_WITH_CURLY_BRACE + +// Get name of specified panel id +#define HUD_Panel_GetName(id) \ +switch(id) { \ + case HUD_PANEL_WEAPONS: panel_name = HUD_PANELNAME_WEAPONS; break; \ + case HUD_PANEL_AMMO: panel_name = HUD_PANELNAME_AMMO; break; \ + case HUD_PANEL_POWERUPS: panel_name = HUD_PANELNAME_POWERUPS; break; \ + case HUD_PANEL_HEALTHARMOR: panel_name = HUD_PANELNAME_HEALTHARMOR; break; \ + case HUD_PANEL_NOTIFY: panel_name = HUD_PANELNAME_NOTIFY; break; \ + case HUD_PANEL_TIMER: panel_name = HUD_PANELNAME_TIMER; break; \ + case HUD_PANEL_RADAR: panel_name = HUD_PANELNAME_RADAR; break; \ + case HUD_PANEL_SCORE: panel_name = HUD_PANELNAME_SCORE; break; \ + case HUD_PANEL_RACETIMER: panel_name = HUD_PANELNAME_RACETIMER; break; \ + case HUD_PANEL_VOTE: panel_name = HUD_PANELNAME_VOTE; break; \ + case HUD_PANEL_MODICONS: panel_name = HUD_PANELNAME_MODICONS; break; \ + case HUD_PANEL_PRESSEDKEYS: panel_name = HUD_PANELNAME_PRESSEDKEYS; break; \ + case HUD_PANEL_CHAT: panel_name = HUD_PANELNAME_CHAT; break; \ +}\ +HUD_Panel_GetName_Part2(id) + +vector vec2(vector v); + +#ifndef MENUQC +vector NearestPointOnBox(entity box, vector org); +#endif + +float vercmp(string v1, string v2); + +float u8_strsize(string s);