private void OnPlayerPositionUpdated(GameEvents.PlayerPositionUpdateEvent e) { previousPlayerPos = currentPlayerPos; // check for new position currentPlayerPos.x = SimplexNoise.Noise.FastFloor(e.PlayerPosition.x / Chunk.chunkSize) * Chunk.chunkSize; currentPlayerPos.y = SimplexNoise.Noise.FastFloor(e.PlayerPosition.y / Chunk.chunkSize) * Chunk.chunkSize; currentPlayerPos.z = SimplexNoise.Noise.FastFloor(e.PlayerPosition.z / Chunk.chunkSize) * Chunk.chunkSize; if (currentPlayerPos.x != previousPlayerPos.x || currentPlayerPos.z != previousPlayerPos.z) { ProcessChunks(currentPlayerPos); //StartCoroutine(RemoveChunks()); } }
private void PlayerPosUpdated(GameEvents.PlayerPositionUpdateEvent e) { DebugPlayerPos = mTerrainTileMap.WorldToCell(e.WorldPosition); DebugCurrentTile = mTerrainTileMap.GetTile(DebugPlayerPos); if (DebugCurrentTile != null) { // LOL UGH switch (DebugCurrentTile.name) { case "grass_0": DebugCurrentBiome = eBiomeID.Forest; break; case "grass_1": DebugCurrentBiome = eBiomeID.Plains; break; case "grass_2": DebugCurrentBiome = eBiomeID.Jungle; break; case "sand_0": DebugCurrentBiome = eBiomeID.Desert; break; case "snow_0": case "ice_water": DebugCurrentBiome = eBiomeID.Tundra; break; case "swamp_0": DebugCurrentBiome = eBiomeID.Swamp; break; default: DebugCurrentBiome = eBiomeID.None; break; } } }