Skip to content

Tilemap, when read second time, the prefix added #6212

Closed
@wahur666

Description

When loaded a Tiled map editor generated JSON, with the following structure:

kép

Using the following code:

import * as Phaser from "phaser";
import map1 from "./map2.json";

export default class PreloadScene extends Phaser.Scene {
    constructor() {
        super("preload");
    }
    createMap(gameScene) {
        return  gameScene.make.tilemap({key: "map1"});
    }
    preload() {
        this.load.tilemapTiledJSON("map1", map1);
    }
    create() {
        const t1 = window.tileMap = this.createMap(this);
        const t2 = window.tileMap2 = this.createMap(this);
        console.log(t1.objects);
        console.log(t2.objects);
    }
}

The first time the map loaded correctly, with the object layer names, for example: Pads/Pad1

Array(10) [ {}, {}, {}, {}, {}, {}, {}, {}, {}, {} ]
0: Object { name: "Resources", opacity: 1, type: "objectgroup",  }
1: Object { name: "Pads/Pad1", opacity: 1, type: "objectgroup",  }
2: Object { name: "Pads/Pad2", opacity: 1, type: "objectgroup",  }
3: Object { name: "Pads/Pad3", opacity: 1, type: "objectgroup",  }
4: Object { name: "Nuke", opacity: 1, type: "objectgroup",  }
5: Object { name: "Bases/Base1", opacity: 1, type: "objectgroup",  }
6: Object { name: "Bases/Base2", opacity: 1, type: "objectgroup",  }
7: Object { name: "Water", opacity: 1, type: "objectgroup",  }
8: Object { name: "Terrain", opacity: 1, type: "objectgroup",  }
9: Object { name: "Obstacle", opacity: 1, type: "objectgroup",  }

But when it is loaded for the second time, the result is the following:

Array(10) [ {}, {}, {}, {}, {}, {}, {}, {}, {}, {} ]
0: Object { name: "Resources", opacity: 1, type: "objectgroup",  }
1: Object { name: "Pads/Pads/Pad1", opacity: 1, type: "objectgroup",  }
2: Object { name: "Pads/Pads/Pad2", opacity: 1, type: "objectgroup",  }
3: Object { name: "Pads/Pads/Pad3", opacity: 1, type: "objectgroup",  }
4: Object { name: "Nuke", opacity: 1, type: "objectgroup",  }
5: Object { name: "Bases/Bases/Base1", opacity: 1, type: "objectgroup",  }
6: Object { name: "Bases/Bases/Base2", opacity: 1, type: "objectgroup",  }
7: Object { name: "Water", opacity: 1, type: "objectgroup",  }
8: Object { name: "Terrain", opacity: 1, type: "objectgroup",  }
9: Object { name: "Obstacle", opacity: 1, type: "objectgroup",  }

The name is prefixed once more.

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions