Support map JSON data

This commit is contained in:
Marcus Huderle
2019-02-01 11:43:25 -06:00
committed by huderlem
parent d2508b1f1d
commit 94686e6f0a
12 changed files with 625 additions and 890 deletions

View File

@@ -4,6 +4,7 @@
#include <QString>
#include <QPixmap>
#include <QMap>
#include <QJsonObject>
class EventType
{
@@ -64,13 +65,13 @@ public:
static Event* createNewHiddenItemEvent();
static Event* createNewSecretBaseEvent();
QString buildObjectEventMacro(int);
QString buildWarpEventMacro(QMap<QString, QString>*);
QString buildTriggerEventMacro();
QString buildWeatherTriggerEventMacro();
QString buildSignEventMacro();
QString buildHiddenItemEventMacro();
QString buildSecretBaseEventMacro();
QJsonObject buildObjectEventJSON();
QJsonObject buildWarpEventJSON(QMap<QString, QString>*);
QJsonObject buildTriggerEventJSON();
QJsonObject buildWeatherTriggerEventJSON();
QJsonObject buildSignEventJSON();
QJsonObject buildHiddenItemEventJSON();
QJsonObject buildSecretBaseEventJSON();
void setPixmapFromSpritesheet(QImage, int, int);
int getPixelX();
int getPixelY();

View File

@@ -24,18 +24,13 @@ public:
QString name;
QString constantName;
QString group_num;
QString layout_label;
QString events_label;
QString scripts_label;
QString connections_label;
QString song;
QString layout_id;
QString layoutId;
QString location;
QString requiresFlash;
QString isFlyable;
QString weather;
QString type;
QString unknown;
QString show_location;
QString allowRunning;
QString allowBiking;

View File

@@ -10,14 +10,12 @@
class MapLayout {
public:
MapLayout() {}
int index;
static QString layoutConstantFromName(QString mapName);
QString id;
QString name;
QString label;
QString width;
QString height;
QString border_label;
QString border_path;
QString blockdata_label;
QString blockdata_path;
QString tileset_primary_label;
QString tileset_secondary_label;
@@ -31,11 +29,6 @@ public:
Blockdata *cached_collision = nullptr;
Blockdata *cached_border = nullptr;
bool has_unsaved_changes = false;
public:
static QString getNameFromLabel(QString label) {
// ASSUMPTION: strip off "_Layout" from layout label. Directories in 'data/layouts/' must be well-formed.
return label.replace(label.lastIndexOf("_Layout"), label.length(), "");
}
};
#endif // MAPLAYOUT_H