]> de.git.xonotic.org Git - voretournament/voretournament.git/blobdiff - misc/mediasource/extra/netradiant-src/contrib/bobtoolz/bsploader.cpp
Move the netradiant and fteqcc sources
[voretournament/voretournament.git] / misc / mediasource / extra / netradiant-src / contrib / bobtoolz / bsploader.cpp
diff --git a/misc/mediasource/extra/netradiant-src/contrib/bobtoolz/bsploader.cpp b/misc/mediasource/extra/netradiant-src/contrib/bobtoolz/bsploader.cpp
deleted file mode 100644 (file)
index 287c5ff..0000000
+++ /dev/null
@@ -1,263 +0,0 @@
-#include "bsploader.h"
-#include "dialogs/dialogs-gtk.h"
-#include "cmdlib.h"
-
-int                    numnodes;
-int                    numplanes;
-int                    numleafs;
-int                    numleafsurfaces;
-int                    numVisBytes;
-int                    numDrawVerts;
-int                    numDrawSurfaces;
-int                    numbrushes;
-int                    numbrushsides;
-int                    numleafbrushes;
-
-byte                       *visBytes =                   NULL;
-dnode_t                          *dnodes =                         NULL;
-dplane_t                 *dplanes =                      NULL;
-dleaf_t                          *dleafs =                         NULL;
-qdrawVert_t      *drawVerts =            NULL;
-dsurface_t       *drawSurfaces =               NULL;
-int                                *dleafsurfaces =    NULL;
-dbrush_t                 *dbrushes =                     NULL;
-dbrushside_t   *dbrushsides =          NULL;
-int                                *dleafbrushes =             NULL;
-
-#define BSP_IDENT      (('P'<<24)+('S'<<16)+('B'<<8)+'I')
-#define Q3_BSP_VERSION                 46
-#define WOLF_BSP_VERSION                       47
-
-/*
-================
-FileLength
-================
-*/
-int FileLength (FILE *f)
-{
-       int             pos;
-       int             end;
-
-       pos = ftell (f);
-       fseek (f, 0, SEEK_END);
-       end = ftell (f);
-       fseek (f, pos, SEEK_SET);
-
-       return end;
-}
-
-/*
-==============
-LoadFile
-==============
-*/
-bool    LoadFile( const char *filename, byte **bufferptr)
-{
-       FILE    *f;
-       int             length;
-       byte    *buffer;
-
-       f = fopen(filename, "rb");
-       if(!f)
-               return false;
-
-       length = FileLength (f);
-       buffer = new byte[length+1];
-       buffer[length] = 0;
-       fread(buffer, 1, length, f);
-       fclose (f);
-
-       *bufferptr = buffer;
-       return true;
-}
-
-int    LittleLong (int l)
-{
-#if defined(__BIG_ENDIAN__)
-  std::reverse(reinterpret_cast<unsigned char*>(&l), reinterpret_cast<unsigned char*>(&l) + sizeof(int));
-#endif
-       return l;
-}
-
-float  LittleFloat (float l)
-{
-#if defined(__BIG_ENDIAN__)
-  std::reverse(reinterpret_cast<unsigned char*>(&l), reinterpret_cast<unsigned char*>(&l) + sizeof(float));
-#endif
-       return l;
-}
-
-/*
-=============
-SwapBlock
-
-If all values are 32 bits, this can be used to swap everything
-=============
-*/
-void SwapBlock( int *block, int sizeOfBlock ) {
-       int             i;
-
-       sizeOfBlock >>= 2;
-       for ( i = 0 ; i < sizeOfBlock ; i++ ) {
-               block[i] = LittleLong( block[i] );
-       }
-}
-
-/*
-=============
-SwapBSPFile
-
-Byte swaps all data in a bsp file.
-=============
-*/
-void SwapBSPFile( void ) {
-       int                             i;
-       
-       // models       
-//     SwapBlock( (int *)dmodels, nummodels * sizeof( dmodels[0] ) );
-
-       // shaders (don't swap the name)
-//     for ( i = 0 ; i < numShaders ; i++ ) {
-//             dshaders[i].contentFlags = LittleLong( dshaders[i].contentFlags );
-//             dshaders[i].surfaceFlags = LittleLong( dshaders[i].surfaceFlags );
-//     }
-
-       // planes
-       SwapBlock( (int *)dplanes, numplanes * sizeof( dplanes[0] ) );
-       
-       // nodes
-       SwapBlock( (int *)dnodes, numnodes * sizeof( dnodes[0] ) );
-
-       // leafs
-       SwapBlock( (int *)dleafs, numleafs * sizeof( dleafs[0] ) );
-
-       // leaffaces
-       SwapBlock( (int *)dleafsurfaces, numleafsurfaces * sizeof( dleafsurfaces[0] ) );
-
-       // leafbrushes
-       SwapBlock( (int *)dleafbrushes, numleafbrushes * sizeof( dleafbrushes[0] ) );
-
-       // brushes
-       SwapBlock( (int *)dbrushes, numbrushes * sizeof( dbrushes[0] ) );
-
-       // brushsides
-       SwapBlock( (int *)dbrushsides, numbrushsides * sizeof( dbrushsides[0] ) );
-
-       // vis
-       ((int *)&visBytes)[0] = LittleLong( ((int *)&visBytes)[0] );
-       ((int *)&visBytes)[1] = LittleLong( ((int *)&visBytes)[1] );
-
-       // drawverts (don't swap colors )
-       for ( i = 0 ; i < numDrawVerts ; i++ ) {
-               drawVerts[i].lightmap[0] = LittleFloat( drawVerts[i].lightmap[0] );
-               drawVerts[i].lightmap[1] = LittleFloat( drawVerts[i].lightmap[1] );
-               drawVerts[i].st[0] = LittleFloat( drawVerts[i].st[0] );
-               drawVerts[i].st[1] = LittleFloat( drawVerts[i].st[1] );
-               drawVerts[i].xyz[0] = LittleFloat( drawVerts[i].xyz[0] );
-               drawVerts[i].xyz[1] = LittleFloat( drawVerts[i].xyz[1] );
-               drawVerts[i].xyz[2] = LittleFloat( drawVerts[i].xyz[2] );
-               drawVerts[i].normal[0] = LittleFloat( drawVerts[i].normal[0] );
-               drawVerts[i].normal[1] = LittleFloat( drawVerts[i].normal[1] );
-               drawVerts[i].normal[2] = LittleFloat( drawVerts[i].normal[2] );
-       }
-
-       // drawindexes
-//     SwapBlock( (int *)drawIndexes, numDrawIndexes * sizeof( drawIndexes[0] ) );
-
-       // drawsurfs
-       SwapBlock( (int *)drawSurfaces, numDrawSurfaces * sizeof( drawSurfaces[0] ) );
-
-       // fogs
-//     for ( i = 0 ; i < numFogs ; i++ ) {
-//             dfogs[i].brushNum = LittleLong( dfogs[i].brushNum );
-//             dfogs[i].visibleSide = LittleLong( dfogs[i].visibleSide );
-//     }
-}
-
-/*
-=============
-CopyLump
-=============
-*/
-int CopyLump( dheader_t        *header, int lump, void **dest, int size ) {
-       int             length, ofs;
-
-       length = header->lumps[lump].filelen;
-       ofs = header->lumps[lump].fileofs;
-       
-       if(length == 0)
-               return 0;
-       
-       *dest = new byte[length];
-       memcpy( *dest, (byte *)header + ofs, length );
-
-       return length / size;
-}
-
-/*
-=============
-LoadBSPFile
-=============
-*/
-bool   LoadBSPFile( const char *filename ) {
-       dheader_t       *header;
-
-       // load the file header
-       if(!LoadFile (filename, (byte **)&header))
-               return false;
-
-       // swap the header
-       SwapBlock( (int *)header, sizeof(*header) );
-
-       if ( header->ident != BSP_IDENT ) {
-               DoMessageBox( "Cant find a valid IBSP file", "Error", eMB_OK);
-               return false;
-       }
-       if ( (header->version != Q3_BSP_VERSION) &&
-                                                                                                                                                       (header->version != WOLF_BSP_VERSION) ) {
-               DoMessageBox( "File is incorrect version", "Error", eMB_OK);
-               return false;
-       }
-
-       numbrushsides =         CopyLump( header, LUMP_BRUSHES,                 (void**)&dbrushsides,   sizeof(dbrushside_t) );
-       numbrushes =            CopyLump( header, LUMP_BRUSHES,                 (void**)&dbrushes,              sizeof(dbrush_t) );
-       numplanes =                     CopyLump( header, LUMP_PLANES,                  (void**)&dplanes,               sizeof(dplane_t) );
-       numleafs =                      CopyLump( header, LUMP_LEAFS,                   (void**)&dleafs,                sizeof(dleaf_t) );
-       numnodes =                      CopyLump( header, LUMP_NODES,                   (void**)&dnodes,                sizeof(dnode_t) );
-       numDrawVerts =          CopyLump( header, LUMP_DRAWVERTS,               (void**)&drawVerts,             sizeof(qdrawVert_t) );
-       numDrawSurfaces =       CopyLump( header, LUMP_SURFACES,                (void**)&drawSurfaces,  sizeof(dsurface_t) );
-       numleafsurfaces =       CopyLump( header, LUMP_LEAFSURFACES,    (void**)&dleafsurfaces, sizeof(int) );
-       numVisBytes =           CopyLump( header, LUMP_VISIBILITY,              (void**)&visBytes,              1 );
-       numleafbrushes =        CopyLump( header, LUMP_LEAFBRUSHES,             (void**)&dleafbrushes,  sizeof(int) );
-
-       delete header;          // everything has been copied out
-               
-       // swap everything
-       SwapBSPFile();
-
-       return true;
-}
-
-void FreeBSPData()
-{
-       if(visBytes)
-               delete visBytes;
-       if(dnodes)
-               delete dnodes;
-       if(dplanes)
-               delete dplanes;
-       if(dleafs)
-               delete dleafs;
-       if(drawVerts)
-               delete drawVerts;
-       if(drawSurfaces)
-               delete drawSurfaces;
-       if(dleafsurfaces)
-               delete dleafsurfaces;
-       if(dleafbrushes)
-               delete dleafbrushes;
-       if(dbrushes)
-               delete dbrushes;
-       if(dbrushsides)
-               delete dbrushsides;
-}