Build 10066
GIT-
skip bpos update for STAT_EFFECTOR sprites
-
consider hitag of RESPAWN sprites for precache
-
precache indexed hightile textures, minor rework of loading screen progress bar
SVN handles and Git names are merged into one person.
skip bpos update for STAT_EFFECTOR sprites
consider hitag of RESPAWN sprites for precache
precache indexed hightile textures, minor rework of loading screen progress bar
Revert 22d85479a52ea9fd066daf283b3941b934858808.
There are maps which depend on projectiles getting reflected by walls with the picnum of MIRROR.
improve Polymost and Polymer setup menus
fix polymer savedfires thing
clean up a couple sprite loops
Reset all actor vars in prelevel() regardless of the sprite's statnum
Previously, only sprites with statnum 0 would have their per-actor variables reset to the default on map load. This meant that sprites with statnums that were pre-defined in the map would inherit the actor var values of the sprites with corresponding spriteNums from the previous map. Additionally, the per-actor var reset is now performed before EVENT_PRELEVEL, meaning that any changes to actorvar that occur in this event will now persist. Previously, altering actor vars for sprites with statnum 0 in this event would not have any effect, as they would be reset to their defaults afterwards.
fix oversight in current A_RadiusDamage() implementation that allowed a sprite to inflict radius damage on itself
Add actor struct members `htfloorzoffset` and `htwaterzoffset`
Values range from -128 to 127. The former defines the distance of the actor from all floors, the latter applies additively to the hardcoded offset applied when on lotag 1 sectors. Positive values lift the actor off the ground, negative values move the actor into the floor. The default values for both struct members is 0. To achieve a net zero displacement, htfloorzoffset needs to be set to -1, and htwaterzoffset must be set to 24. Also note that internally, the offset is multiplied by 256 to receive the actual z coordinates (like `iffloordistl`).
fix a few polymer lighting bugs, add interpolation to light positions, etc
better positioning for effect sprites spawned from projectiles
remove unnecessary/wrong wall[].picnum == MIRROR check from projectiles
MIRROR is only ever on .overpicnum for valid mirrors.
fix OOB reachability table access (sectnum == MAXSECTORS for a sound owned by a deleted sprite)
Fix POLYMER=0 builds
fix issue with Polymer lights sometimes not appearing after the player dies and respawns
fix player/actors being squished in sloped sectors that actually have enough room for them
skip "SLIDE_ABOVE_ENEMY" processing in A_GetZLimits() if the calling sprite isn't moving
Fixes terminx/eduke32#28.
fix access to sector[-1] through ps->cursectnum
Geez, I don't think I've seen one of these in years.
fix sprites jittering when demo playback is paused
Re-enable remote activation of viewscreen using yvel of 1
A viewscreen placed in the map with a yvel of 1 will always display its camera feed if the player is within active range. If set to 0, the screen will only show the tile on manual activation. If yvel is 1, and the screen is connected to a camera, it will display the view of that camera. Otherwise, it will show the view of the Viewscreen's owner, the direction in which it is looking being dictated by angle and shade of that sprite. The xvel of the viewscreen now defines the active range. If less or equal to 0, the default distance of 8192 is used. Note that this is currently restricted to one active screen at a time.
Move updating bpos of player sprites after G_MovePlayers()
Delete existing dummyplayer sprite if standing on TROR water
Fixes terminx/eduke32#76 and terminx/eduke32#91 (for real this time)
Replace klabs(x) with max(0, x) in overhead sprite computation
Do not spawn the dummyplayer sprite when standing on TROR water
Fixes terminx/eduke32#76 and terminx/eduke32#91
Fix ST 30 sectors playing the wrong sound after save load
rework actor zsum invalidation, skip getzrange for floor sprites in A_CheckNeedZUpdate()
minor A_GetClipdist() rework
This shouldn't have any impact whatsoever on gameplay. The point was simply to eliminate branches that arrive at the same result, and reduce function calls for cases where they aren't needed (i.e. calling A_CheckEnemySprite() for sprites that are STAT_PROJECTILE).
expose gotsector[] to CON for checking to see if a particular sector was drawn during the last frame
reclaim a ridiculous amount of wasted space in the player struct
This converts the storage for LOOGIE sprite coordinates to vec2_16_t and reduces the storage to 6 sets of coordinates, the max the game uses.
remove extraneous actor bpos updates
These sprites are covered by G_RecordOldSpritePos().