//========= 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