![]() |
OpenXcom
1.0
Open-source clone of the original X-Com
|
A class that renders a specific unit, given its render rules combining the right frames from the surfaceset. More...
#include <UnitSprite.h>
Public Member Functions | |
| UnitSprite (int width, int height, int x, int y, bool helmet) | |
| Creates a new UnitSprite at the specified position and size. More... | |
| ~UnitSprite () | |
| Cleans up the UnitSprite. More... | |
| void | setSurfaces (SurfaceSet *unitSurface, SurfaceSet *itemSurfaceA, SurfaceSet *itemSurfaceB) |
| Sets surfacesets for rendering. More... | |
| void | setBattleUnit (BattleUnit *unit, int part=0) |
| Sets the battleunit to be rendered. More... | |
| void | setAnimationFrame (int frame) |
| Sets the animation frame. More... | |
| void | draw () |
| Draws the unit. More... | |
Public Member Functions inherited from OpenXcom::Surface | |
| Surface (int width, int height, int x=0, int y=0, int bpp=8) | |
| Creates a new surface with the specified size and position. More... | |
| Surface (const Surface &other) | |
| Creates a new surface from an existing one. More... | |
| virtual | ~Surface () |
| Cleans up the surface. More... | |
| void | loadRaw (const std::vector< unsigned char > &bytes) |
| Loads a raw pixel array. More... | |
| void | loadRaw (const std::vector< char > &bytes) |
| Loads a raw pixel array. More... | |
| void | loadScr (const std::string &filename) |
| Loads an X-Com SCR graphic. More... | |
| void | loadSpk (const std::string &filename) |
| Loads an X-Com SPK graphic. More... | |
| void | loadBdy (const std::string &filename) |
| Loads a TFTD BDY graphic. More... | |
| void | loadImage (const std::string &filename) |
| Loads a general image file. More... | |
| void | clear (Uint32 color=0) |
| Clears the surface's contents eith a specified colour. More... | |
| void | offset (int off, int min=-1, int max=-1, int mul=1) |
| Offsets the surface's colors by a set amount. More... | |
| void | offsetBlock (int off, int blk=16, int mul=1) |
| Offsets the surface's colors in a color block. More... | |
| void | invert (Uint8 mid) |
| Inverts the surface's colors. More... | |
| virtual void | think () |
| Runs surface functionality every cycle. More... | |
| virtual void | blit (Surface *surface) |
| Blits this surface onto another one. More... | |
| virtual void | initText (Font *, Font *, Language *) |
| Initializes the surface's various text resources. | |
| void | copy (Surface *surface) |
| Copies a portion of another surface into this one. More... | |
| void | drawRect (SDL_Rect *rect, Uint8 color) |
| Draws a filled rectangle on the surface. More... | |
| void | drawRect (Sint16 x, Sint16 y, Sint16 w, Sint16 h, Uint8 color) |
| Draws a filled rectangle on the surface. More... | |
| void | drawLine (Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Uint8 color) |
| Draws a line on the surface. More... | |
| void | drawCircle (Sint16 x, Sint16 y, Sint16 r, Uint8 color) |
| Draws a filled circle on the surface. More... | |
| void | drawPolygon (Sint16 *x, Sint16 *y, int n, Uint8 color) |
| Draws a filled polygon on the surface. More... | |
| void | drawTexturedPolygon (Sint16 *x, Sint16 *y, int n, Surface *texture, int dx, int dy) |
| Draws a textured polygon on the surface. More... | |
| void | drawString (Sint16 x, Sint16 y, const char *s, Uint8 color) |
| Draws a string on the surface. More... | |
| virtual void | setPalette (SDL_Color *colors, int firstcolor=0, int ncolors=256) |
| Sets the surface's palette. More... | |
| SDL_Color * | getPalette () const |
| Returns the surface's 8bpp palette. More... | |
| virtual void | setX (int x) |
| Sets the X position of the surface. More... | |
| int | getX () const |
| Returns the position of the surface in the X axis. More... | |
| virtual void | setY (int y) |
| Sets the Y position of the surface. More... | |
| int | getY () const |
| Returns the position of the surface in the Y axis. More... | |
| virtual void | setVisible (bool visible) |
| Sets the surface's visibility. More... | |
| bool | getVisible () const |
| Gets the surface's visibility. More... | |
| void | resetCrop () |
| Resets the cropping rectangle for the surface. More... | |
| SDL_Rect * | getCrop () |
| Gets the cropping rectangle for the surface. More... | |
| void | setPixel (int x, int y, Uint8 pixel) |
| Changes the color of a pixel in the surface, relative to the top-left corner of the surface. More... | |
| void | setPixelIterative (int *x, int *y, Uint8 pixel) |
| Changes the color of a pixel in the surface and returns the next pixel position. More... | |
| Uint8 | getPixel (int x, int y) const |
| Returns the color of a specified pixel in the surface. More... | |
| Uint8 * | getRaw (int x, int y) const |
| Returns the pointer to a specified pixel in the surface. More... | |
| SDL_Surface * | getSurface () const |
| Returns the internal SDL_Surface for SDL calls. More... | |
| int | getWidth () const |
| Returns the width of the surface. More... | |
| virtual void | setWidth (int width) |
| Sets the width of the surface. More... | |
| int | getHeight () const |
| Returns the height of the surface. More... | |
| virtual void | setHeight (int height) |
| Sets the height of the surface. More... | |
| void | setHidden (bool hidden) |
| Sets the surface's special hidden flag. More... | |
| void | lock () |
| Locks the surface. More... | |
| void | unlock () |
| Unlocks the surface. More... | |
| void | blitNShade (Surface *surface, int x, int y, int shade, bool half=false, int newBaseColor=0) |
| Specific blit function to blit battlescape terrain data in different shades in a fast way. More... | |
| void | blitNShade (Surface *surface, int x, int y, int shade, GraphSubset range) |
| Specific blit function to blit battlescape terrain data in different shades in a fast way. More... | |
| void | invalidate (bool valid=true) |
| Invalidate the surface: force it to be redrawn. More... | |
| std::string | getTooltip () const |
| Gets the tooltip of the surface. More... | |
| void | setTooltip (const std::string &tooltip) |
| Sets the tooltip of the surface. More... | |
| virtual void | setColor (Uint8) |
| Sets the color of the surface. | |
| virtual void | setSecondaryColor (Uint8) |
| Sets the secondary color of the surface. | |
| virtual void | setBorderColor (Uint8) |
| Sets the border colour of the surface. | |
| virtual void | setHighContrast (bool) |
| Sets the high contrast color setting of the surface. | |
| void | setTFTDMode (bool mode) |
| Sets this button to use a colour lookup table instead of inversion for its alternate form. More... | |
| bool | isTFTDMode () const |
| checks if this is a TFTD mode surface. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from OpenXcom::Surface | |
| template<typename T > | |
| void | rawCopy (const std::vector< T > &bytes) |
| Copies raw pixels. More... | |
| void | resize (int width, int height) |
| Resizes the surface. More... | |
A class that renders a specific unit, given its render rules combining the right frames from the surfaceset.
| OpenXcom::UnitSprite::UnitSprite | ( | int | width, |
| int | height, | ||
| int | x, | ||
| int | y, | ||
| bool | helmet | ||
| ) |
Creates a new UnitSprite at the specified position and size.
Sets up a UnitSprite with the specified size and position.
| width | Width in pixels. |
| height | Height in pixels. |
| x | X position in pixels. |
| y | Y position in pixels. |
| OpenXcom::UnitSprite::~UnitSprite | ( | ) |
Cleans up the UnitSprite.
Deletes the UnitSprite.
|
virtual |
Draws the unit.
Draws a unit, using the drawing rules of the unit.
This function is called by Map, for each unit on the screen.
Reimplemented from OpenXcom::Surface.
| void OpenXcom::UnitSprite::setAnimationFrame | ( | int | frame | ) |
Sets the animation frame.
Sets the animation frame for animated units.
| frame | Frame number. |
| void OpenXcom::UnitSprite::setBattleUnit | ( | BattleUnit * | unit, |
| int | part = 0 |
||
| ) |
Sets the battleunit to be rendered.
Links this sprite to a BattleUnit to get the data for rendering.
| unit | Pointer to the BattleUnit. |
| part | The part number for large units. |
| void OpenXcom::UnitSprite::setSurfaces | ( | SurfaceSet * | unitSurface, |
| SurfaceSet * | itemSurfaceR, | ||
| SurfaceSet * | itemSurfaceL | ||
| ) |
Sets surfacesets for rendering.
Changes the surface sets for the UnitSprite to get resources for rendering.
| unitSurface | Pointer to the unit surface set. |
| itemSurfaceR | Pointer to the item surface set. |
| itemSurfaceL | Pointer to the item surface set. |
1.8.14