aboutsummaryrefslogtreecommitdiff
path: root/src/tools/vmap4_extractor
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2020-05-21 22:15:58 +0200
committerShauren <shauren.trinity@gmail.com>2020-05-21 22:15:58 +0200
commit4d69cc1c567180b408ddbadb9edf26859cf4c006 (patch)
treea40d455e3b460861541f1d1d3f44943d07b9fbd1 /src/tools/vmap4_extractor
parent92a289e45518e6a4c3a34fed6d28f09002e53352 (diff)
Core/Misc: GCC build and warning fixes
Diffstat (limited to 'src/tools/vmap4_extractor')
-rw-r--r--src/tools/vmap4_extractor/gameobject_extract.cpp11
-rw-r--r--src/tools/vmap4_extractor/model.cpp9
-rw-r--r--src/tools/vmap4_extractor/vec3d.h17
3 files changed, 10 insertions, 27 deletions
diff --git a/src/tools/vmap4_extractor/gameobject_extract.cpp b/src/tools/vmap4_extractor/gameobject_extract.cpp
index f96c0fd2c08..6575f5129dd 100644
--- a/src/tools/vmap4_extractor/gameobject_extract.cpp
+++ b/src/tools/vmap4_extractor/gameobject_extract.cpp
@@ -62,13 +62,6 @@ bool ExtractSingleModel(std::string& fname)
extern std::shared_ptr<CASC::Storage> CascStorage;
-enum ModelTypes : uint32
-{
- MODEL_MD20 = '02DM',
- MODEL_MD21 = '12DM',
- MODEL_WMO = 'MVER'
-};
-
bool GetHeaderMagic(std::string const& fileName, uint32* magic)
{
*magic = 0;
@@ -125,12 +118,12 @@ void ExtractGameobjectModels()
continue;
uint8 isWmo = 0;
- if (header == MODEL_WMO)
+ if (!memcmp(&header, "REVM", 4))
{
isWmo = 1;
result = ExtractSingleWmo(fileName);
}
- else if (header == MODEL_MD20 || header == MODEL_MD21)
+ else if (!memcmp(&header, "MD20", 4) || !memcmp(&header, "MD21", 4))
result = ExtractSingleModel(fileName);
else
ASSERT(false, "%s header: %d - %c%c%c%c", fileName.c_str(), header, (header >> 24) & 0xFF, (header >> 16) & 0xFF, (header >> 8) & 0xFF, header & 0xFF);
diff --git a/src/tools/vmap4_extractor/model.cpp b/src/tools/vmap4_extractor/model.cpp
index 81f1e332d75..3dd206968f3 100644
--- a/src/tools/vmap4_extractor/model.cpp
+++ b/src/tools/vmap4_extractor/model.cpp
@@ -29,9 +29,8 @@
extern std::shared_ptr<CASC::Storage> CascStorage;
-Model::Model(std::string &filename) : filename(filename), vertices(0), indices(0)
+Model::Model(std::string &filename) : filename(filename), header(), vertices(nullptr), indices(nullptr)
{
- memset(&header, 0, sizeof(header));
}
bool Model::open()
@@ -50,7 +49,7 @@ bool Model::open()
uint32 m2start = 0;
char const* ptr = f.getBuffer();
- while (m2start + 4 < f.getSize() && *reinterpret_cast<uint32 const*>(ptr) != '02DM')
+ while (m2start + 4 < f.getSize() && memcmp(ptr, "MD20", 4) != 0)
{
++m2start;
++ptr;
@@ -154,7 +153,7 @@ Vec3D fixCoordSystem(Vec3D const& v)
void Doodad::Extract(ADT::MDDF const& doodadDef, char const* ModelInstName, uint32 mapID, uint32 originalMapId, FILE* pDirfile, std::vector<ADTOutputCache>* dirfileCache)
{
- char tempname[512];
+ char tempname[1036];
sprintf(tempname, "%s/%s", szWorkDirWmo, ModelInstName);
FILE* input = fopen(tempname, "r+b");
@@ -262,7 +261,7 @@ void Doodad::ExtractSet(WMODoodadData const& doodadData, ADT::MODF const& wmo, b
}
}
- char tempname[512];
+ char tempname[1036];
sprintf(tempname, "%s/%s", szWorkDirWmo, ModelInstName);
FILE* input = fopen(tempname, "r+b");
if (!input)
diff --git a/src/tools/vmap4_extractor/vec3d.h b/src/tools/vmap4_extractor/vec3d.h
index 2c93018091c..8bb822d9d4c 100644
--- a/src/tools/vmap4_extractor/vec3d.h
+++ b/src/tools/vmap4_extractor/vec3d.h
@@ -28,14 +28,9 @@ public:
Vec3D(float x0 = 0.0f, float y0 = 0.0f, float z0 = 0.0f) : x(x0), y(y0), z(z0) {}
- Vec3D(const Vec3D& v) : x(v.x), y(v.y), z(v.z) {}
+ Vec3D(const Vec3D& v) = default;
- Vec3D& operator= (const Vec3D &v) {
- x = v.x;
- y = v.y;
- z = v.z;
- return *this;
- }
+ Vec3D& operator= (const Vec3D &v) = default;
Vec3D operator+ (const Vec3D &v) const
{
@@ -157,13 +152,9 @@ public:
Vec2D(float x0 = 0.0f, float y0 = 0.0f) : x(x0), y(y0) {}
- Vec2D(const Vec2D& v) : x(v.x), y(v.y) {}
+ Vec2D(const Vec2D& v) = default;
- Vec2D& operator= (const Vec2D &v) {
- x = v.x;
- y = v.y;
- return *this;
- }
+ Vec2D& operator= (const Vec2D &v) = default;
Vec2D operator+ (const Vec2D &v) const
{