Comment, add interfaces to chunk classes
This commit is contained in:
		
							parent
							
								
									a8941c5de7
								
							
						
					
					
						commit
						c69caeeab9
					
				| @ -1,5 +1,7 @@ | |||||||
| package electrosphere.client.terrain.cache; | package electrosphere.client.terrain.cache; | ||||||
| 
 | 
 | ||||||
|  | import org.joml.Vector3i; | ||||||
|  | 
 | ||||||
| import electrosphere.server.terrain.manager.ServerTerrainChunk; | import electrosphere.server.terrain.manager.ServerTerrainChunk; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
| @ -50,10 +52,36 @@ public class ChunkData { | |||||||
|         this.voxelWeight = voxelWeight; |         this.voxelWeight = voxelWeight; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * Updates the value of a single voxel in the chunk | ||||||
|  |      * @param localX The local position X | ||||||
|  |      * @param localY The local position Y | ||||||
|  |      * @param localZ The local position Z | ||||||
|  |      * @param weight The weight to set it to | ||||||
|  |      * @param type The type to set the voxel to | ||||||
|  |      */ | ||||||
|     public void updatePosition(int localX, int localY, int localZ, float weight, int type){ |     public void updatePosition(int localX, int localY, int localZ, float weight, int type){ | ||||||
|         voxelWeight[localX][localY][localZ] = weight; |         voxelWeight[localX][localY][localZ] = weight; | ||||||
|         voxelType[localX][localY][localZ] = type; |         voxelType[localX][localY][localZ] = type; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the weight of a voxel at a poisiton | ||||||
|  |      * @param localPosition The local position | ||||||
|  |      * @return The weight of the specified voxel | ||||||
|  |      */ | ||||||
|  |     public float getWeight(Vector3i localPosition){ | ||||||
|  |         return voxelWeight[localPosition.x][localPosition.y][localPosition.z]; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the type of a voxel at a position | ||||||
|  |      * @param localPosition The local position | ||||||
|  |      * @return The type of the specified voxel | ||||||
|  |      */ | ||||||
|  |     public int getType(Vector3i localPosition){ | ||||||
|  |         return voxelType[localPosition.x][localPosition.y][localPosition.z]; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
| } | } | ||||||
|  | |||||||
| @ -3,10 +3,12 @@ package electrosphere.server.terrain.manager; | |||||||
| import java.util.LinkedList; | import java.util.LinkedList; | ||||||
| import java.util.List; | import java.util.List; | ||||||
| 
 | 
 | ||||||
|  | import org.joml.Vector3i; | ||||||
|  | 
 | ||||||
| import electrosphere.server.terrain.models.TerrainModification; | import electrosphere.server.terrain.models.TerrainModification; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Is a single subchunk of terrain on the server |  * Is a single chunk of terrain on the server | ||||||
|  */ |  */ | ||||||
| public class ServerTerrainChunk { | public class ServerTerrainChunk { | ||||||
| 
 | 
 | ||||||
| @ -56,20 +58,7 @@ public class ServerTerrainChunk { | |||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|         // for(int weightX = 0; weightX < SUB_CHUNK_DIMENSION; weightX++){ |  | ||||||
|         //     for(int weightZ = 0; weightZ < SUB_CHUNK_DIMENSION; weightZ++){ |  | ||||||
|         //         weights[weightX][SUB_CHUNK_DIMENSION-1][weightZ] = 1; |  | ||||||
|         //         values[weightX][SUB_CHUNK_DIMENSION-1][weightZ] = 1; |  | ||||||
|         //     } |  | ||||||
|         // } |  | ||||||
|         // for(int weightX = 0; weightX < SUB_CHUNK_DIMENSION; weightX++){ |  | ||||||
|         //     for(int weightZ = 0; weightZ < SUB_CHUNK_DIMENSION; weightZ++){ |  | ||||||
|         //         weights[SUB_CHUNK_DIMENSION-1][weightX][weightZ] = 1; |  | ||||||
|         //         values[SUB_CHUNK_DIMENSION-1][weightX][weightZ] = 1; |  | ||||||
|         //     } |  | ||||||
|         // } |  | ||||||
|         ServerTerrainChunk rVal = new ServerTerrainChunk(worldX, worldY, worldZ, weights, values); |         ServerTerrainChunk rVal = new ServerTerrainChunk(worldX, worldY, worldZ, weights, values); | ||||||
| //        rVal.addModification(new TerrainModification(x, y, 3, 3, 5)); |  | ||||||
|         return rVal; |         return rVal; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| @ -85,6 +74,14 @@ public class ServerTerrainChunk { | |||||||
|         return worldZ; |         return worldZ; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the world position of this terrain chunk as a joml Vector | ||||||
|  |      * @return The vector | ||||||
|  |      */ | ||||||
|  |     public Vector3i getWorldPosition(){ | ||||||
|  |         return new Vector3i(worldX,worldY,worldZ); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     public List<TerrainModification> getModifications() { |     public List<TerrainModification> getModifications() { | ||||||
|         return modifications; |         return modifications; | ||||||
|     } |     } | ||||||
| @ -103,5 +100,23 @@ public class ServerTerrainChunk { | |||||||
|         weights[modification.getVoxelPos().x][modification.getVoxelPos().y][modification.getVoxelPos().z] = modification.getWeight(); |         weights[modification.getVoxelPos().x][modification.getVoxelPos().y][modification.getVoxelPos().z] = modification.getWeight(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the weight of a voxel at a poisiton | ||||||
|  |      * @param localPosition The local position | ||||||
|  |      * @return The weight of the specified voxel | ||||||
|  |      */ | ||||||
|  |     public float getWeight(Vector3i localPosition){ | ||||||
|  |         return weights[localPosition.x][localPosition.y][localPosition.z]; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the type of a voxel at a position | ||||||
|  |      * @param localPosition The local position | ||||||
|  |      * @return The type of the specified voxel | ||||||
|  |      */ | ||||||
|  |     public int getType(Vector3i localPosition){ | ||||||
|  |         return values[localPosition.x][localPosition.y][localPosition.z]; | ||||||
|  |     } | ||||||
|  |      | ||||||
|      |      | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user