CommonC++Lib RiscOSC++Lib ToolboxC++Lib
Toolbox Library for use with the RiscOS DDE C++/CFront compiler
Loading...
Searching...
No Matches
sprite.h
1
#ifndef __sprite_h
2
#define __sprite_h
3
4
typedef
enum
5
{
6
sprite_nopalette = 0,
7
sprite_haspalette = 1
8
} sprite_palflag;
9
10
typedef
struct
11
{
12
int
xmag
,
ymag
,
xdiv
,
ydiv
;
13
}
sprite_factors
;
14
15
typedef
char
sprite_pixtrans;
16
17
18
19
typedef
struct
/* Format of a sprite area control block */
20
{
21
int
size
;
22
int
number
;
23
int
sproff
;
24
int
freeoff
;
25
}
sprite_area
;
26
27
typedef
struct
/* Format of a sprite header */
28
{
29
int
next
;
/* Offset to next sprite */
30
char
name
[12];
/* Sprite name */
31
int
width
;
/* Width in words-1 (0..639) */
32
int
height
;
/* Height in scanlines-1 (0..255/511) */
33
int
lbit
;
/* First bit used (left end of row) */
34
int
rbit
;
/* Last bit used (right end of row) */
35
int
image
;
/* Offset to sprite image */
36
int
mask
;
/* Offset to transparency mask */
37
int
mode
;
/* Mode sprite was defined in */
38
/* Palette data optionally follows here */
39
/* in memory */
40
}
sprite_header
;
41
42
#define sprite_mainarea ((sprite_area *) 0)
43
44
typedef
void
* sprite_ptr;
45
46
47
48
typedef
enum
49
{
50
sprite_id_name = 0,
51
sprite_id_addr = 0x74527053
/* 'Magic' number ("SpRt") to test against */
52
} sprite_type;
53
54
typedef
struct
55
{
56
union
57
{
58
char
*
name
;
/* Can use either name of sprite or address (faster) */
59
sprite_ptr
addr
;
60
} s;
61
sprite_type
tag
;
/* User must tag the use of this structure manually */
62
}
sprite_id
;
63
64
typedef
struct
65
{
66
int
width
;
67
int
height
;
68
int
mask
;
69
int
mode
;
70
}
sprite_info
;
71
72
typedef
struct
73
{
74
int
colour
;
75
int
tint
;
76
}
sprite_colour
;
77
78
typedef
enum
79
{
80
sprite_masktransparent = 0,
81
sprite_masksolid = 1
82
} sprite_maskstate;
83
84
typedef
struct
85
{
int
r
[4];
86
}
sprite_state
;
87
88
/* Typedefs and functions for rotating sprites. */
89
90
typedef
struct
{
int
p0
[2],
p1
[2],
p2
[2],
p3
[2];}
sprite_pgm
;
91
typedef
int
sprite_transmat [6];
92
typedef
struct
{
int
x0
,
y0
,
x1
,
y1
;}
sprite_box
;
93
94
#endif
95
96
/* end of sprite.h */
sprite_area
Definition
sprite.h:20
sprite_area::freeoff
int freeoff
Definition
sprite.h:24
sprite_area::number
int number
Definition
sprite.h:22
sprite_area::size
int size
Definition
sprite.h:21
sprite_area::sproff
int sproff
Definition
sprite.h:23
sprite_box
Definition
sprite.h:92
sprite_box::y1
int y1
Definition
sprite.h:92
sprite_box::x1
int x1
Definition
sprite.h:92
sprite_box::x0
int x0
Definition
sprite.h:92
sprite_box::y0
int y0
Definition
sprite.h:92
sprite_colour
Definition
sprite.h:73
sprite_colour::tint
int tint
Definition
sprite.h:75
sprite_colour::colour
int colour
Definition
sprite.h:74
sprite_factors
Definition
sprite.h:11
sprite_factors::ydiv
int ydiv
Definition
sprite.h:12
sprite_factors::xdiv
int xdiv
Definition
sprite.h:12
sprite_factors::xmag
int xmag
Definition
sprite.h:12
sprite_factors::ymag
int ymag
Definition
sprite.h:12
sprite_header
Definition
sprite.h:28
sprite_header::next
int next
Definition
sprite.h:29
sprite_header::rbit
int rbit
Definition
sprite.h:34
sprite_header::lbit
int lbit
Definition
sprite.h:33
sprite_header::mode
int mode
Definition
sprite.h:37
sprite_header::height
int height
Definition
sprite.h:32
sprite_header::image
int image
Definition
sprite.h:35
sprite_header::width
int width
Definition
sprite.h:31
sprite_header::name
char name[12]
Definition
sprite.h:30
sprite_header::mask
int mask
Definition
sprite.h:36
sprite_id
Definition
sprite.h:55
sprite_id::tag
sprite_type tag
Definition
sprite.h:61
sprite_id::name
char * name
Definition
sprite.h:58
sprite_id::addr
sprite_ptr addr
Definition
sprite.h:59
sprite_info
Definition
sprite.h:65
sprite_info::height
int height
Definition
sprite.h:67
sprite_info::mode
int mode
Definition
sprite.h:69
sprite_info::mask
int mask
Definition
sprite.h:68
sprite_info::width
int width
Definition
sprite.h:66
sprite_pgm
Definition
sprite.h:90
sprite_pgm::p0
int p0[2]
Definition
sprite.h:90
sprite_pgm::p2
int p2[2]
Definition
sprite.h:90
sprite_pgm::p3
int p3[2]
Definition
sprite.h:90
sprite_pgm::p1
int p1[2]
Definition
sprite.h:90
sprite_state
Definition
sprite.h:85
sprite_state::r
int r[4]
Definition
sprite.h:85
h
sprite.h
Generated by
1.14.0