#ifndef INTERFACE_H #define INTERFACE_H #if defined(CSQC) #elif defined(MENUQC) #include "../../common/util-pre.qh" #include "../sys-pre.qh" #include "../../dpdefs/menudefs.qc" #include "../../dpdefs/keycodes.qc" #include "../sys-post.qh" #include "../config.qh" #include "../../warpzonelib/mathlib.qh" #include "../../common/util.qh" #include "../../common/test.qh" #include "base.qh" #include "../../common/playerstats.qh" #include "../../common/teams.qh" #include "../../common/constants.qh" #include "../../common/mapinfo.qh" #include "../../common/campaign_common.qh" #include "../../common/weapons/weapons.qh" #include "../../common/counting.qh" #include "../../common/command/markup.qh" #include "../../common/command/rpn.qh" #include "../../common/command/generic.qh" #include "../../common/command/shared_defs.qh" #include "../../common/urllib.qh" #include "../../common/monsters/monsters.qh" #include "../command/menu_cmd.qh" #include "../menu.qh" #include "../draw.qh" #include "../skin.qh" #include "../xonotic/util.qh" #elif defined(SVQC) #endif #ifndef INTERFACE #define INTERFACE #endif #ifdef IMPLEMENTATION #undef IMPLEMENTATION #endif #ifdef CLASS #undef CLASS #undef EXTENDS #undef METHOD #undef ATTRIB #undef ATTRIBARRAY #undef ENDCLASS #undef SUPER #endif #define CLASS(cname) entity spawn##cname(); entity cname##_vtbl; #define EXTENDS(base) #define METHOD(cname,name,prototype) prototype cname##_##name; .prototype name; #define ATTRIB(cname,name,type,val) .type name; #define ATTRIBARRAY(cname,name,type,cnt) .type name[cnt]; #define ENDCLASS(cname) .float instanceOf##cname; #define SUPER(cname) #endif