mirror of
https://old.git.ood.ovh/eco/server-config.git
synced 2025-04-28 23:14:23 +02:00
110 lines
4.8 KiB
C#
110 lines
4.8 KiB
C#
namespace Eco.Mods.TechTree
|
|
{
|
|
// [DoNotLocalize]
|
|
}
|
|
// WORLD LAYER INFO
|
|
namespace Eco.Mods.WorldLayers
|
|
{
|
|
using Eco.Shared.Localization;
|
|
using Eco.Shared.Math;
|
|
using Eco.Shared.Utils;
|
|
using Eco.Simulation.WorldLayers.Layers;
|
|
|
|
public partial class PlantLayerSettingsBoleteMushroom : PlantLayerSettings
|
|
{
|
|
public PlantLayerSettingsBoleteMushroom() : base()
|
|
{
|
|
this.Name = "BoleteMushroom";
|
|
this.DisplayName = string.Format("{0} {1}", Localizer.DoStr("Bolete Mushroom"), Localizer.DoStr("Population"));
|
|
this.InitMultiplier = 1;
|
|
this.SyncToClient = false;
|
|
this.Range = new Range(0f, 1f);
|
|
this.RenderRange = new Range(0f, 0.333333f);
|
|
this.MinColor = new Color(1f, 1f, 1f);
|
|
this.MaxColor = new Color(0f, 1f, 0f);
|
|
this.Percent = false;
|
|
this.SumRelevant = true;
|
|
this.Unit = "Bolete Mushroom";
|
|
this.VoxelsPerEntry = 5;
|
|
this.Category = WorldLayerCategory.Plant;
|
|
this.ValueType = WorldLayerValueType.Percent;
|
|
this.AreaDescription = "";
|
|
}
|
|
}
|
|
}
|
|
|
|
namespace Eco.Mods.Organisms
|
|
{
|
|
using System.Collections.Generic;
|
|
using Eco.Gameplay.Plants;
|
|
using Eco.Mods.TechTree;
|
|
using Eco.Shared.Localization;
|
|
using Eco.Shared.Math;
|
|
using Eco.Shared.Serialization;
|
|
using Eco.Simulation;
|
|
using Eco.Simulation.Types;
|
|
using Eco.World.Blocks;
|
|
|
|
[Serialized]
|
|
public partial class BoleteMushroom : PlantEntity
|
|
{
|
|
public BoleteMushroom(WorldPosition3i mapPos, PlantPack plantPack) : base(species, mapPos, plantPack) { }
|
|
public BoleteMushroom() { }
|
|
static PlantSpecies species;
|
|
public partial class BoleteMushroomSpecies : PlantSpecies
|
|
{
|
|
public BoleteMushroomSpecies() : base()
|
|
{
|
|
species = this;
|
|
this.InstanceType = typeof(BoleteMushroom);
|
|
|
|
// Info
|
|
this.Decorative = false;
|
|
this.Name = "BoleteMushroom";
|
|
this.DisplayName = Localizer.DoStr("Bolete Mushroom");
|
|
this.IsConsideredNearbyFoodDuringSpawnCheck = true;
|
|
// Lifetime
|
|
this.MaturityAgeDays = 0.8f;
|
|
// Generation
|
|
// Food
|
|
this.CalorieValue = 4;
|
|
// Resources
|
|
this.PostHarvestingGrowth = 0;
|
|
this.PickableAtPercent = 0;
|
|
this.ResourceList = new List<SpeciesResource>()
|
|
{
|
|
new SpeciesResource(typeof(BoleteMushroomsItem), new Range(1, 5), 1),
|
|
new SpeciesResource(typeof(BoleteMushroomSporesItem), new Range(1, 2), 0.3f)
|
|
};
|
|
this.ResourceBonusAtGrowth = 0.9f;
|
|
// Visuals
|
|
this.BlockType = typeof(BoleteMushroomBlock);
|
|
// Climate
|
|
this.ReleasesCO2ppmPerDay = -0.000005f;
|
|
// WorldLayers
|
|
this.MaxGrowthRate = 0.01f;
|
|
this.MaxDeathRate = 0.005f;
|
|
this.SpreadRate = 0.001f;
|
|
this.ResourceConstraints.Add(new ResourceConstraint() { LayerName = "Nitrogen", HalfSpeedConcentration = 0.2f, MaxResourceContent = 0.1f });
|
|
this.ResourceConstraints.Add(new ResourceConstraint() { LayerName = "Phosphorus", HalfSpeedConcentration = 0.2f, MaxResourceContent = 0.2f });
|
|
this.ResourceConstraints.Add(new ResourceConstraint() { LayerName = "Potassium", HalfSpeedConcentration = 0.2f, MaxResourceContent = 0.2f });
|
|
this.ResourceConstraints.Add(new ResourceConstraint() { LayerName = "SoilMoisture", HalfSpeedConcentration = 0.1f, MaxResourceContent = 0.1f });
|
|
this.CapacityConstraints.Add(new CapacityConstraint() { CapacityLayerName = "FertileGround", ConsumedCapacityPerPop = 1 });
|
|
this.CapacityConstraints.Add(new CapacityConstraint() { CapacityLayerName = "ShrubSpace", ConsumedCapacityPerPop = 3 });
|
|
this.IdealTemperatureRange = new Range(0.65f, 0.75f);
|
|
this.IdealMoistureRange = new Range(0.75f, 0.95f);
|
|
this.IdealWaterRange = new Range(0, 0.1f);
|
|
this.WaterExtremes = new Range(0, 0.2f);
|
|
this.TemperatureExtremes = new Range(0.6f, 0.8f);
|
|
this.MoistureExtremes = new Range(0.7f, 1);
|
|
this.MaxPollutionDensity = 0.7f;
|
|
this.PollutionDensityTolerance = 0.1f;
|
|
this.VoxelsPerEntry = 5;
|
|
|
|
}
|
|
}
|
|
}
|
|
[Serialized]
|
|
public partial class BoleteMushroomBlock :
|
|
InteractablePlantBlock { }
|
|
}
|