More map editor work
This commit is contained in:
@ -56,6 +56,7 @@ export default class MapUpdateEvent extends BaseEvent {
|
||||
return callback(null)
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
await mapRepository.getEntityManager().populate(map, ['*'])
|
||||
|
||||
// Validation logic remains the same
|
||||
@ -72,9 +73,9 @@ export default class MapUpdateEvent extends BaseEvent {
|
||||
data.placedMapObjects = data.placedMapObjects.filter((obj) => obj.positionX >= 0 && obj.positionX < data.width && obj.positionY >= 0 && obj.positionY < data.height)
|
||||
|
||||
// Clear existing collections
|
||||
map.mapEventTiles.removeAll()
|
||||
map.placedMapObjects.removeAll()
|
||||
map.mapEffects.removeAll()
|
||||
map.getMapEventTiles().removeAll()
|
||||
map.getPlacedMapObjects().removeAll()
|
||||
map.getMapEffects().removeAll()
|
||||
|
||||
// Create and add new map event tiles
|
||||
for (const tile of data.mapEventTiles) {
|
||||
@ -90,7 +91,7 @@ export default class MapUpdateEvent extends BaseEvent {
|
||||
mapEventTile.setTeleport(teleport)
|
||||
}
|
||||
|
||||
map.mapEventTiles.add(mapEventTile)
|
||||
// map.mapEventTiles.add(mapEventTile)
|
||||
}
|
||||
|
||||
// Create and add new map objects
|
||||
@ -108,15 +109,19 @@ export default class MapUpdateEvent extends BaseEvent {
|
||||
// Create and add new map effects
|
||||
for (const effect of data.mapEffects) {
|
||||
const mapEffect = new MapEffect().setEffect(effect.effect).setStrength(effect.strength).setMap(map)
|
||||
map.mapEffects.add(mapEffect)
|
||||
// map.mapEffects.add(mapEffect)
|
||||
}
|
||||
|
||||
console.log(map.getPlacedMapObjects().count())
|
||||
|
||||
// Update map properties
|
||||
// map.setEntityManager(mapRepository.getEntityManager())
|
||||
await map.setName(data.name).setWidth(data.width).setHeight(data.height).setTiles(data.tiles).setPvp(data.pvp).setUpdatedAt(new Date()).save()
|
||||
|
||||
// Reload map from database to get fresh data
|
||||
mapRepository = new MapRepository()
|
||||
map = await mapRepository.getById(data.mapId)
|
||||
// @ts-ignore
|
||||
await mapRepository.getEntityManager().populate(map!, ['*'])
|
||||
|
||||
if (!map) {
|
||||
|
Reference in New Issue
Block a user