]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - pr_cmds.c
new entity protocol has been canceled due to a fatal design flaw only detected today...
[xonotic/darkplaces.git] / pr_cmds.c
index 128d7200288a99e2454d6c5cbaf3e24404f44362..e33360bb569f551ddbddcf71bda9fd3539e168f3 100644 (file)
--- a/pr_cmds.c
+++ b/pr_cmds.c
@@ -83,6 +83,7 @@ char *ENGINE_EXTENSIONS =
 "DP_HALFLIFE_MAP "
 "DP_INPUTBUTTONS "
 "DP_MONSTERWALK "
+"DP_MOVETYPEBOUNCEMISSILE "
 "DP_MOVETYPEFOLLOW "
 "DP_QC_CHANGEPITCH "
 "DP_QC_COPYENTITY "
@@ -99,6 +100,7 @@ char *ENGINE_EXTENSIONS =
 "DP_QC_TRACETOSS "
 "DP_QC_VECTORVECTORS "
 "DP_QUAKE2_MODEL "
+"DP_QUAKE3_MODEL "
 "DP_REGISTERCVAR "
 "DP_SOLIDCORPSE "
 "DP_SPRITE32 "
@@ -111,12 +113,18 @@ char *ENGINE_EXTENSIONS =
 "DP_SV_SLOWMO "
 "DP_TE_BLOOD "
 "DP_TE_BLOODSHOWER "
+"DP_TE_CUSTOMFLASH "
 "DP_TE_EXPLOSIONRGB "
 "DP_TE_FLAMEJET "
 "DP_TE_PARTICLECUBE "
 "DP_TE_PARTICLERAIN "
 "DP_TE_PARTICLESNOW "
+"DP_TE_PLASMABURN "
+"DP_TE_QUADEFFECTS1 "
+"DP_TE_SMALLFLASH "
 "DP_TE_SPARK "
+"DP_TE_STANDARDEFFECTBUILTINS "
+"DP_VIEWZOOM "
 "FRIK_FILE "
 "NEH_CMD_PLAY2 "
 "NEH_RESTOREGAME "
@@ -843,7 +851,7 @@ int PF_newcheckclient (int check)
                if (i == check)
                        break;  // didn't find anything else
 
-               if (ent->free)
+               if (ent->e->free)
                        continue;
                if (ent->v->health <= 0)
                        continue;
@@ -895,7 +903,7 @@ void PF_checkclient (void)
 
        // return check if it might be visible
        ent = EDICT_NUM(sv.lastcheck);
-       if (ent->free || ent->v->health <= 0)
+       if (ent->e->free || ent->v->health <= 0)
        {
                RETURN_EDICT(sv.edicts);
                return;
@@ -1028,7 +1036,7 @@ void PF_findradius (void)
        for (i=1 ; i<sv.num_edicts ; i++, ent = NEXT_EDICT(ent))
        {
                pr_xfunction->builtinsprofile++;
-               if (ent->free)
+               if (ent->e->free)
                        continue;
                if (ent->v->solid == SOLID_NOT)
                        continue;
@@ -1151,7 +1159,7 @@ void PF_Find (void)
        {
                pr_xfunction->builtinsprofile++;
                ed = EDICT_NUM(e);
-               if (ed->free)
+               if (ed->e->free)
                        continue;
                t = E_STRING(ed,f);
                if (!t)
@@ -1182,7 +1190,7 @@ void PF_FindFloat (void)
        {
                pr_xfunction->builtinsprofile++;
                ed = EDICT_NUM(e);
-               if (ed->free)
+               if (ed->e->free)
                        continue;
                if (E_FLOAT(ed,f) == s)
                {
@@ -1217,7 +1225,7 @@ void PF_findchain (void)
        for (i = 1;i < sv.num_edicts;i++, ent = NEXT_EDICT(ent))
        {
                pr_xfunction->builtinsprofile++;
-               if (ent->free)
+               if (ent->e->free)
                        continue;
                t = E_STRING(ent,f);
                if (!t)
@@ -1250,7 +1258,7 @@ void PF_findchainfloat (void)
        for (i = 1;i < sv.num_edicts;i++, ent = NEXT_EDICT(ent))
        {
                pr_xfunction->builtinsprofile++;
-               if (ent->free)
+               if (ent->e->free)
                        continue;
                if (E_FLOAT(ent,f) != s)
                        continue;
@@ -1420,7 +1428,7 @@ void PF_droptofloor (void)
                ent->v->groundentity = EDICT_TO_PROG(trace.ent);
                G_FLOAT(OFS_RETURN) = 1;
                // if support is destroyed, keep suspended (gross hack for floating items in various maps)
-               ent->suspendedinairflag = true;
+               ent->e->suspendedinairflag = true;
        }
 }
 
@@ -1519,7 +1527,7 @@ void PF_nextent (void)
                        return;
                }
                ent = EDICT_NUM(i);
-               if (!ent->free)
+               if (!ent->e->free)
                {
                        RETURN_EDICT(ent);
                        return;
@@ -2539,7 +2547,7 @@ static msurface_t *getsurface(edict_t *ed, int surfnum)
 {
        int modelindex;
        model_t *model;
-       if (!ed || ed->free)
+       if (!ed || ed->e->free)
                return NULL;
        modelindex = ed->v->modelindex;
        if (modelindex < 1 || modelindex >= MAX_MODELS)
@@ -2574,7 +2582,7 @@ void PF_getsurfacepoint(void)
        int pointnum;
        VectorClear(G_VECTOR(OFS_RETURN));
        ed = G_EDICT(OFS_PARM0);
-       if (!ed || ed->free)
+       if (!ed || ed->e->free)
                return;
        if (!(surf = getsurface(ed, G_FLOAT(OFS_PARM1))))
                return;
@@ -2620,7 +2628,7 @@ void PF_getsurfacenearpoint(void)
        ed = G_EDICT(OFS_PARM0);
        point = G_VECTOR(OFS_PARM1);
 
-       if (!ed || ed->free)
+       if (!ed || ed->e->free)
                return;
        modelindex = ed->v->modelindex;
        if (modelindex < 1 || modelindex >= MAX_MODELS)
@@ -2660,7 +2668,7 @@ void PF_getsurfaceclippedpoint(void)
        vec3_t p, out;
        VectorClear(G_VECTOR(OFS_RETURN));
        ed = G_EDICT(OFS_PARM0);
-       if (!ed || ed->free)
+       if (!ed || ed->e->free)
                return;
        if (!(surf = getsurface(ed, G_FLOAT(OFS_PARM1))))
                return;