aboutsummaryrefslogtreecommitdiff
path: root/src/tools/extractor_common
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2018-03-24 20:07:05 +0100
committerShauren <shauren.trinity@gmail.com>2018-03-25 19:28:36 +0300
commit82bf263f924144c7fb011acc8dcab3fe4d8c631b (patch)
tree7a50dda4bd99a8ea1b57e11ffc4ae0902e951b81 /src/tools/extractor_common
parent58e9bc0008214080047b23f805c0f0aed4a4f406 (diff)
Tools/Mapextractor: Implemented liquid object detection
Diffstat (limited to 'src/tools/extractor_common')
-rw-r--r--src/tools/extractor_common/ExtractorDB2LoadInfo.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/tools/extractor_common/ExtractorDB2LoadInfo.h b/src/tools/extractor_common/ExtractorDB2LoadInfo.h
index c088ac663ec..fccfc924205 100644
--- a/src/tools/extractor_common/ExtractorDB2LoadInfo.h
+++ b/src/tools/extractor_common/ExtractorDB2LoadInfo.h
@@ -70,6 +70,45 @@ struct GameobjectDisplayInfoLoadInfo
}
};
+struct LiquidMaterialLoadInfo
+{
+ static DB2FileLoadInfo const* Instance()
+ {
+ static DB2FieldMeta const fields[] =
+ {
+ { false, FT_INT, "ID" },
+ { true, FT_BYTE, "LVF" },
+ { true, FT_BYTE, "Flags" },
+ };
+ static char const* types = "bb";
+ static uint8 const arraySizes[2] = { 1, 1 };
+ static DB2Meta meta(-1, 2, 0x62BE0340, types, arraySizes, -1);
+ static DB2FileLoadInfo const loadInfo(&fields[0], std::extent<decltype(fields)>::value, &meta);
+ return &loadInfo;
+ }
+};
+
+struct LiquidObjectLoadInfo
+{
+ static DB2FileLoadInfo const* Instance()
+ {
+ static DB2FieldMeta const fields[] =
+ {
+ { false, FT_INT, "ID" },
+ { false, FT_FLOAT, "FlowDirection" },
+ { false, FT_FLOAT, "FlowSpeed" },
+ { true, FT_SHORT, "LiquidTypeID" },
+ { false, FT_BYTE, "Fishable" },
+ { false, FT_BYTE, "Reflection" },
+ };
+ static char const* types = "ffhbb";
+ static uint8 const arraySizes[5] = { 1, 1, 1, 1, 1 };
+ static DB2Meta meta(-1, 5, 0xACC168A6, types, arraySizes, -1);
+ static DB2FileLoadInfo const loadInfo(&fields[0], std::extent<decltype(fields)>::value, &meta);
+ return &loadInfo;
+ }
+};
+
struct LiquidTypeLoadInfo
{
static DB2FileLoadInfo const* Instance()