forked from MagicBane/Server
Dev cmd updated
This commit is contained in:
@@ -35,30 +35,35 @@ public class GetHeightCmd extends AbstractDevCmd {
|
||||
heightmapZone = Terrain.getNextZoneWithTerrain(currentZone);
|
||||
parentZone = Terrain.getNextZoneWithTerrain(currentZone.parent);
|
||||
|
||||
float currentHeight = Terrain.getWorldHeight(currentZone, playerCharacter.getLoc());
|
||||
float parentHeight = Terrain.getWorldHeight(parentZone, playerCharacter.getLoc());
|
||||
Vector2f childZoneLoc = ZoneManager.worldToTerrainSpace(playerCharacter.getLoc(), heightmapZone);
|
||||
Vector2f childZoneOffset = ZoneManager.worldToZoneOffset(playerCharacter.getLoc(), heightmapZone);
|
||||
Vector2f normalizedOffset = new Vector2f(Math.abs(childZoneOffset.x) / heightmapZone.major_radius,
|
||||
Math.abs(childZoneOffset.y) / heightmapZone.minor_radius);
|
||||
Vector2f parentZoneLoc = ZoneManager.worldToTerrainSpace(playerCharacter.getLoc(), parentZone);
|
||||
|
||||
Vector2f zoneLoc = ZoneManager.worldToTerrainSpace(playerCharacter.getLoc(), heightmapZone);
|
||||
Vector2f zoneOffset = ZoneManager.worldToZoneOffset(playerCharacter.getLoc(), heightmapZone);
|
||||
Vector2f normalizedOffset = new Vector2f(Math.abs(zoneOffset.x) / heightmapZone.major_radius,
|
||||
Math.abs(zoneOffset.y) / heightmapZone.minor_radius);
|
||||
float childHeight = heightmapZone.terrain.getInterpolatedTerrainHeight(childZoneLoc);
|
||||
childHeight = childHeight + heightmapZone.global_height;
|
||||
|
||||
Vector2f gridSquare = heightmapZone.terrain.getTerrainCell(zoneLoc);
|
||||
float parentHeight = parentZone.terrain.getInterpolatedTerrainHeight(parentZoneLoc);
|
||||
parentHeight += parentZone.global_height;
|
||||
|
||||
Vector2f gridSquare = heightmapZone.terrain.getTerrainCell(childZoneLoc);
|
||||
gridSquare.x = (float) Math.floor(gridSquare.x);
|
||||
gridSquare.y = (float) Math.floor(gridSquare.y);
|
||||
|
||||
this.throwbackInfo(playerCharacter, "Current Zone : " + currentZone.zoneName);
|
||||
this.throwbackInfo(playerCharacter, "Heightmap Zone : " + heightmapZone.zoneName);
|
||||
this.throwbackInfo(playerCharacter, "Global Height: " + heightmapZone.global_height);
|
||||
this.throwbackInfo(playerCharacter, "Sea Level: " + heightmapZone.seaLevel);
|
||||
this.throwbackInfo(playerCharacter, "Parent Zone: " + parentZone.zoneName);
|
||||
|
||||
this.throwbackInfo(playerCharacter, "Grid : " + "[" + gridSquare.x + "]" + "[" + gridSquare.y + "]");
|
||||
this.throwbackInfo(playerCharacter, "Offset: " + "[" + normalizedOffset.x + "]" + "[" + normalizedOffset.y + "]");
|
||||
this.throwbackInfo(playerCharacter, "Blend: " + heightmapZone.terrain.terrainBlend(zoneOffset));
|
||||
this.throwbackInfo(playerCharacter, "Height returned: " + Math.ceil(currentHeight));
|
||||
this.throwbackInfo(playerCharacter, "Blend: " + heightmapZone.terrain.terrainBlend(childZoneOffset));
|
||||
this.throwbackInfo(playerCharacter, "Height returned: " + Math.ceil(childHeight));
|
||||
|
||||
this.throwbackInfo(playerCharacter, "------------");
|
||||
this.throwbackInfo(playerCharacter, "Parent : " + parentZone.zoneName);
|
||||
this.throwbackInfo(playerCharacter, "Height returned : " + Math.ceil(parentHeight));
|
||||
|
||||
this.throwbackInfo(playerCharacter, "Child Height: " + Math.ceil(childHeight));
|
||||
this.throwbackInfo(playerCharacter, "Parent Height : " + Math.ceil(parentHeight));
|
||||
this.throwbackInfo(playerCharacter, "------------");
|
||||
}
|
||||
|
||||
|
||||
@@ -291,14 +291,12 @@ public enum ZoneManager {
|
||||
public static Vector2f worldToZoneOffset(Vector3fImmutable worldLoc,
|
||||
Zone zone) {
|
||||
|
||||
Vector2f localCoords;
|
||||
Vector2f zoneOrigin;
|
||||
Vector2f zoneLoc;
|
||||
|
||||
zoneOrigin = new Vector2f(zone.getLoc().x, zone.getLoc().z);
|
||||
localCoords = new Vector2f(worldLoc.x, worldLoc.z);
|
||||
localCoords = localCoords.subtract(zoneOrigin);
|
||||
zoneLoc = new Vector2f(worldLoc.x, worldLoc.z).subtract(zone.getLoc().x, zone.getLoc().z);
|
||||
zoneLoc.y *= -1;
|
||||
|
||||
return localCoords;
|
||||
return zoneLoc;
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user