initial
[divverent/netradiant.git] / tools / quake3 / q3data / q3data.h
1 /*
2 Copyright (C) 1999-2006 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 // q3data.h
23
24
25 #include <stdlib.h>
26 #include <stdio.h>
27 #include <math.h>
28 #include <string.h>
29 #include <sys/stat.h>
30
31 #include "../common/cmdlib.h"
32 #include "scriplib.h"
33 #include "mathlib.h"
34 #include "polyset.h"
35 #include "trilib.h"
36 #include "imagelib.h"
37 #include "qthreads.h"
38 #include "l3dslib.h"
39 #include "bspfile.h"
40 #include "p3dlib.h"
41 #include "3dslib.h"
42 #include "aselib.h"
43 #include "md3lib.h"
44
45 void Cmd_ASEConvert( qboolean grabAnims );
46 void Cmd_3DSConvert( void );
47 void Cmd_Modelname (void);
48 void Cmd_SpriteBase (void);
49 void Cmd_Base (void);
50 void Cmd_Cd (void);
51 void Cmd_Origin (void);
52 void Cmd_ScaleUp (void);
53 void Cmd_Frame (void);
54 void Cmd_Modelname (void);
55 void Cmd_SpriteShader(void);
56 void Cmd_Skin(void);
57 void Cmd_Skinsize (void);
58 void FinishModel (int type);
59
60 void Cmd_Grab (void);
61 void Cmd_Raw (void);
62 void Cmd_Mip (void);
63 void Cmd_Environment (void);
64 void Cmd_Colormap (void);
65
66 void Cmd_File (void);
67 void Cmd_Dir (void);
68 void Cmd_StartWad (void);
69 void Cmd_EndWad (void);
70 void Cmd_Mippal (void);
71 void Cmd_Mipdir (void);
72
73 void Cmd_Video (void);
74
75 void ReleaseFile (char *filename);
76 void ReleaseShader( char *filename );
77
78 void Convert3DStoMD3( const char *filename );
79
80 void OrderMesh( int input[][3], int output[][3], int numTris );
81
82 extern  byte            *byteimage, *lbmpalette;
83 extern  int                     byteimagewidth, byteimageheight;
84
85 extern  qboolean        g_release;                      // don't grab, copy output data to new tree
86 extern  char            g_releasedir[1024];     // c:\quake2\baseq2, etc
87 extern  qboolean        g_archive;                      // don't grab, copy source data to new tree
88 extern  qboolean        do3ds;
89 extern  char            g_only[256];            // if set, only grab this cd
90 extern  qboolean        g_skipmodel;            // set true when a cd is not g_only
91 extern  qboolean        g_verbose;
92
93 extern  char            *trifileext;
94
95 #define TYPE_ITEM               0
96 #define TYPE_PLAYER             1
97 #define TYPE_WEAPON             2
98 #define TYPE_HAND               3
99 #define TYPE_UNKNOWN    4