Alchemy + Guidebook initialization (#124)

* remove Guidebook

* water and blood

* localization things

* added vital extract

* some fixes

* added bloodgrass

* guidebook localization

* fixes icons and remove unnecesary fields

* added inhand cauldron

* fix wallmount board

* Update bonfire.yml

* Update bonfire.yml

* alchemy furnace + mist

* fixes

* Guidebook localization

* Update drinks.yml

* Revert "remove Guidebook"

This reverts commit 7924cf235f.

* fix filtering guidebook

* test fix

* Update heater.yml
This commit is contained in:
Ed
2024-05-02 20:41:11 +03:00
committed by GitHub
parent 2c34befbcb
commit 4c692d7d4a
128 changed files with 1949 additions and 154 deletions

View File

@@ -1,3 +1,5 @@
using Content.Server._CP14.Temperature;
using Content.Server.Atmos.Components;
using Content.Server.Chemistry.Components;
using Content.Server.Chemistry.Containers.EntitySystems;
using Content.Server.Power.Components;
@@ -92,5 +94,26 @@ public sealed class SolutionHeaterSystem : EntitySystem
}
}
}
//CrystallPunk bonfire
var flammablequery = EntityQueryEnumerator<CP14FlammableSolutionHeaterComponent, ItemPlacerComponent, FlammableComponent>();
while (flammablequery.MoveNext(out _, out var heater, out var placer, out var flammable))
{
foreach (var heatingEntity in placer.PlacedEntities)
{
if (!flammable.OnFire)
return;
if (!TryComp<SolutionContainerManagerComponent>(heatingEntity, out var container))
continue;
var energy = flammable.FireStacks * frameTime * 300;
foreach (var (_, soln) in _solutionContainer.EnumerateSolutions((heatingEntity, container)))
{
_solutionContainer.AddThermalEnergy(soln, energy);
}
}
}
//CrystallPunk bonfire end
}
}

View File

@@ -122,8 +122,12 @@ public sealed class TemperatureSystem : EntitySystem
public void ChangeHeat(EntityUid uid, float heatAmount, bool ignoreHeatResistance = false,
TemperatureComponent? temperature = null)
{
if (!Resolve(uid, ref temperature))
//CrystallPunk may try place on heater and entity, and solutions
//if (!Resolve(uid, ref temperature))
// return;
if (temperature == null)
return;
//CrystallPunk may try place on heater and entity, and solutions END
if (!ignoreHeatResistance)
{

View File

@@ -9,5 +9,5 @@ namespace Content.Server._CP14.Temperature;
public sealed partial class CP14FlammableEntityHeaterComponent : Component
{
[DataField]
public float EnergyPerFireStack = 1000f;
public float EnergyPerFireStack = 300f;
}

View File

@@ -0,0 +1,11 @@
using Content.Server.Chemistry.EntitySystems;
namespace Content.Server._CP14.Temperature;
/// <summary>
/// Adds thermal energy from FlammableComponent to solutions placed on it.
/// </summary>
[RegisterComponent, Access(typeof(SolutionHeaterSystem))]
public sealed partial class CP14FlammableSolutionHeaterComponent : Component
{
}