Application,Game{Data,Objects}: support 0.11 materials.

This commit is contained in:
Guillaume Jacquemin 2024-07-15 15:30:32 +02:00
parent ce2a8df6a1
commit 380f77cc80
Signed by: williamjcm
SSH key fingerprint: SHA256:AYLOg+iTV0ElElnlu4vqM4edFazVdRiuQB0Y5LoKc4A
4 changed files with 30 additions and 34 deletions

View file

@ -125,7 +125,6 @@ class Application: public Platform::Sdl2Application, public efsw::FileWatchListe
void drawGeneralInfo();
void drawResearchInventory();
void drawMaterialRow(Containers::StringView name, std::int32_t tier, GameData::MaterialID id);
void drawUnavailableMaterialRow(Containers::StringView name, std::int32_t tier);
void drawMassManager();
void drawDeleteMassPopup(int mass_index);
void drawDeleteStagedMassPopup(Containers::StringView filename);

View file

@ -313,7 +313,7 @@ Application::drawResearchInventory() {
drawMaterialRow("Lunarite", 4, GameData::MaterialID::Lunarite);
drawMaterialRow("Asterite", 5, GameData::MaterialID::Asterite);
drawMaterialRow("Hallite fragma", 6, GameData::MaterialID::HalliteFragma);
drawUnavailableMaterialRow("Unnoctinium", 7);
drawMaterialRow("Unnoctinium", 7, GameData::MaterialID::Unnoctinium);
ImGui::TableNextRow(ImGuiTableRowFlags_Headers);
ImGui::TableSetColumnIndex(1);
@ -325,19 +325,19 @@ Application::drawResearchInventory() {
drawMaterialRow("Soldus", 4, GameData::MaterialID::Soldus);
drawMaterialRow("Synthesized N", 5, GameData::MaterialID::SynthesisedN);
drawMaterialRow("Nanoc", 6, GameData::MaterialID::Nanoc);
drawUnavailableMaterialRow("Abyssillite", 7);
drawMaterialRow("Abyssillite", 7, GameData::MaterialID::Abyssillite);
ImGui::TableNextRow(ImGuiTableRowFlags_Headers);
ImGui::TableSetColumnIndex(1);
ImGui::TextUnformatted("Architect materials");
drawMaterialRow("Alcarbonite", 1, GameData::MaterialID::Alcarbonite);
drawMaterialRow("Keriphene", 2, GameData::MaterialID::Keriphene);
drawMaterialRow("Nitinol-CM", 3, GameData::MaterialID::NitinolCM);
drawMaterialRow("Quarkium", 4, GameData::MaterialID::Quarkium);
drawMaterialRow("Alterene", 5, GameData::MaterialID::Alterene);
drawMaterialRow("Cosmium", 6, GameData::MaterialID::Cosmium);
drawUnavailableMaterialRow("Purified quarkium", 7);
drawMaterialRow("Alcarbonite", 1, GameData::MaterialID::Alcarbonite);
drawMaterialRow("Keriphene", 2, GameData::MaterialID::Keriphene);
drawMaterialRow("Nitinol-CM", 3, GameData::MaterialID::NitinolCM);
drawMaterialRow("Quarkium", 4, GameData::MaterialID::Quarkium);
drawMaterialRow("Alterene", 5, GameData::MaterialID::Alterene);
drawMaterialRow("Cosmium", 6, GameData::MaterialID::Cosmium);
drawMaterialRow("Purified quarkium", 7, GameData::MaterialID::PurifiedQuarkium);
ImGui::TableNextRow(ImGuiTableRowFlags_Headers);
ImGui::TableSetColumnIndex(1);
@ -349,7 +349,7 @@ Application::drawResearchInventory() {
drawMaterialRow("Mineral exoskeletology", 4, GameData::MaterialID::MineralExoskeletology);
drawMaterialRow("Carbonized skin", 5, GameData::MaterialID::CarbonisedSkin);
drawMaterialRow("Isolated void particle", 6, GameData::MaterialID::IsolatedVoidParticle);
drawUnavailableMaterialRow("Weaponised physiology", 7);
drawMaterialRow("Weaponised physiology", 7, GameData::MaterialID::WeaponisedPhysiology);
ImGui::EndTable();
}
@ -382,17 +382,6 @@ Application::drawMaterialRow(Containers::StringView name, std::int32_t tier, Gam
}
}
void
Application::drawUnavailableMaterialRow(Containers::StringView name, std::int32_t tier) {
ImGui::TableNextRow();
ImGui::TableSetColumnIndex(0);
ImGui::Text("T%i", tier);
ImGui::TableSetColumnIndex(1);
ImGui::TextUnformatted(name.cbegin(), name.cend());
ImGui::TableSetColumnIndex(2);
ImGui::TextDisabled("Unavailable as of game version " SAVETOOL_SUPPORTED_GAME_VERSION);
}
void
Application::drawMassManager() {
if(!_massManager) {

View file

@ -25,6 +25,7 @@ enum MaterialID : std::int32_t {
Lunarite = 0xC3503,
Asterite = 0xC3504,
HalliteFragma = 0xC3505,
Unnoctinium = 0xC3506,
Ednil = 0xC350A,
Nuflalt = 0xC350B,
@ -32,13 +33,15 @@ enum MaterialID : std::int32_t {
Soldus = 0xC350D,
SynthesisedN = 0xC350E,
Nanoc = 0xC350F,
Abyssillite = 0xC3510,
Alcarbonite = 0xC3514,
Keriphene = 0xC3515,
NitinolCM = 0xC3516,
Quarkium = 0xC3517,
Alterene = 0xC3518,
Cosmium = 0xC3519,
Alcarbonite = 0xC3514,
Keriphene = 0xC3515,
NitinolCM = 0xC3516,
Quarkium = 0xC3517,
Alterene = 0xC3518,
Cosmium = 0xC3519,
PurifiedQuarkium = 0xC351A,
MixedComposition = 0xDBBA0,
VoidResidue = 0xDBBA1,
@ -46,6 +49,7 @@ enum MaterialID : std::int32_t {
MineralExoskeletology = 0xDBBA3,
CarbonisedSkin = 0xDBBA4,
IsolatedVoidParticle = 0xDBBA5,
WeaponisedPhysiology = 0xDBBA6,
};
}

View file

@ -141,6 +141,7 @@ Profile::refreshValues() {
_materials[GameData::MaterialID::Lunarite] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Lunarite);
_materials[GameData::MaterialID::Asterite] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Asterite);
_materials[GameData::MaterialID::HalliteFragma] = getResource(PROFILE_MATERIAL, GameData::MaterialID::HalliteFragma);
_materials[GameData::MaterialID::Unnoctinium] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Unnoctinium);
_materials[GameData::MaterialID::Ednil] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Ednil);
_materials[GameData::MaterialID::Nuflalt] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Nuflalt);
@ -148,13 +149,15 @@ Profile::refreshValues() {
_materials[GameData::MaterialID::Soldus] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Soldus);
_materials[GameData::MaterialID::SynthesisedN] = getResource(PROFILE_MATERIAL, GameData::MaterialID::SynthesisedN);
_materials[GameData::MaterialID::Nanoc] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Nanoc);
_materials[GameData::MaterialID::Abyssillite] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Abyssillite);
_materials[GameData::MaterialID::Alcarbonite] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Alcarbonite);
_materials[GameData::MaterialID::Keriphene] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Keriphene);
_materials[GameData::MaterialID::NitinolCM] = getResource(PROFILE_MATERIAL, GameData::MaterialID::NitinolCM);
_materials[GameData::MaterialID::Quarkium] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Quarkium);
_materials[GameData::MaterialID::Alterene] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Alterene);
_materials[GameData::MaterialID::Cosmium] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Cosmium);
_materials[GameData::MaterialID::Alcarbonite] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Alcarbonite);
_materials[GameData::MaterialID::Keriphene] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Keriphene);
_materials[GameData::MaterialID::NitinolCM] = getResource(PROFILE_MATERIAL, GameData::MaterialID::NitinolCM);
_materials[GameData::MaterialID::Quarkium] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Quarkium);
_materials[GameData::MaterialID::Alterene] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Alterene);
_materials[GameData::MaterialID::Cosmium] = getResource(PROFILE_MATERIAL, GameData::MaterialID::Cosmium);
_materials[GameData::MaterialID::PurifiedQuarkium] = getResource(PROFILE_MATERIAL, GameData::MaterialID::PurifiedQuarkium);
_materials[GameData::MaterialID::MixedComposition] = getResource(PROFILE_QUARK_DATA, GameData::MaterialID::MixedComposition);
_materials[GameData::MaterialID::VoidResidue] = getResource(PROFILE_QUARK_DATA, GameData::MaterialID::VoidResidue);
@ -162,6 +165,7 @@ Profile::refreshValues() {
_materials[GameData::MaterialID::MineralExoskeletology] = getResource(PROFILE_QUARK_DATA, GameData::MaterialID::MineralExoskeletology);
_materials[GameData::MaterialID::CarbonisedSkin] = getResource(PROFILE_QUARK_DATA, GameData::MaterialID::CarbonisedSkin);
_materials[GameData::MaterialID::IsolatedVoidParticle] = getResource(PROFILE_QUARK_DATA, GameData::MaterialID::IsolatedVoidParticle);
_materials[GameData::MaterialID::WeaponisedPhysiology] = getResource(PROFILE_QUARK_DATA, GameData::MaterialID::WeaponisedPhysiology);
_valid = true;
}