File: face.h

package info (click to toggle)
crossfire 1.71.0%2Bdfsg1-2
  • links: PTS
  • area: main
  • in suites: buster
  • size: 28,076 kB
  • sloc: ansic: 85,126; sh: 11,978; perl: 2,659; lex: 2,044; makefile: 1,271
file content (34 lines) | stat: -rw-r--r-- 1,225 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/**
 * @file
 * Face-related structures.
 */

#ifndef FACE_H
#define FACE_H

/**
 * New face structure - this enforces the notion that data is face by
 * face only - you can not change the color of an item - you need to instead
 * create a new face with that color.
 */
typedef struct new_face_struct {
    uint16 number;           /**< This is the image id.  It should be the
                              * same value as its position in the array */
    uint8 visibility;
    uint8 magicmap;          /**< Color to show this in magic map */
    uint16 smoothface;       /**< Smoothed face for this, (uint16)-1 for none. */
    const char *name;        /**< Face name, as used by archetypes and such. */
} New_Face;

/**
 * This represents one animation. It points to different faces.
 */
typedef struct animations_struct {
    const char *name;       /**< Name of the animation sequence. */
    uint8 num_animations;   /**< How many different faces to animate, size of the faces array. */
    uint8 facings;          /**< How many facings (1,2,4,8). */
    uint16 num;             /**< Where we are in the array. */
    const New_Face **faces; /**< The actual faces for the animation. */
} Animations;

#endif /* FACE_H */