]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Fix some bugs, update the deathtype list, blah blah blah
authorSamual Lenks <samual@xonotic.org>
Fri, 28 Sep 2012 17:03:35 +0000 (13:03 -0400)
committerSamual Lenks <samual@xonotic.org>
Fri, 28 Sep 2012 17:03:35 +0000 (13:03 -0400)
qcsrc/common/deathtypes.qh
qcsrc/common/notifications.qc
qcsrc/server/g_damage.qc

index 4133d51355327f226cb32b881b801da5a56509db..51748b6ecdc1681168b58eac73e24d342c18f0f7 100644 (file)
@@ -4,63 +4,58 @@
 #define DT_MAX 1024 // limit of recursive functions with ACCUMULATE_FUNCTION
 float DT_COUNT;
 
-float DEATH_VHFIRST = DT_FIRST;
-float DEATH_VHLAST = DT_FIRST;
-
 #define DT_MATCH(a,b) if(min(DT_MAX, a) == b)
 
-#define DEATHTYPE(name,type,notification,first,last) \
+#define DEATHTYPE(name,msg_info,msg_center,position) \
        float name; \
-       float first; \
-       float last; \
+       float position; \
        void RegisterDeathtype_##name() \
        { \
-               SET_FIRST_OR_LAST(first, DT_FIRST, DT_COUNT) \
-               SET_FIRST_OR_LAST(last, DT_FIRST, DT_COUNT) \
+               SET_FIRST_OR_LAST(position, DT_FIRST, DT_COUNT) \
                SET_FIELD_COUNT(name, DT_FIRST, DT_COUNT) \
                CHECK_MAX_COUNT(name, DT_MAX, DT_COUNT, "deathtypes") \
        } \
        ACCUMULATE_FUNCTION(RegisterDeathtypes, RegisterDeathtype_##name)
 
 #define DEATHTYPES \
-       DEATHTYPE(DEATH_FALL, FALSE, FALSE, DEATH_SPECIAL_START, FALSE) \
-       DEATHTYPE(DEATH_TELEFRAG, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_DROWN, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_HURTTRIGGER, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_LAVA, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_SLIME, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_KILL, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_NOAMMO, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_SWAMP, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_TEAMCHANGE, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_AUTOTEAMCHANGE, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_CAMP, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_SHOOTING_STAR, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_ROT, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_MIRRORDAMAGE, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_TOUCHEXPLODE, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_CHEAT, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_FIRE, FALSE, FALSE, FALSE, FALSE) \
-       DEATHTYPE(DEATH_QUIET, FALSE, FALSE, FALSE, FALSE) \
+       DEATHTYPE(DEATH_FALL, FALSE, FALSE, DEATH_SPECIAL_START) \
+       DEATHTYPE(DEATH_TELEFRAG, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_DROWN, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_HURTTRIGGER, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_LAVA, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_SLIME, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_KILL, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_NOAMMO, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_SWAMP, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_TEAMCHANGE, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_AUTOTEAMCHANGE, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_CAMP, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_SHOOTING_STAR, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_ROT, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_MIRRORDAMAGE, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_TOUCHEXPLODE, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_CHEAT, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_FIRE, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_QUIET, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_VHCRUSH, FALSE, FALSE, DEATH_VHFIRST) \
+       DEATHTYPE(DEATH_SBMINIGUN, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_SBROCKET, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_SBBLOWUP, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_WAKIGUN, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_WAKIROCKET, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_WAKIBLOWUP, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_RAPTOR_CANNON, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_RAPTOR_BOMB, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_RAPTOR_BOMB_SPLIT, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_RAPTOR_DEATH, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_BUMB_GUN, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_BUMB_RAY, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_BUMB_RAY_HEAL, FALSE, FALSE, NORMAL_POS) \
+       DEATHTYPE(DEATH_BUMB_DEATH, FALSE, FALSE, DEATH_VHLAST) \
        #undef DEATHTYPE
 
 DEATHTYPES
 
-float  DEATH_VHCRUSH       = 10030;
-float  DEATH_SBMINIGUN     = 10031;
-float  DEATH_SBROCKET      = 10032;
-float  DEATH_SBBLOWUP      = 10033;
-float  DEATH_WAKIGUN       = 10034;
-float  DEATH_WAKIROCKET    = 10035;
-float  DEATH_WAKIBLOWUP    = 10036;
-float  DEATH_RAPTOR_CANNON = 10037;
-float  DEATH_RAPTOR_BOMB   = 10038;
-float  DEATH_RAPTOR_BOMB_SPLIT = 10039;
-float  DEATH_RAPTOR_DEATH   = 10040;
-float  DEATH_BUMB_GUN       = 10041;
-float  DEATH_BUMB_RAY       = 10042;
-float  DEATH_BUMB_RAY_HEAL  = 10043;
-float  DEATH_BUMB_DEATH     = 10044;
 #define DEATH_ISVEHICLE(t)  ((t) >= DEATH_VHFIRST && (t) <= DEATH_VHLAST)
 
 float DEATH_GENERIC = 10050;
index d5e256a6d45feebf971da949b580f85c9a8e0fac..9166ce942ec64cba6f9cf732861bdf3228c5abd6 100644 (file)
 #define NOTIF_FIRST 1
 #define NOTIF_MAX 1024 // limit of recursive functions with ACCUMULATE_FUNCTION
 float NOTIF_INFO_COUNT;
-float NOTIF_NOTIFY_COUNT;
 float NOTIF_CENTER_COUNT;
 float NOTIF_WEAPON_COUNT;
 float NOTIF_CPID_COUNT;
 
-#define MSG_INFO_NOTIF(name,args,icon,normal,gentle) \
+#define ADD_CSQC_AUTOCVAR(name) \
+       #ifdef CSQC \
        var float autocvar_notification_##name = TRUE; \
+       #endif
+
+#define MSG_INFO_NOTIF(name,args,icon,normal,gentle) \
+       ADD_CSQC_AUTOCVAR(name) \
        float name; \
        void RegisterNotification_##name() \
        { \
index bf479adb6ab850deaca66aebbb3d9cff94eb56f1..b2a0e99e3bff92990614ca2d77c22699961317c9 100644 (file)
@@ -310,14 +310,14 @@ void LogDeath(string mode, float deathtype, entity killer, entity killed)
 
 void Obituary_Notification(entity notif_target, string s1, string s2, string s3, float deathtype)
 {
-       if(deathtype)
+       /*if(deathtype)
        {
                #define DEATHTYPE(name,type,notification,first,last) \
                        { if((deathtype == max(0, name)) && max(0, type) && max(0, notification)) { Send_Notification(type, notif_target, notification, s1, s2, s3); return; } }
 
                DEATHTYPES
                backtrace("Unhandled deathtype. Please notify Samual!\n");
-       }
+       }*/
 }
 
 void Obituary (entity attacker, entity inflictor, entity targ, float deathtype)