mirror of
https://github.com/ZDoom/Raze.git
synced 2025-06-02 02:01:31 +00:00
- preparations for unlimited tsprites.
Right now it is a no-op because Polymost cannot deal with this properly.
This commit is contained in:
parent
2377b17106
commit
e892de21ec
7 changed files with 11 additions and 0 deletions
|
@ -428,3 +428,7 @@ inline int pushmove(vec3_t* const vect, sectortype** const sect, int32_t const w
|
||||||
}
|
}
|
||||||
|
|
||||||
tspritetype* renderAddTsprite(tspritetype* tsprite, int& spritesortcnt, DCoreActor* actor);
|
tspritetype* renderAddTsprite(tspritetype* tsprite, int& spritesortcnt, DCoreActor* actor);
|
||||||
|
inline void validateTSpriteSize(tspritetype*& tsprite, int& spritesortcnt)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -412,6 +412,8 @@ void dragpoint(walltype* startwall, int newx, int newy)
|
||||||
|
|
||||||
tspritetype* renderAddTsprite(tspritetype* tsprite, int& spritesortcnt, DCoreActor* actor)
|
tspritetype* renderAddTsprite(tspritetype* tsprite, int& spritesortcnt, DCoreActor* actor)
|
||||||
{
|
{
|
||||||
|
validateTSpriteSize(tsprite, spritesortcnt);
|
||||||
|
|
||||||
if (spritesortcnt >= MAXSPRITESONSCREEN) return nullptr;
|
if (spritesortcnt >= MAXSPRITESONSCREEN) return nullptr;
|
||||||
auto tspr = &tsprite[spritesortcnt++];
|
auto tspr = &tsprite[spritesortcnt++];
|
||||||
|
|
||||||
|
|
|
@ -553,6 +553,7 @@ void viewProcessSprites(tspritetype* tsprite, int& spritesortcnt, int32_t cX, in
|
||||||
int nViewSprites = spritesortcnt;
|
int nViewSprites = spritesortcnt;
|
||||||
for (int nTSprite = spritesortcnt - 1; nTSprite >= 0; nTSprite--)
|
for (int nTSprite = spritesortcnt - 1; nTSprite >= 0; nTSprite--)
|
||||||
{
|
{
|
||||||
|
validateTSpriteSize(tsprite, spritesortcnt);
|
||||||
tspritetype* pTSprite = &tsprite[nTSprite];
|
tspritetype* pTSprite = &tsprite[nTSprite];
|
||||||
auto owneractor = static_cast<DBloodActor*>(pTSprite->ownerActor);
|
auto owneractor = static_cast<DBloodActor*>(pTSprite->ownerActor);
|
||||||
if (owneractor->spr.detail > gDetail)
|
if (owneractor->spr.detail > gDetail)
|
||||||
|
|
|
@ -139,6 +139,7 @@ void animatesprites_d(tspritetype* tsprite, int& spritesortcnt, int x, int y, in
|
||||||
//Between drawrooms() and drawmasks() is the perfect time to animate sprites
|
//Between drawrooms() and drawmasks() is the perfect time to animate sprites
|
||||||
for (j = 0; j < spritesortcnt; j++)
|
for (j = 0; j < spritesortcnt; j++)
|
||||||
{
|
{
|
||||||
|
validateTSpriteSize(tsprite, spritesortcnt);
|
||||||
t = &tsprite[j];
|
t = &tsprite[j];
|
||||||
h = static_cast<DDukeActor*>(t->ownerActor);
|
h = static_cast<DDukeActor*>(t->ownerActor);
|
||||||
auto OwnerAc = h->GetOwner();
|
auto OwnerAc = h->GetOwner();
|
||||||
|
|
|
@ -124,6 +124,7 @@ void animatesprites_r(tspritetype* tsprite, int& spritesortcnt, int x, int y, in
|
||||||
//Between drawrooms() and drawmasks() is the perfect time to animate sprites
|
//Between drawrooms() and drawmasks() is the perfect time to animate sprites
|
||||||
for (j = 0; j < spritesortcnt; j++)
|
for (j = 0; j < spritesortcnt; j++)
|
||||||
{
|
{
|
||||||
|
validateTSpriteSize(tsprite, spritesortcnt);
|
||||||
t = &tsprite[j];
|
t = &tsprite[j];
|
||||||
h = static_cast<DDukeActor*>(t->ownerActor);
|
h = static_cast<DDukeActor*>(t->ownerActor);
|
||||||
auto OwnerAc = h->GetOwner();
|
auto OwnerAc = h->GetOwner();
|
||||||
|
|
|
@ -73,6 +73,7 @@ static void analyzesprites(tspritetype* tsprite, int& spritesortcnt, int x, int
|
||||||
myspritesortcnt = &spritesortcnt;
|
myspritesortcnt = &spritesortcnt;
|
||||||
|
|
||||||
for (int i = 0; i < spritesortcnt; i++) {
|
for (int i = 0; i < spritesortcnt; i++) {
|
||||||
|
validateTSpriteSize(tsprite, spritesortcnt);
|
||||||
pTSprite = &tsprite[i];
|
pTSprite = &tsprite[i];
|
||||||
|
|
||||||
if (pTSprite->ownerActor)
|
if (pTSprite->ownerActor)
|
||||||
|
|
|
@ -605,6 +605,7 @@ void analyzesprites(tspritetype* tsprite, int& spritesortcnt, int viewx, int vie
|
||||||
|
|
||||||
for (tSpriteNum = spritesortcnt - 1; tSpriteNum >= 0; tSpriteNum--)
|
for (tSpriteNum = spritesortcnt - 1; tSpriteNum >= 0; tSpriteNum--)
|
||||||
{
|
{
|
||||||
|
validateTSpriteSize(tsprite, spritesortcnt);
|
||||||
tspritetype* tsp = &tsprite[tSpriteNum];
|
tspritetype* tsp = &tsprite[tSpriteNum];
|
||||||
auto tActor = static_cast<DSWActor*>(tsp->ownerActor);
|
auto tActor = static_cast<DSWActor*>(tsp->ownerActor);
|
||||||
auto tsectp = tsp->sectp;
|
auto tsectp = tsp->sectp;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue