mirror of
https://github.com/DrBeef/Raze.git
synced 2025-04-07 00:01:57 +00:00
- Got rid of SpawnSprite.
This commit is contained in:
parent
a57af58d4c
commit
d8ea4db5b2
3 changed files with 23 additions and 42 deletions
|
@ -77,7 +77,7 @@ class DSWActor;
|
|||
|
||||
void PlaySpriteSound(DSWActor* actor, int attrib_ndx, Voc3D_Flags flags);
|
||||
void DeleteNoSoundOwner(DSWActor* actor);
|
||||
void DeleteNoFollowSoundOwner(short spritenum);
|
||||
void DeleteNoFollowSoundOwner(DSWActor*);
|
||||
|
||||
inline bool CacheSound(int num, int type) { return false; }
|
||||
void COVER_SetReverb(int amt);
|
||||
|
|
|
@ -937,13 +937,13 @@ SECT_USERp GetSectUser(short sectnum)
|
|||
}
|
||||
|
||||
|
||||
int16_t SpawnSprite(short stat, short id, STATEp state, short sectnum, int x, int y, int z, int init_ang, int vel)
|
||||
DSWActor* SpawnActor(short stat, short id, STATEp state, short sectnum, int x, int y, int z, int init_ang, int vel)
|
||||
{
|
||||
SPRITEp sp;
|
||||
USERp u;
|
||||
|
||||
if (sectnum < 0)
|
||||
return -1;
|
||||
return nullptr;
|
||||
|
||||
ASSERT(!Prediction);
|
||||
|
||||
|
@ -980,16 +980,9 @@ int16_t SpawnSprite(short stat, short id, STATEp state, short sectnum, int x, in
|
|||
sp->yoffset = 0;
|
||||
sp->clipdist = 0;
|
||||
|
||||
return spawnedActor->GetSpriteIndex();
|
||||
return spawnedActor;
|
||||
}
|
||||
|
||||
DSWActor* SpawnActor(short stat, short id, STATEp state, short sectnum, int x, int y, int z, int ang, int vel)
|
||||
{
|
||||
int s = SpawnSprite(stat, id, state, sectnum, x, y, z, ang, vel);
|
||||
return s >= 0 ? &swActors[s] : nullptr;
|
||||
}
|
||||
|
||||
|
||||
void PicAnimOff(short picnum)
|
||||
{
|
||||
short anim_type = TEST(picanm[picnum].sf, PICANM_ANIMTYPE_MASK) >> PICANM_ANIMTYPE_SHIFT;
|
||||
|
@ -5184,8 +5177,7 @@ DoCoin(DSWActor* actor)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
KillGet(short SpriteNum)
|
||||
int KillGet(short SpriteNum)
|
||||
{
|
||||
auto actor = &swActors[SpriteNum];
|
||||
USERp u = actor->u();
|
||||
|
@ -5194,8 +5186,6 @@ KillGet(short SpriteNum)
|
|||
USERp nu;
|
||||
SPRITEp np;
|
||||
|
||||
short New;
|
||||
|
||||
switch (gNet.MultiGameType)
|
||||
{
|
||||
case MULTI_GAME_NONE:
|
||||
|
@ -5218,11 +5208,11 @@ KillGet(short SpriteNum)
|
|||
if (!gNet.SpawnMarkers || sp->hitag == TAG_NORESPAWN_FLAG) // No coin if it's a special flag
|
||||
break;
|
||||
|
||||
New = SpawnSprite(STAT_ITEM, Red_COIN, s_RedCoin, sp->sectnum,
|
||||
auto actorNew = SpawnActor(STAT_ITEM, Red_COIN, s_RedCoin, sp->sectnum,
|
||||
sp->x, sp->y, sp->z, 0, 0);
|
||||
|
||||
np = &sprite[New];
|
||||
nu = User[New].Data();
|
||||
np = &actorNew->s();
|
||||
nu = actorNew->u();
|
||||
|
||||
np->shade = -20;
|
||||
nu->WaitTics = u->WaitTics - 12;
|
||||
|
@ -5232,8 +5222,7 @@ KillGet(short SpriteNum)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
KillGetAmmo(short SpriteNum)
|
||||
int KillGetAmmo(short SpriteNum)
|
||||
{
|
||||
auto actor = &swActors[SpriteNum];
|
||||
USERp u = actor->u();
|
||||
|
@ -5242,8 +5231,6 @@ KillGetAmmo(short SpriteNum)
|
|||
USERp nu;
|
||||
SPRITEp np;
|
||||
|
||||
short New;
|
||||
|
||||
switch (gNet.MultiGameType)
|
||||
{
|
||||
case MULTI_GAME_NONE:
|
||||
|
@ -5274,11 +5261,11 @@ KillGetAmmo(short SpriteNum)
|
|||
if (!gNet.SpawnMarkers)
|
||||
break;
|
||||
|
||||
New = SpawnSprite(STAT_ITEM, Red_COIN, s_RedCoin, sp->sectnum,
|
||||
auto actorNew = SpawnActor(STAT_ITEM, Red_COIN, s_RedCoin, sp->sectnum,
|
||||
sp->x, sp->y, sp->z, 0, 0);
|
||||
|
||||
np = &sprite[New];
|
||||
nu = User[New].Data();
|
||||
np = &actorNew->s();
|
||||
nu = actorNew->u();
|
||||
|
||||
np->shade = -20;
|
||||
nu->WaitTics = u->WaitTics - 12;
|
||||
|
@ -5288,8 +5275,7 @@ KillGetAmmo(short SpriteNum)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
KillGetWeapon(short SpriteNum)
|
||||
int KillGetWeapon(short SpriteNum)
|
||||
{
|
||||
auto actor = &swActors[SpriteNum];
|
||||
USERp u = actor->u();
|
||||
|
@ -5298,8 +5284,6 @@ KillGetWeapon(short SpriteNum)
|
|||
USERp nu;
|
||||
SPRITEp np;
|
||||
|
||||
short New;
|
||||
|
||||
switch (gNet.MultiGameType)
|
||||
{
|
||||
case MULTI_GAME_NONE:
|
||||
|
@ -5338,11 +5322,11 @@ KillGetWeapon(short SpriteNum)
|
|||
if (!gNet.SpawnMarkers)
|
||||
break;
|
||||
|
||||
New = SpawnSprite(STAT_ITEM, Red_COIN, s_RedCoin, sp->sectnum,
|
||||
auto actorNew = SpawnActor(STAT_ITEM, Red_COIN, s_RedCoin, sp->sectnum,
|
||||
sp->x, sp->y, sp->z, 0, 0);
|
||||
|
||||
np = &sprite[New];
|
||||
nu = User[New].Data();
|
||||
np = &actorNew->s();
|
||||
nu = actorNew->u();
|
||||
|
||||
np->shade = -20;
|
||||
nu->WaitTics = u->WaitTics - 12;
|
||||
|
@ -5356,14 +5340,13 @@ int
|
|||
DoSpawnItemTeleporterEffect(SPRITEp sp)
|
||||
{
|
||||
extern STATE s_TeleportEffect[];
|
||||
short effect;
|
||||
SPRITEp ep;
|
||||
|
||||
effect = SpawnSprite(STAT_MISSILE, 0, s_TeleportEffect, sp->sectnum,
|
||||
auto effect = SpawnActor(STAT_MISSILE, 0, s_TeleportEffect, sp->sectnum,
|
||||
sp->x, sp->y, sp->z - Z(12),
|
||||
sp->ang, 0);
|
||||
|
||||
ep = &sprite[effect];
|
||||
ep = &effect->s();
|
||||
|
||||
ep->shade = -40;
|
||||
ep->xrepeat = ep->yrepeat = 36;
|
||||
|
@ -5450,7 +5433,6 @@ DoGet(DSWActor* actor)
|
|||
// For flag stuff
|
||||
USERp nu;
|
||||
SPRITEp np;
|
||||
short New;
|
||||
|
||||
|
||||
// Invisiblility is only used for DeathMatch type games
|
||||
|
@ -6286,16 +6268,16 @@ KeyMain:
|
|||
|
||||
PlaySound(DIGI_ITEM, sp, v3df_dontpan);
|
||||
|
||||
DSWActor* actorNew;
|
||||
if (sp->hitag == TAG_NORESPAWN_FLAG)
|
||||
New = SpawnSprite(STAT_ITEM, ICON_FLAG, s_CarryFlagNoDet, sp->sectnum,
|
||||
actorNew = SpawnActor(STAT_ITEM, ICON_FLAG, s_CarryFlagNoDet, sp->sectnum,
|
||||
sp->x, sp->y, sp->z, 0, 0);
|
||||
else
|
||||
New = SpawnSprite(STAT_ITEM, ICON_FLAG, s_CarryFlag, sp->sectnum,
|
||||
actorNew = SpawnActor(STAT_ITEM, ICON_FLAG, s_CarryFlag, sp->sectnum,
|
||||
sp->x, sp->y, sp->z, 0, 0);
|
||||
|
||||
auto actorNew = &swActors[New];
|
||||
np = &sprite[New];
|
||||
nu = User[New].Data();
|
||||
np = &actorNew->s();
|
||||
nu = actorNew->u();
|
||||
np->shade = -20;
|
||||
|
||||
// Attach flag to player
|
||||
|
|
|
@ -32,7 +32,6 @@ BEGIN_SW_NS
|
|||
|
||||
void KillSprite(int16_t SpriteNum);
|
||||
void KillActor(DSWActor* actor);
|
||||
int16_t SpawnSprite(short stat, short id, STATEp state, short sectnum, int x, int y, int z, int ang, int vel);
|
||||
DSWActor* SpawnActor(short stat, short id, STATEp state, short sectnum, int x, int y, int z, int ang, int vel);
|
||||
void SpriteSetup(void);
|
||||
int move_actor(DSWActor* actor, int xchange, int ychange, int zchange);
|
||||
|
|
Loading…
Reference in a new issue