From aade36860c373268857ca821c14a13f38c880b1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Wed, 23 Apr 2014 02:27:40 +0200 Subject: Begin the transformation! Nuke all the things. --- logic/MinecraftVersion.h | 45 ++++++++++++++++++--------------------------- 1 file changed, 18 insertions(+), 27 deletions(-) (limited to 'logic/MinecraftVersion.h') diff --git a/logic/MinecraftVersion.h b/logic/MinecraftVersion.h index 504381a8..6cbfebbe 100644 --- a/logic/MinecraftVersion.h +++ b/logic/MinecraftVersion.h @@ -17,6 +17,7 @@ #include "BaseVersion.h" #include +#include struct MinecraftVersion : public BaseVersion { @@ -29,13 +30,8 @@ struct MinecraftVersion : public BaseVersion /// The URL that this version will be downloaded from. maybe. QString download_url; - /// This version's type. Used internally to identify what kind of version this is. - enum VersionType - { - OneSix, - Legacy, - Nostalgia - } type; + /// extra features enabled for this Minecraft version. Mostly for compatibility + QSet features; /// is this the latest version? bool is_latest = false; @@ -47,6 +43,11 @@ struct MinecraftVersion : public BaseVersion QString m_descriptor; + bool usesLegacyLauncher() + { + return features.contains("legacy"); + } + virtual QString descriptor() { return m_descriptor; @@ -59,31 +60,21 @@ struct MinecraftVersion : public BaseVersion virtual QString typeString() const { - QStringList pre_final; - if (is_latest == true) + if (is_latest && is_snapshot) { - pre_final.append("Latest"); + return QObject::tr("Latest snapshot"); } - switch (type) + else if(is_latest) { - case OneSix: - pre_final.append("OneSix"); - break; - case Legacy: - pre_final.append("Legacy"); - break; - case Nostalgia: - pre_final.append("Nostalgia"); - break; - - default: - pre_final.append(QString("Type(%1)").arg(type)); - break; + return QObject::tr("Latest release"); + } + else if(is_snapshot) + { + return QObject::tr("Old snapshot"); } - if (is_snapshot == true) + else { - pre_final.append("Snapshot"); + return QObject::tr("Regular release"); } - return pre_final.join(' '); } }; -- cgit v1.2.3