Convert md2 and mapmodelinfo to ObjC
FossilOrigin-Name: cfbd2ec1e63de153d5113d4f69ba8556107d9b1891e907b06745407573a45287
This commit is contained in:
parent
6f64252d65
commit
a94e06cb3b
5 changed files with 210 additions and 138 deletions
|
@ -59,21 +59,21 @@ mmcollide(dynent *d, float &hi, float &lo) // collide with a mapmodel
|
|||
entity &e = ents[i];
|
||||
if (e.type != MAPMODEL)
|
||||
continue;
|
||||
mapmodelinfo *mmi = getmminfo(e.attr2);
|
||||
if (!mmi || !mmi->h)
|
||||
MapModelInfo *mmi = getmminfo(e.attr2);
|
||||
if (mmi == nil || !mmi.h)
|
||||
continue;
|
||||
const float r = mmi->rad + d->radius;
|
||||
const float r = mmi.rad + d->radius;
|
||||
if (fabs(e.x - d->o.x) < r && fabs(e.y - d->o.y) < r) {
|
||||
float mmz =
|
||||
(float)(S(e.x, e.y)->floor + mmi->zoff + e.attr3);
|
||||
(float)(S(e.x, e.y)->floor + mmi.zoff + e.attr3);
|
||||
if (d->o.z - d->eyeheight < mmz) {
|
||||
if (mmz < hi)
|
||||
hi = mmz;
|
||||
} else if (mmz + mmi->h > lo)
|
||||
lo = mmz + mmi->h;
|
||||
};
|
||||
};
|
||||
};
|
||||
} else if (mmz + mmi.h > lo)
|
||||
lo = mmz + mmi.h;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// all collision happens here
|
||||
// spawn is a dirty side effect used in spawning
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue