const int GTV_FORBIDDEN = 0; // Cannot be voted
const int GTV_AVAILABLE = 1; // Can be voted
const int GTV_CUSTOM = 2; // Custom entry
+
+// generic entity flags
+// engine flags can't be redefined as they are used by the engine (unfortunately), they are listed here for posterity
+#ifdef CSQC
+const int FL_FLY = 1; /* BIT(0) */
+const int FL_SWIM = 2; /* BIT(1) */
+const int FL_CLIENT = 8; /* BIT(2) */ // set for all client edicts
+const int FL_INWATER = 16; /* BIT(3) */ // for enter / leave water splash
+const int FL_MONSTER = 32; /* BIT(4) */
+const int FL_GODMODE = 64; /* BIT(5) */ // player cheat
+const int FL_NOTARGET = 128; /* BIT(6) */ // player cheat
+const int FL_ITEM = 256; /* BIT(7) */ // extra wide size for bonus items
+const int FL_ONGROUND = 512; /* BIT(8) */ // standing on something
+const int FL_PARTIALGROUND = 1024; /* BIT(9) */ // not all corners are valid
+const int FL_WATERJUMP = 2048; /* BIT(10) */ // player jumping out of water
+const int FL_JUMPRELEASED = 4096; /* BIT(11) */ // for jump debouncing
+#endif
+const int FL_WEAPON = BIT(12);
+const int FL_POWERUP = BIT(13);
+const int FL_PROJECTILE = BIT(14);
+const int FL_TOSSED = BIT(15);
+const int FL_SPAWNING = BIT(16);
+const int FL_PICKUPITEMS = BIT(17);
+const int FL_DUCKED = BIT(18);
+const int FL_ONSLICK = BIT(19);