Another potential fix for construction
This commit is contained in:
@@ -267,6 +267,9 @@ public final class HouseManager {
|
||||
int diffX = player.getLocation().getX() - r.getBaseLocation().getX();
|
||||
int diffY = player.getLocation().getY() - r.getBaseLocation().getY();
|
||||
int diffZ = player.getLocation().getZ() - r.getBaseLocation().getZ();
|
||||
RegionManager.getRegionCache().remove(r);
|
||||
region.flagInactive();
|
||||
dungeon.flagInactive();
|
||||
region = null;
|
||||
dungeon = null;
|
||||
enter(player, buildingMode, false);
|
||||
@@ -378,7 +381,8 @@ public final class HouseManager {
|
||||
Region.load(from, true);
|
||||
RegionChunk defaultChunk = from.getPlanes()[style.getPlane()].getRegionChunk(1, 0);
|
||||
ZoneBorders borders = DynamicRegion.reserveArea(8, 8);
|
||||
region = new DynamicRegion(-1, borders.getSouthWestX() >> 6, borders.getSouthWestY() >> 6);
|
||||
//region = DynamicRegion.create(from.getRegionId());
|
||||
region = new DynamicRegion(from.getRegionId(), borders.getSouthWestX() >> 6, borders.getSouthWestY() >> 6);
|
||||
region.setBorders(borders);
|
||||
region.setUpdateAllPlanes(true);
|
||||
RegionManager.addRegion(region.getId(), region);
|
||||
|
||||
@@ -3,6 +3,7 @@ package core.game.node.entity.skill.construction;
|
||||
|
||||
import core.game.node.entity.Entity;
|
||||
import core.game.node.entity.player.Player;
|
||||
import core.game.world.map.RegionManager;
|
||||
import core.game.world.map.zone.MapZone;
|
||||
import core.game.world.map.zone.ZoneRestriction;
|
||||
|
||||
@@ -70,6 +71,11 @@ public final class HouseZone extends MapZone {
|
||||
if (e instanceof Player) {
|
||||
Player p = (Player) e;
|
||||
HouseManager.leave(p);
|
||||
if(house.getRegion() == p.getHouseManager().getRegion()){
|
||||
house.getRegion().flagActive();
|
||||
house.getDungeonRegion().flagActive();
|
||||
RegionManager.getRegionCache().remove(house.getRegion());
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user