public void RefreshTerrainDescriptors() { if (base.SimulationObject == null) { return; } IWorldPositionningService service = ((global::Game)Services.GetService <IGameService>().Game).GetService <IWorldPositionningService>(); DepartmentOfTheInterior.RemoveAnyTerrainTypeDescriptor(base.SimulationObject); DepartmentOfTheInterior.RemoveAnyBiomeTypeDescriptor(base.SimulationObject); DepartmentOfTheInterior.RemoveAnyAnomalyDescriptor(base.SimulationObject); DepartmentOfTheInterior.RemoveAnyRiverTypeDescriptor(base.SimulationObject); byte terrainType = service.GetTerrainType(this.WorldPosition); StaticString terrainTypeMappingName = service.GetTerrainTypeMappingName(terrainType); DepartmentOfTheInterior.ApplyTerrainTypeDescriptor(base.SimulationObject, terrainTypeMappingName); byte biomeType = service.GetBiomeType(this.WorldPosition); StaticString biomeTypeMappingName = service.GetBiomeTypeMappingName(biomeType); DepartmentOfTheInterior.ApplyBiomeTypeDescriptor(base.SimulationObject, biomeTypeMappingName); byte anomalyType = service.GetAnomalyType(this.WorldPosition); StaticString anomalyTypeMappingName = service.GetAnomalyTypeMappingName(anomalyType); DepartmentOfTheInterior.ApplyAnomalyDescriptor(base.SimulationObject, anomalyTypeMappingName); short riverId = service.GetRiverId(this.WorldPosition); StaticString riverTypeMappingName = service.GetRiverTypeMappingName(riverId); DepartmentOfTheInterior.ApplyRiverTypeDescriptor(base.SimulationObject, riverTypeMappingName); this.Refresh(false); }
public StaticString GetRegionBiome(Region region) { IGameService service = Services.GetService <IGameService>(); Diagnostics.Assert(service != null); IWorldPositionningService service2 = service.Game.Services.GetService <IWorldPositionningService>(); Diagnostics.Assert(service2 != null); byte biomeType = service2.GetBiomeType(region.WorldPositions[0]); return(service2.GetBiomeTypeMappingName(biomeType)); }