Htflags: Difference between revisions

From EDukeWiki
Jump to navigation Jump to search
mNo edit summary
Jblade (talk | contribs)
m not 100% certain on the details of this one, added in revision 5602
Line 51: Line 51:
|SFLAG_GREENSLIMEFOOD||||8388608||Actor can be eaten by GREENSLIME actor (Protozoid Slimer). Can only be set outside of actor and event code whereupon it is applied to all sprites of the same picnum e.g. "spriteflags NEWBEASTHANG 8388608" will make all NEWBEASTHANG in the entire game into greenslime fodder.
|SFLAG_GREENSLIMEFOOD||||8388608||Actor can be eaten by GREENSLIME actor (Protozoid Slimer). Can only be set outside of actor and event code whereupon it is applied to all sprites of the same picnum e.g. "spriteflags NEWBEASTHANG 8388608" will make all NEWBEASTHANG in the entire game into greenslime fodder.
|-
|-
|SFLAG_REALCLIPDIST||SFLAG_REALCLIPDIST||||Actor will use its set clipdist instead of one based on its xrepeat and picnum
|}
|}



Revision as of 00:20, 10 March 2016

A per-actor property, this controls special flags for sprites.

Internal Name Provided CON Label Value Description
SFLAG_SHADOW SFLAG_SHADOW 1 Generates a shadow. See spriteshadow.
SFLAG_NVG SFLAG_NVG 2 Turns palette 6 whenever night vision goggles are used. See spritenvg.
SFLAG_NOSHADE SFLAG_NOSHADE 4 The sprite's shade is unaffected by the shade of its sector. See spritenoshade.
SFLAG_PROJECTILE 8 Has been defined with defineprojectile.
SFLAG_DECAL 16 Prevents teleporting. The sprite is not entered into the decal deletion queue.
SFLAG_BADGUY SFLAG_BADGUY 32 Is an enemy. See useractor.
SFLAG_NOPAL SFLAG_NOPAL 64 Sprite will be insusceptible to floor palette of sector containing this sprite. See spritenopal.
SFLAG_NOEVENTCODE SFLAG_NOEVENTS 128 Sprite will not be run through EVENT_GAME or EVENT_PREGAME.
SFLAG_NOLIGHT SFLAG_NOLIGHT 256 Sprite will not emit hardcoded Polymer-based lights.
SFLAG_USEACTIVATOR SFLAG_USEACTIVATOR 512
SFLAG_NULL 1024 null sprite in multiplayer [internal, do not use]
SFLAG_NOCLIP SFLAG_NOCLIP 2048 Sprite will call "clipmove()" with a clipmask of 0, skipping collision detection with other sprites to increase performance. (Specifically, to prevent runtime behavior that is quadratic with the number of sprites.) Useful for particle effects.
SFLAG_NOFLOORSHADOW 4096
SFLAG_SMOOTHMOVE SFLAG_SMOOTHMOVE 8192
SFLAG_NOTELEPORT SFLAG_NOTELEPORT 16384
SFLAG_BADGUYSTAYPUT 32768 Actor will stay inside its original sector.
SFLAG_CACHE 65536
SFLAG_ROTFIXED 131072 rotation-fixed with respect to a pivot point to prevent position diverging due to roundoff error accumulation
SFLAG_HARDCODED_BADGUY 262144
SFLAG_DIDNOSE7WATER 524288 used temporarily
SFLAG_NODAMAGEPUSH SFLAG_NODAMAGEPUSH 1048576 Actor should not be pushed back when damaged (by default TANK, RECON, ROTATEGUN, and the bosses)
SFLAG_NOWATERDIP SFLAG_NOWATERDIP 2097152 Actor will not appear to sink into the floor in sectors tagged Above Water (lotag 1)
SFLAG_HURTSPAWNBLOOD 4194304 Actor will spawn blood as hardcoded enemies do when hurt
SFLAG_GREENSLIMEFOOD 8388608 Actor can be eaten by GREENSLIME actor (Protozoid Slimer). Can only be set outside of actor and event code whereupon it is applied to all sprites of the same picnum e.g. "spriteflags NEWBEASTHANG 8388608" will make all NEWBEASTHANG in the entire game into greenslime fodder.
SFLAG_REALCLIPDIST SFLAG_REALCLIPDIST Actor will use its set clipdist instead of one based on its xrepeat and picnum

htflags is a bitfield, so add together the values you want and then set htflags to the sum.
This member can also be set using the per-sprite form of the spriteflags command.