Template:Orientation: Difference between revisions

From EDukeWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 6: Line 6:
Bit 1 (1) is translucency level one (66% opacity).
Bit 1 (1) is translucency level one (66% opacity).


Bit 2 (2) is scaling on 320x200 coordinates. It's considered internal in the case of CON commands because the CON interface automatically sets it when you use functions calling rotatesprite (rotatesprite as well as various text functions).
Bit 2 (2) is scaling on 320×200 coordinates. It's considered internal in the case of CON commands because the CON interface automatically sets it when you use functions calling rotatesprite (as well as various text functions).


Bit 3 (4) is used to invert Y coordinates. Combine with a angle of 1024 and will flip the tile horizontal.
Bit 3 (4) is used to invert Y coordinates. Combine this bit with an angle of 1024 (using rotatesprite) and the tile will appear to have inverted X coordinates. If you want inversion for both the X and Y coordinates, simply set the angle (again, with rotatesprite) to 1024 and do not use this bit.


Bit 4 (8) ?
Bit 4 (8) clips the sprite you're drawing to startumost/startdmost.


Bit 5 (16) forces the center of the sprite you're drawing to its top-left if set. If not, its center as set in editart will be drawn at the specified coordinates.
Bit 5 (16) forces the center of the sprite you're drawing to its top-left if set. If not, its center as set in editart will be drawn at the specified coordinates.
Line 20: Line 20:


As with [[cstat]], the bit values can be added together and used in combination.  For example, orientation 33 (32+1) is transparency level two, and orientation 5 (4+1) is transparency level one with inverted Y coordinates.
As with [[cstat]], the bit values can be added together and used in combination.  For example, orientation 33 (32+1) is transparency level two, and orientation 5 (4+1) is transparency level one with inverted Y coordinates.
 
<!-- Some of the information in this entry was supplied by Plagman in a forum post -->
<!-- The information in this entry was supplied by Plagman in a forum post -->

Revision as of 16:08, 8 August 2007

orientation is a parameter used in several of the screen drawing commands, including digitalnumber and rotatesprite

orientation is a bitfield, the flags of which determine how a sprite is drawn. Here are the known bits and what they do. There may be others:


Bit 1 (1) is translucency level one (66% opacity).

Bit 2 (2) is scaling on 320×200 coordinates. It's considered internal in the case of CON commands because the CON interface automatically sets it when you use functions calling rotatesprite (as well as various text functions).

Bit 3 (4) is used to invert Y coordinates. Combine this bit with an angle of 1024 (using rotatesprite) and the tile will appear to have inverted X coordinates. If you want inversion for both the X and Y coordinates, simply set the angle (again, with rotatesprite) to 1024 and do not use this bit.

Bit 4 (8) clips the sprite you're drawing to startumost/startdmost.

Bit 5 (16) forces the center of the sprite you're drawing to its top-left if set. If not, its center as set in editart will be drawn at the specified coordinates.

Bit 6 (32) is translucency level two (33% opacity). It won't work unless bit 1 is also set.

Bit 7 (64) forces masking off if set. It discards translucency too.


As with cstat, the bit values can be added together and used in combination. For example, orientation 33 (32+1) is transparency level two, and orientation 5 (4+1) is transparency level one with inverted Y coordinates.