This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
// * pass data from one to the other via .spr files. *
// **********************************************************
+#ifndef SPRITEGEN_H
+#define SPRITEGEN_H
+
//-------------------------------------------------------
// This program generates .spr sprite package files.
// The format of the files is as follows:
// <endrepeat>
//-------------------------------------------------------
-#define SPRITE_VERSION 1
+#define SPRITE_VERSION 1
#define SPRITEHL_VERSION 2
#define SPRITE32_VERSION 32
+#define SPRITE2_VERSION 2
+
typedef struct
{
int ident;
synctype_t synctype;
} dspritehl_t;
+typedef struct
+{
+ int width, height;
+ int origin_x, origin_y; // raster coordinates inside pic
+ char name[64]; // name of pcx file
+} dsprite2frame_t;
+
+typedef struct
+{
+ int ident;
+ int version;
+ int numframes;
+ dsprite2frame_t frames[1]; // variable sized
+} dsprite2_t;
+
#define SPR_VP_PARALLEL_UPRIGHT 0
#define SPR_FACING_UPRIGHT 1
#define SPR_VP_PARALLEL 2
#define SPR_ORIENTED 3
#define SPR_VP_PARALLEL_ORIENTED 4
-#define SPRHL_NORMAL 0
+#define SPRHL_OPAQUE 0
#define SPRHL_ADDITIVE 1
-// no idea how to handle these two rendering modes
#define SPRHL_INDEXALPHA 2
#define SPRHL_ALPHATEST 3
typedef struct {
spriteframetype_t type;
} dspriteframetype_t;
+
+#endif
+