You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
91 lines
2.1 KiB
91 lines
2.1 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
//=============================================================================// |
|
|
|
#ifndef MAP_SHARED_H |
|
#define MAP_SHARED_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
|
|
#include "ChunkFile.h" |
|
#include "bsplib.h" |
|
#include "cmdlib.h" |
|
|
|
|
|
struct LoadEntity_t |
|
{ |
|
entity_t *pEntity; |
|
int nID; |
|
int nBaseFlags; |
|
int nBaseContents; |
|
}; |
|
|
|
|
|
class CMapError |
|
{ |
|
public: |
|
|
|
void BrushState( int brushID ) |
|
{ |
|
m_brushID = brushID; |
|
} |
|
|
|
void BrushSide( int side ) |
|
{ |
|
m_sideIndex = side; |
|
} |
|
|
|
void TextureState( const char *pTextureName ) |
|
{ |
|
Q_strncpy( m_textureName, pTextureName, sizeof( m_textureName ) ); |
|
} |
|
|
|
void ClearState( void ) |
|
{ |
|
BrushState( 0 ); |
|
BrushSide( 0 ); |
|
TextureState( "Not a Parse error!" ); |
|
} |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: Hook the map parse errors and report brush/ent/texture state |
|
// Input : *pErrorString - |
|
//----------------------------------------------------------------------------- |
|
void ReportError( const char *pErrorString ) |
|
{ |
|
Error( "Brush %i: %s\nSide %i\nTexture: %s\n", m_brushID, pErrorString, m_sideIndex, m_textureName ); |
|
} |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: Hook the map parse errors and report brush/ent/texture state without exiting. |
|
// Input : pWarningString - |
|
//----------------------------------------------------------------------------- |
|
void ReportWarning( const char *pWarningString ) |
|
{ |
|
printf( "Brush %i, Side %i: %s\n", m_brushID, m_sideIndex, pWarningString ); |
|
} |
|
|
|
private: |
|
|
|
int m_brushID; |
|
int m_sideIndex; |
|
char m_textureName[80]; |
|
}; |
|
|
|
|
|
extern CMapError g_MapError; |
|
extern int g_nMapFileVersion; |
|
|
|
|
|
// Shared mapload code. |
|
ChunkFileResult_t LoadEntityKeyCallback( const char *szKey, const char *szValue, LoadEntity_t *pLoadEntity ); |
|
|
|
// Used by VRAD incremental lighting - only load ents from the file and |
|
// fill in the global entities/num_entities array. |
|
bool LoadEntsFromMapFile( char const *pFilename ); |
|
|
|
#endif // MAP_SHARED_H
|
|
|