// works for up to 10 decimals!
string ftos_decimals(float number, float decimals);
+float fexists(string f);
+
vector colormapPaletteColor(float c, float isPants);
// unzone the string, and return it as tempstring. Safe to be called on string_null
switch(id) {\
case HUD_PANEL_ENGINEINFO: panel_name = HUD_PANELNAME_ENGINEINFO; break; \
case HUD_PANEL_INFOMESSAGES: panel_name = HUD_PANELNAME_INFOMESSAGES; break; \
- case HUD_PANEL_SHOWNAMES: panel_name = HUD_PANELNAME_SHOWNAMES; break; \
+ case HUD_PANEL_PHYSICS: panel_name = HUD_PANELNAME_PHYSICS; break; \
} ENDS_WITH_CURLY_BRACE
// Get name of specified panel id
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)
+ default: HUD_Panel_GetName_Part2(id)\
+}
vector vec2(vector v);
string language_filename(string s);
string CTX(string s);
#define ZCTX(s) strzone(CTX(s))
+
+// x-encoding (encoding as zero length invisible string)
+// encodes approx. 14 bits into 5 bytes of color code string
+const float XENCODE_MAX = 21295; // 2*22*22*22-1
+const float XENCODE_LEN = 5;
+string xencode(float f);
+float xdecode(string s);
+
+#ifndef COMPAT_XON010_CHANNELS
+#define sound(e,c,s,v,a) sound7(e,c,s,v,a,0,0)
+#endif