]> de.git.xonotic.org Git - xonotic/netradiant.git/blob - plugins/imagem8/m32.h
error check and bail if permission denied during gamepack install
[xonotic/netradiant.git] / plugins / imagem8 / m32.h
1 /*
2    Copyright (C) 1999-2007 id Software, Inc. and contributors.
3    For a list of contributors, see the accompanying CONTRIBUTORS file.
4
5    This file is part of GtkRadiant.
6
7    GtkRadiant is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 2 of the License, or
10    (at your option) any later version.
11
12    GtkRadiant is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16
17    You should have received a copy of the GNU General Public License
18    along with GtkRadiant; if not, write to the Free Software
19    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20  */
21
22 #ifndef _M32_H
23 #define _M32_H
24
25 #include "imagem8.h"
26
27 #define M32_VERSION     4
28 #define M32_MIP_LEVELS  16
29
30 typedef struct {
31         unsigned char r;
32         unsigned char g;
33         unsigned char b;
34 } rgb_t;
35
36 typedef struct
37 {
38         int version;
39         char name[128];
40         char altname[128];                          // texture substitution
41         char animname[128];                         // next frame in animation chain
42         char damagename[128];                       // image that should be shown when damaged
43         unsigned width[M32_MIP_LEVELS], height[M32_MIP_LEVELS];
44         unsigned offsets[M32_MIP_LEVELS];
45         int flags;
46         int contents;
47         int value;
48         float scale_x, scale_y;
49         int mip_scale;
50
51         // detail texturing info
52         char dt_name[128];                  // detailed texture name
53         float dt_scale_x, dt_scale_y;
54         float dt_u, dt_v;
55         float dt_alpha;
56         int dt_src_blend_mode, dt_dst_blend_mode;
57
58         int unused[20];                                 // future expansion to maintain compatibility with h2
59 } m32_header_t;
60
61 void LoadM32( const char *name, unsigned char **pic, int *width, int *height );
62
63
64 #endif