diff options
| author | Subv2112 <s.v.h21@hotmail.com> | 2012-02-03 16:03:52 -0500 |
|---|---|---|
| committer | Subv <s.v.h21@hotmail.com> | 2012-02-09 13:58:22 -0500 |
| commit | 93d199f04382fe3c7f6f08f59fd2ad058568679a (patch) | |
| tree | b698029a6cf0649bed6689cd0aa4414d8ad1aa42 /src/server/collision/Maps/TileAssembler.h | |
| parent | 229d4119e887fa6079a6e0b093860e11b5facb63 (diff) | |
Core/Collision: Ported dynamic line of sight patch by Silverice from MaNGOS and
added lots of improvements
Please re-extract vmaps
Diffstat (limited to 'src/server/collision/Maps/TileAssembler.h')
| -rwxr-xr-x | src/server/collision/Maps/TileAssembler.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/server/collision/Maps/TileAssembler.h b/src/server/collision/Maps/TileAssembler.h index 6128a0d2a53..554940a4663 100755 --- a/src/server/collision/Maps/TileAssembler.h +++ b/src/server/collision/Maps/TileAssembler.h @@ -22,8 +22,10 @@ #include <G3D/Vector3.h> #include <G3D/Matrix3.h> #include <map> +#include <set> #include "ModelInstance.h" +#include "WorldModel.h" namespace VMAP { @@ -61,6 +63,31 @@ namespace VMAP typedef std::map<uint32, MapSpawns*> MapData; //=============================================== + struct GroupModel_Raw + { + uint32 mogpflags; + uint32 GroupWMOID; + + G3D::AABox bounds; + uint32 liquidflags; + std::vector<MeshTriangle> triangles; + std::vector<G3D::Vector3> vertexArray; + class WmoLiquid *liquid; + + GroupModel_Raw() : liquid(0) {} + ~GroupModel_Raw(); + + bool Read(FILE * f); + }; + + struct WorldModel_Raw + { + uint32 RootWMOID; + std::vector<GroupModel_Raw> groupsArray; + + bool Read(const char * path); + }; + class TileAssembler { private: @@ -70,6 +97,7 @@ namespace VMAP G3D::Table<std::string, unsigned int > iUniqueNameIds; unsigned int iCurrentUniqueNameId; MapData mapData; + std::set<std::string> spawnedModelFiles; public: TileAssembler(const std::string& pSrcDirName, const std::string& pDestDirName); @@ -78,6 +106,7 @@ namespace VMAP bool convertWorld2(); bool readMapSpawns(); bool calculateTransformedBound(ModelSpawn &spawn); + void exportGameobjectModels(); bool convertRawFile(const std::string& pModelFilename); void setModelNameFilterMethod(bool (*pFilterMethod)(char *pName)) { iFilterMethod = pFilterMethod; } |
