From e10a138939b617f033e39af0ec1b00908e5d0702 Mon Sep 17 00:00:00 2001 From: T1ti <40864460+T1ti@users.noreply.github.com> Date: Sat, 9 Mar 2024 05:12:42 +0100 Subject: [PATCH] polish mapdb class --- src/noggit/DBC.h | 16 ++++++++-- .../Ui/MapCreationWizard.cpp | 32 +++++++++---------- 2 files changed, 30 insertions(+), 18 deletions(-) diff --git a/src/noggit/DBC.h b/src/noggit/DBC.h index 1cef7845..27bd8115 100755 --- a/src/noggit/DBC.h +++ b/src/noggit/DBC.h @@ -48,10 +48,22 @@ public: static const size_t MapID = 0; // uint static const size_t InternalName = 1; // string static const size_t AreaType = 2; // uint - static const size_t IsBattleground = 4; // uint + static const size_t Flags = 3; // uint + static const size_t IsBattleground = 4; // uint static const size_t Name = 5; // loc - + static const size_t AreaTableID = 22; // uint + static const size_t MapDescriptionAlliance = 23; // loc + static const size_t MapDescriptionHorde = 40; // loc static const size_t LoadingScreen = 57; // uint [LoadingScreen] + static const size_t minimapIconScale = 58; // uint [LoadingScreen] + static const size_t corpseMapID = 59; // iRefID Points to column 1, -1 if none + static const size_t corpseX = 60; // Float The X - Coord of the instance entrance + static const size_t corpseY = 61; // Float The Y - Coord of the instance entrance + static const size_t TimeOfDayOverride = 62; // Integer Set to - 1 for everything but Orgrimmar and Dalaran arena.For those, the time of day will change to this. + static const size_t ExpansionID = 63; // Integer Vanilla : 0, BC : 1, WotLK : 2 + static const size_t RaidOffset = 64; // Integer + static const size_t NumberOfPlayers = 65; // Integer Used for reset time? + static std::string getMapName(int pMapID); static int findMapName(const std::string& map_name); }; diff --git a/src/noggit/ui/tools/MapCreationWizard/Ui/MapCreationWizard.cpp b/src/noggit/ui/tools/MapCreationWizard/Ui/MapCreationWizard.cpp index 69e0eee4..751f3bbf 100755 --- a/src/noggit/ui/tools/MapCreationWizard/Ui/MapCreationWizard.cpp +++ b/src/noggit/ui/tools/MapCreationWizard/Ui/MapCreationWizard.cpp @@ -641,24 +641,24 @@ void MapCreationWizard::saveCurrentEntry() // Save Map.dbc record DBCFile::Record record = _is_new_record ? gMapDB.addRecord(_cur_map_id) : gMapDB.getByID(_cur_map_id); - record.writeString(1, _directory->text().toStdString()); + record.writeString(MapDB::InternalName, _directory->text().toStdString()); - record.write(2, _instance_type->itemData(_instance_type->currentIndex()).toInt()); - record.write(3, _sort_by_size_cat->isChecked() ? 16 : 0 ); - _map_name->toRecord(record, 5); + record.write(MapDB::AreaType, _instance_type->itemData(_instance_type->currentIndex()).toInt()); + record.write(MapDB::Flags, _sort_by_size_cat->isChecked() ? 16 : 0 ); + _map_name->toRecord(record, MapDB::Name); - record.write(22, _area_table_id->value()); - _map_desc_alliance->toRecord(record, 23); - _map_desc_horde->toRecord(record, 40); - record.write(57, _loading_screen->value()); - record.write(58, static_cast(_minimap_icon_scale->value())); - record.write(59, _corpse_map_id->itemData(_corpse_map_id->currentIndex()).toInt()); - record.write(60, static_cast(_corpse_x->value())); - record.write(61, static_cast(_corpse_y->value())); - record.write(62, _time_of_day_override->value()); - record.write(63, _expansion_id->itemData(_expansion_id->currentIndex()).toInt()); - record.write(64, _raid_offset->value()); - record.write(65, _max_players->value()); + record.write(MapDB::AreaTableID, _area_table_id->value()); + _map_desc_alliance->toRecord(record, MapDB::MapDescriptionAlliance); + _map_desc_horde->toRecord(record, MapDB::MapDescriptionHorde); + record.write(MapDB::LoadingScreen, _loading_screen->value()); + record.write(MapDB::minimapIconScale, static_cast(_minimap_icon_scale->value())); + record.write(MapDB::corpseMapID, _corpse_map_id->itemData(_corpse_map_id->currentIndex()).toInt()); + record.write(MapDB::corpseX, static_cast(_corpse_x->value())); + record.write(MapDB::corpseY, static_cast(_corpse_y->value())); + record.write(MapDB::TimeOfDayOverride, _time_of_day_override->value()); + record.write(MapDB::ExpansionID, _expansion_id->itemData(_expansion_id->currentIndex()).toInt()); + record.write(MapDB::RaidOffset, _raid_offset->value()); + record.write(MapDB::NumberOfPlayers, _max_players->value()); gMapDB.save();