]> git.rm.cloudns.org Git - xonotic/darkplaces.git/commitdiff
+ Added support for Doom 3 entity spawnargs ("name" and "target0") to allow smoother...
authormotorsep <motorsep@d7cf8633-e32d-0410-b094-e92efae38249>
Thu, 6 Aug 2015 02:34:11 +0000 (02:34 +0000)
committermotorsep <motorsep@d7cf8633-e32d-0410-b094-e92efae38249>
Thu, 6 Aug 2015 02:34:11 +0000 (02:34 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12222 d7cf8633-e32d-0410-b094-e92efae38249

progdefs.h
prvm_edict.c
prvm_offsets.h

index 7086dbdc459767c2d70a87b8e7d92cd5e8d4cd78..cc1f45bfde7f4a36026225a6fb2980e6023f5d53 100644 (file)
@@ -150,6 +150,10 @@ typedef struct entvars_s
        float   spawnflags;
        string_t        target;
        string_t        targetname;
+       // motorsep 08/05/2015; support for Doom 3 entity spawnargs (whem mapping in DarkRadiant)
+       string_t        target0;
+       string_t        name;
+       // motorsep ends
        float   dmg_take;
        float   dmg_save;
        int     dmg_inflictor;
index bc6c5ad53efa731413ba8ad91ddd4dc239801741..c66d3f1e711af788fddee91da5a7105397608725 100644 (file)
@@ -3257,11 +3257,16 @@ static qboolean PRVM_IsEdictReferenced(prvm_prog_t *prog, prvm_edict_t *edict, i
 {
        int i, j;
        int edictnum = PRVM_NUM_FOR_EDICT(edict);
-       const char *targetname = NULL;
+       const char *targetname = NULL;  
 
        if (prog == SVVM_prog)
                targetname = PRVM_GetString(prog, PRVM_serveredictstring(edict, targetname));
 
+       // motorsep 08/05/2015; support for Doom 3 entity spawnargs (whem mapping in DarkRadiant)
+       if(!targetname)
+               targetname = PRVM_GetString( prog, PRVM_serveredictstring( edict, name ) );
+       // motorsep ends
+
        if(targetname)
                if(!*targetname) // ""
                        targetname = NULL;
@@ -3288,6 +3293,12 @@ static qboolean PRVM_IsEdictReferenced(prvm_prog_t *prog, prvm_edict_t *edict, i
                if(targetname)
                {
                        const char *target = PRVM_GetString(prog, PRVM_serveredictstring(ed, target));
+                       
+                       // motorsep 08/05/2015; support for Doom 3 entity spawnargs (whem mapping in DarkRadiant)
+                       if(!target)
+                               target = PRVM_GetString( prog, PRVM_serveredictstring( ed, target0 ) );
+                       // motorsep ends
+
                        if(target)
                                if(!strcmp(target, targetname))
                                        return true;
index 1563a0510f29264f475cfb436d0ec11b8395231f..7fd8d05b6ac001def7e37764f69892969880e024 100644 (file)
@@ -376,6 +376,10 @@ PRVM_DECLARE_field(tag_index)
 PRVM_DECLARE_field(takedamage)
 PRVM_DECLARE_field(target)
 PRVM_DECLARE_field(targetname)
+// motorsep 08/05/2015; support for Doom 3 entity spawnargs (whem mapping in DarkRadiant)
+PRVM_DECLARE_field(target0)
+PRVM_DECLARE_field(name)
+// motorsep ends
 PRVM_DECLARE_field(team)
 PRVM_DECLARE_field(teleport_time)
 PRVM_DECLARE_field(think)