Event_object_graphics_pointers are now read for explicit indexes.
This commit is contained in:
parent
dae8f7deaf
commit
13b6f8f6e3
2 changed files with 8 additions and 6 deletions
|
@ -337,7 +337,7 @@ QMap<QString, QString> ParseUtil::readNamedIndexCArray(QString filename, QString
|
||||||
QRegularExpression re_text(QString("\\b%1\\b\\s*\\[?\\s*\\]?\\s*=\\s*\\{([^\\}]*)\\}").arg(label));
|
QRegularExpression re_text(QString("\\b%1\\b\\s*\\[?\\s*\\]?\\s*=\\s*\\{([^\\}]*)\\}").arg(label));
|
||||||
QString body = re_text.match(text).captured(1).replace(QRegularExpression("\\s*"), "");
|
QString body = re_text.match(text).captured(1).replace(QRegularExpression("\\s*"), "");
|
||||||
|
|
||||||
QRegularExpression re("\\[(?<index>[A-Za-z1-9_]*)\\]=(?<value>[A-Za-z1-9_]*)");
|
QRegularExpression re("\\[(?<index>[A-Za-z1-9_]*)\\]=(?<value>&?[A-Za-z1-9_]*)");
|
||||||
QRegularExpressionMatchIterator iter = re.globalMatch(body);
|
QRegularExpressionMatchIterator iter = re.globalMatch(body);
|
||||||
|
|
||||||
while (iter.hasNext()) {
|
while (iter.hasNext()) {
|
||||||
|
|
|
@ -1561,8 +1561,9 @@ void Project::loadEventPixmaps(QList<Event*> objects) {
|
||||||
|
|
||||||
QMap<QString, int> constants = getEventObjGfxConstants();
|
QMap<QString, int> constants = getEventObjGfxConstants();
|
||||||
|
|
||||||
QStringList pointers = parser.readCArray("src/data/field_event_obj/event_object_graphics_info_pointers.h", "gEventObjectGraphicsInfoPointers");
|
// QStringList pointers = parser.readCArray("src/data/field_event_obj/event_object_graphics_info_pointers.h", "gEventObjectGraphicsInfoPointers");
|
||||||
|
QMap<QString, QString> pointerHash = parser.readNamedIndexCArray("src/data/field_event_obj/event_object_graphics_info_pointers.h", "gEventObjectGraphicsInfoPointers");
|
||||||
|
|
||||||
for (Event *object : objects) {
|
for (Event *object : objects) {
|
||||||
if (!object->pixmap.isNull()) {
|
if (!object->pixmap.isNull()) {
|
||||||
continue;
|
continue;
|
||||||
|
@ -1585,9 +1586,10 @@ void Project::loadEventPixmaps(QList<Event*> objects) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event_type == EventType::Object) {
|
if (event_type == EventType::Object) {
|
||||||
int sprite_id = constants.value(object->get("sprite"));
|
// int sprite_id = constants.value(object->get("sprite"));
|
||||||
|
// QString info_label = pointers.value(sprite_id).replace("&", "");
|
||||||
QString info_label = pointers.value(sprite_id).replace("&", "");
|
|
||||||
|
QString info_label = pointerHash[object->get("sprite")].replace("&", "");
|
||||||
QStringList gfx_info = parser.readCArray("src/data/field_event_obj/event_object_graphics_info.h", info_label);
|
QStringList gfx_info = parser.readCArray("src/data/field_event_obj/event_object_graphics_info.h", info_label);
|
||||||
QString pic_label = gfx_info.value(14);
|
QString pic_label = gfx_info.value(14);
|
||||||
QString dimensions_label = gfx_info.value(11);
|
QString dimensions_label = gfx_info.value(11);
|
||||||
|
|
Loading…
Reference in a new issue