173 {
174 float containerCfgWeight = container.m_ConfigWeight;
175 float retultTemp = (
GetLiquidTypeEnviroTemperature(liquid_type) * amount + container.GetTemperature() * (containerCfgWeight + container.GetQuantity())) / (container.GetQuantity() + containerCfgWeight + amount);
176 container.SetTemperature(retultTemp);
178
180
181 if (inject_agents)
182 {
183 PluginTransmissionAgents plugin = PluginTransmissionAgents.Cast(
GetPlugin(PluginTransmissionAgents));
184 int agtSource;
185 switch (liquid_type)
186 {
191 break;
194 break;
197 break;
198 default:
200 break;
201 }
202
203 plugin.TransmitAgents(NULL, container, agtSource, amount);
204 }
205 }
static int TranslateLiquidType(int liquidType)
Translates 'administrative' liquid types into liquid types with valid config class.
static void FillContainer(ItemBase container, int liquid_type, float amount)
static float GetLiquidTypeEnviroTemperature(int liquidType)
Gets liquid temperature from the enviroment.
static void AffectContainerOnFill(ItemBase container, int liquid_type, float amount)
from enviro source
PluginBase GetPlugin(typename plugin_type)
const int AGT_WATER_HOT_SPRING
const int LIQUID_STILLWATER
const int LIQUID_HOTWATER
const int LIQUID_FRESHWATER
const int LIQUID_RIVERWATER