227 protected float m_SurfaceUnderWetnessModifier
269 RegisterNetSyncVariableBool(
"m_IsBurning");
270 RegisterNetSyncVariableBool(
"m_HasAshes");
271 RegisterNetSyncVariableBool(
"m_IsOven");
272 RegisterNetSyncVariableBool(
"m_HasStoneCircle");
273 RegisterNetSyncVariableBool(
"m_RoofAbove");
275 RegisterNetSyncVariableBool(
"m_NoIgnite");
279 m_SurfaceUnderWetnessModifier = 0.0;
336 super.EEItemAttached(item, slot_name);
339 if (item.IsCookware())
345 super.EEItemLocationChanged(oldLoc, newLoc);
355 super.OnItemLocationChanged(old_owner, new_owner);
361 GetInventory().GetCurrentInventoryLocation(loc);
389 switch (attachment.Type())
394 EntityAI ent = GetInventory().FindAttachment(slot);
395 if (ent && ent.IsCookware())
397 vector direction = ent.GetDirection();
401 if (direction[0] < 0)
408 GetInventory().DropEntityInBounds(
InventoryMode.SERVER,
this, ent,
"2 0 2", angle, cos, sin);
418 super.EEDelete(parent);
433 super.OnStoreSave(ctx);
447 if (!super.OnStoreLoad(ctx, version))
485 super.AfterStoreLoad();
518 super.OnVariablesSynchronized();
582 temperature = GetTemperature();
664 super.OnChildItemRemoved(item);
672 MiscGameplayFunctions.DropAllItemsInInventoryInBounds(
this,
m_HalfExtents);
673 super.CheckForDestroy();
713 if (
vector.
DistanceSq(player.GetPosition(),
this.GetPosition()) > lightDist * lightDist)
719 GetLightEntity().FadeBrightnessTo(FireplaceLight.m_FireplaceBrightness, 5);
1074 float temperature = GetTemperature();
1112 if (!particle &&
g_Game && (!
g_Game.IsHeadlessOrDedicatedServer()))
1116 particle =
ParticleManager.GetInstance().PlayOnObject(particle_type,
this, pos);
1120 particle =
ParticleManager.GetInstance().PlayInWorld(particle_type, pos);
1132 if (particle &&
g_Game && (!
g_Game.IsHeadlessOrDedicatedServer()))
1203 float actual_height;
1229 float actual_height;
1315 from[1] = from[1] + 1.0;
1319 int contactComponent;
1321 bool hit =
DayZPhysics.
RaycastRV(from, to, contactPos, contactDir, contactComponent, NULL, NULL,
this);
1330 actual_height =
Math.
Clamp(actual_height, 0, 36);
1332 air_res = (6 - actual_height) * 0.33;
1342 return Vector(0, 0.05, 0);
1347 return Vector(0, 0.05, 0);
1387 PlaySoundSet(
m_SoundFire,
"ExtinguishByWind_SoundSet", 0, 0);
1409 if (!fireConsumableType)
1413 for (
int i = 0; i < count; ++i)
1420 if (fireConsumableType)
1429 if (fire_consumable)
1432 delete fire_consumable;
1493 if (!fireConsumable)
1512 if (item.IsAnyInherited({ItemBook, Paper, GiftWrapPaper, EyeMask_ColorBase}))
1520 if (item.GetQuantity() <= 1)
1530 item.AddQuantity(-1);
1542 int attachmentsCount = GetInventory().AttachmentCount();
1543 int kindlingCount = 0;
1545 for (
int i = 0; i < attachmentsCount; ++i)
1553 return kindlingCount;
1559 int attachmentsCount = GetInventory().AttachmentCount();
1562 for (
int i = 0; i < attachmentsCount; ++i)
1576 if (!fireConsumableType)
1580 for (
int i = 0; i < count; ++i)
1587 return fireConsumableType && fireConsumableType.
IsKindling();
1594 if (!fireConsumableType)
1598 for (
int i = 0; i < count; ++i)
1605 return fireConsumableType && !fireConsumableType.
IsKindling();
1611 return GetAttachmentByType(item_type) != null;
1619 return item.GetQuantity() >= quantity;
1625 return GetInventory().AttachmentCount() == 1;
1682 return attached_item && attached_item.GetQuantity() > 0;
1782 SetAffectPathgraph(
false,
true);
1819 m_NoisePar.LoadFromPath(
"CfgVehicles FireplaceBase NoiseFireplaceSpecial");
1821 m_NoisePar.LoadFromPath(
"CfgVehicles FireplaceBase NoiseFireplaceBase");
1828 float temperatureModifier = 0;
1853 float rain =
g_Game.GetWeather().GetRain().GetActual();
1854 float combinedWindAndSnowfall = MiscGameplayFunctions.GetCombinedSnowfallWindValue();
1858 if (rain > combinedWindAndSnowfall)
1875 if (m_SurfaceUnderWetnessModifier > 0.0)
1880 temperature =
Math.
Clamp(temperature,
g_Game.GetMission().GetWorldData().GetBaseEnvTemperatureAtObject(
this),
m_UTSLFireplace.m_NormalFireplaceTemperatureMax);
1881 SetTemperatureDirect(temperature);
1887 temperature = GetTemperature();
1904 float cookingItemTemperature;
1966 SetAffectPathgraph(
false,
false);
1998 float temperature = GetTemperature();
1999 float temperatureModifier = 0;
2011 float target =
Math.
Max(
g_Game.GetMission().GetWorldData().GetBaseEnvTemperatureAtObject(
this),10);
2013 if (temperature > target)
2016 float rain =
g_Game.GetWeather().GetRain().GetActual();
2017 float combinedWindAndSnowfall = MiscGameplayFunctions.GetCombinedSnowfallWindValue();
2021 if (rain > combinedWindAndSnowfall)
2038 float wetness =
GetWet();
2042 target =
g_Game.GetMission().GetWorldData().GetBaseEnvTemperatureAtObject(
this);
2044 float flatWetTarget = GetTemperature() - temperatureModifier;
2045 flatWetTarget =
Math.
Clamp(flatWetTarget,target,GetTemperatureMax());
2046 SetTemperatureDirect(flatWetTarget);
2054 temperature = GetTemperature();
2071 float cookingItemTemperature;
2116 cookware.RemoveAudioVisualsOnClient();
2125 cookware.RemoveAudioVisualsOnClient();
2195 CargoBase cargo = GetInventory().GetCargo();
2211 for (
int j = 0; j < GetInventory().AttachmentCount(); ++j)
2213 ItemBase attachment =
ItemBase.Cast(GetInventory().GetAttachmentFromIndex(j));
2229 if (item.CanHaveTemperature())
2231 float fireplaceTemp = GetTemperature();
2232 float itemTemp = item.GetTemperature();
2233 float heatPermCoef = item.GetHeatPermeabilityCoef();
2252 item.SetTemperatureEx(
new TemperatureDataInterpolated(fireplaceTemp,
ETemperatureAccessTypes.ACCESS_FIREPLACE,deltaTime,tempCoef,heatPermCoef));
2285 float timerCoef = 1.0;
2291 switch (item.Type())
2299 if (item.IsCookware())
2316 float wetness = item.GetWet();
2317 wetness = wetness + amount;
2319 item.SetWet(wetness);
2326 float wetness =
GetWet();
2327 wetness = wetness + amount;
2334 float temperature = GetTemperature();
2335 temperature = temperature * (1 - (wetness * 0.5));
2337 SetTemperatureDirect(temperature);
2355 m_AreaDamage.SetExtents(
"-0.30 0 -0.30",
"0.30 0.75 0.30");
2358 m_AreaDamage.SetHitZones({
"Head",
"Torso",
"LeftHand",
"LeftLeg",
"LeftFoot",
"RightHand",
"RightLeg",
"RightFoot" });
2393 float wind_speed =
g_Game.GetWeather().GetWindSpeed();
2394 float wind_speed_threshold =
g_Game.GetWeather().GetWindMaximumSpeed() *
FireplaceBase.IGNITE_WIND_THRESHOLD;
2396 return (wind_speed >= wind_speed_threshold);
2412 return (entity_ai.GetWet() >=
FireplaceBase.PARAM_MAX_WET_TO_IGNITE);
2429 return !MiscGameplayFunctions.IsUnderRoof(
this,
FireplaceBase.MIN_CEILING_HEIGHT);
2446 vector fireplacePosition = entity_ai.GetPosition();
2448 g_Game.SurfaceGetType3D(fireplacePosition[0], fireplacePosition[1] +
g_Game.SurfaceGetSeaLevel(), fireplacePosition[2], surfaceType);
2451 float waterLevelDiff = fireplacePosition[1] -
g_Game.SurfaceGetSeaLevel();
2452 return waterLevelDiff < 0.5;
2454 else if (surfaceType.
Contains(
"water"))
2466 g_Game.SurfaceUnderObjectCorrectedLiquid(entity, surfaceType, liquidType);
2480 vector fireplacePosition = entity_ai.GetPosition();
2481 g_Game.SurfaceGetType3D(fireplacePosition[0], fireplacePosition[1] + 1.0, fireplacePosition[2], surfaceType);
2482 return (
g_Game.ConfigGetInt(
"CfgSurfaces " + surfaceType +
" interior") == 1);
2492 return (GetInventory().GetCargo().GetItemCount() == 0 && GetInventory().AttachmentCount() == 0);
2498 return (GetInventory().GetCargo().GetItemCount() == 0);
2509 return GetAnimationPhase(anim_phase) == 0;
2515 if (
g_Game.IsBoxCollidingGeometry(GetWorldPosition() +
Vector(0, size[1] * 0.5 + 0.1, 0), GetDirection().VectorToAngles(), size, ObjIntersect.View, ObjIntersect.Geom, {this}, objs))
2517 foreach (
Object obj : objs)
2529 if (!otherDestination || otherDestination.
GetParent() ==
this)
2538 if (!super.CanPutIntoHands(parent))
2554 const float size = 0.6;
2639 string quantityConfigPath =
string.Format(
"CfgVehicles %1 varQuantityMax", fireConsumableType.GetItemType().ToString());
2640 string stackMaxConfigPath =
string.Format(
"CfgSlots Slot_%1 stackMax", fireConsumableType.GetAttSlot());
2641 if (
g_Game.ConfigIsExisting(quantityConfigPath))
2646 if (
g_Game.ConfigIsExisting(stackMaxConfigPath))
2648 float stackMax =
g_Game.ConfigGetFloat(stackMaxConfigPath);
2674 float remainingEnergy;
2678 float quantity = fireConsumable.GetItem().GetQuantity();
2681 remainingEnergy += ((quantity - 1) * fireConsumable.GetEnergy()) + fireConsumable.GetRemainingEnergy();
2686 remainingEnergy += fireConsumable.GetRemainingEnergy();
2697 super.OnAttachmentQuantityChanged(item);
2704 if (!super.CanReleaseAttachment(attachment))
2720 string path_cooking_equipment =
string.Format(
"%1 %2 GUIInventoryAttachmentsProps CookingEquipment attachmentSlots",
CFG_VEHICLESPATH,
GetType());
2722 string path_direct_cooking =
string.Format(
"%1 %2 GUIInventoryAttachmentsProps DirectCooking attachmentSlots",
CFG_VEHICLESPATH,
GetType());
2723 if (
g_Game.ConfigIsExisting(path_cooking_equipment) &&
g_Game.ConfigIsExisting(path_direct_cooking))
2727 g_Game.ConfigGetTextArray(path_cooking_equipment,arr_cooking_equipment);
2728 g_Game.ConfigGetTextArray(path_direct_cooking,arr_direct_cooking);
2729 for (
int i = 0; i < arr_cooking_equipment.Count(); i++)
2738 for (i = 0; i < arr_direct_cooking.Count(); i++)
2756 super.OnRPC(sender, rpc_type, ctx);
2758 ref Param1<bool> p =
new Param1<bool>(
false);
2762 bool failure = p.param1;
2767 case FirePlaceFailure.WIND:
2778 case FirePlaceFailure.WET:
2798 ItemBase firewood =
ItemBase.Cast(GetInventory().CreateInInventory(
"Firewood"));
2801 ItemBase sticks =
ItemBase.Cast(GetInventory().CreateInInventory(
"WoodenStick"));
2807 GetInventory().CreateInInventory(
"Rag");
2809 SpawnEntityOnGroundPos(
"PetrolLighter",
GetPosition());
2818 super.GetDebugActions(outputList);
2823 if (super.OnAction(action_id, player, ctx))
2827 if (action_id ==
EActions.ACTIVATE_ENTITY)
2831 else if (action_id ==
EActions.DEACTIVATE_ENTITY)
Param4< int, int, string, int > TSelectableActionInfoWithColor
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
eBleedingSourceType GetType()
void OnItemLocationChanged(ItemBase item)
ref NoiseParams m_NoisePar
override bool IsSelfAdjustingTemperature()
void AreaDamageManager(EntityAI parent)
void OnRPC(PlayerIdentity sender, int rpcType, ParamsReadContext ctx)
const int ECE_PLACE_ON_SURFACE
override void SetQuantity()
Container_Base m_HalfExtents
ContaminatedArea_Base EffectArea EEInit()
override void EEDelete(EntityAI parent)
static const float PARAM_BURN_DAMAGE_COEF
override bool OnAction(int action_id, Man player, ParamsReadContext ctx)
override void GetDebugActions(out TSelectableActionInfoArrayEx outputList)
override void OnPlacementComplete(Man player, vector position="0 0 0", vector orientation="0 0 0")
float GetAirResistanceForSmokeParticles(float actual_height)
void TransferHeatToNearPlayers()
DEPRECATED.
const int MAX_TEMPERATURE_TO_DISMANTLE_OVEN
minimum amount of stones for oven
void RefreshFireplaceVisuals()
float GetFuelBurnRateMP()
void RemoveFromFireConsumables(FireConsumable fire_consumable)
override void OnChildItemRemoved(InventoryItem item)
ref UniversalTemperatureSourceSettings m_UTSSettings
const string MESSAGE_BURY_ASHES_FAILED_BURNING
int m_OvenAttachmentsLockState
ItemBase GetCookingEquipment()
const string SOUND_FIRE_EXTINGUISHING
static bool IsEntityOnInteriorSurface(notnull EntityAI entity_ai)
bool CanBuildStoneCircle()
Particle m_ParticleSmallFire
const float TEMPERATURE_LOSS_MP_OVEN
void AddDamageToItemByFire(ItemBase item, bool can_be_ruined)
void ParticleSteamExtinguishingStop()
void ParticleWetNoIgniteStart()
const float WET_SURFACE_INCREMENT
const float PARAM_HEAT_THROUGH_AIR_COEF
maximum value of temperature of items in fireplace when heating (degree Celsius)
bool DirectCookingSlotsInUse()
static ref map< typename, ref FireConsumableType > m_FireConsumableTypes
FireConsumable GetItemToConsume()
override void CheckForDestroy()
const string ANIMATION_OVEN
const int DIRECT_COOKING_SLOT_COUNT
direct cooking slots
const int TIMER_HEATING_UPDATE_INTERVAL
timer constants
Particle m_ParticleFireStart
void ParticleSmallFireStart()
void SoundFireLightStart()
void LockOvenAttachments(bool lock)
void AddTemperatureToItemByFire(ItemBase item)
void ParticleNormalFireStop()
void ParticleSteamEndStart()
Particle m_ParticleSmallSmoke
const string MESSAGE_IGNITE_NO_KINDLING
const int TIMER_COOLING_UPDATE_INTERVAL
update interval duration of heating process (seconds)
const float PARAM_ITEM_HEAT_TEMP_HEATING_COEF
value for calculating temperature increase on each heat update interval (degree Celsius)
const string MESSAGE_IGNITE_IN_WATER
ref UnderObjectDecalSpawnSettings m_UnderObjectDecalSpawnSettings
const float PARAM_TEMPERATURE_DECREASE
how much will temperature increase when fireplace is burning (degree Celsius per second)
const float PARAM_TEMPERATURE_INCREASE
minimum fireplace temperature under which the fireplace is inactive (degree Celsius)
bool IsProcessing()
returns true when FP is heating or cooling
const float PARAM_FIRE_CONSUM_RATE_AMOUNT
value for calculating wetness loss during cooling process
const string MESSAGE_REIGNITE_RAIN
const int LIFETIME_FIREPLACE_STONE_CIRCLE
int PARTICLE_STEAM_EXTINGUISHING
const string SOUND_FIRE_HEAVY
const string MESSAGE_BURY_ASHES_FAILED_NOT_EMPTY
Particle m_ParticleNormalFire
static bool IsEntityOnWaterSurface(notnull EntityAI entity_ai)
const float TEMPERATURE_LOSS_MP_DEFAULT
DEPRECATED value for calculation of heat transfered from fireplace through air to player (environment...
const string SOUND_FIRE_LIGHT
void SoundFireExtinguishedStart()
enum FireplaceFireState m_IsBurning
bool IsCeilingHighEnoughForSmoke()
override bool IsFireplace()
const string MESSAGE_IGNITE_IGNIT_ITEM_DAMAGED
void AddToFireConsumables(ItemBase item)
const string MESSAGE_IGNITE_RAIN
void ParticleSteamExtinguishingStart()
EffectSound m_SoundFireLoop
const float PARAM_ITEM_HEAT_MIN_TEMP
const float PLACEMENT_HEIGHT_LIMIT
FireplaceFireState m_FireState
const float PARAM_MIN_TEMP_TO_REIGNITE
maximum wetness value when the fireplace can be ignited
void DestroyFireplace()
[DEPRECATED]
void SetFuelBurnRateMP(float value)
ATTACHMENT_EYEMASK_COLORBASE
void SetAshesState(bool has_ashes)
const string MESSAGE_CANNOT_DISMANTLE_OVEN
void StopFire(FireplaceFireState fire_state=FireplaceFireState.END_FIRE)
ref Cooking m_CookingProcess
determines how fast will the fuel item burn before spending (lower is better)
const string OBJECT_CLUTTER_CUTTER
const string ANIMATION_CAULDRON_HANDLE
const float PARAM_DRY_MODIFIER
maximum value for temperature that will be transfered to player (environment)
void BurnItemsInFireplace()
Particle m_ParticleSteamExtinguishing
void SoundFireHeavyStart()
const float DIRECT_COOKING_SPEED
how much will temperature increase when attached on burning fireplace (degree Celsius)
const int LIFETIME_FIREPLACE_STONE_OVEN
const float PARAM_MAX_TRANSFERED_TEMPERATURE
radius in which objects are heated by fire
override void OnAttachmentRuined(EntityAI attachment)
int PARTICLE_NO_IGNITE_WIND
FireplaceFireState m_LastFireState
override bool CanBePlaced(Man player, vector position)
const string ANIMATION_TRIPOD
ref UnderObjectDecalSpawnComponent m_UnderObjectDecalSpawnComponent
void SetFireState(FireplaceFireState state)
const int MIN_STONES_TO_BUILD_OVEN
minimum amount of stones for circle
const float PARAM_HEAT_RADIUS
radius in which objects are fully heated by fire
FireplaceLight GetLightEntity()
void CalcAndSetQuantity()
const string MESSAGE_IGNITE_WIND
const float TEMPERATURE_LOSS_MP_STONES
const string MATERIAL_FIREPLACE_GLOW
static bool IsEntityWet(notnull EntityAI entity_ai)
const string SOUND_FIRE_EXTINGUISHED
const string ANIMATION_ASHES
const float PARAM_NORMAL_FIRE_TEMPERATURE
maximum fireplace temperature of a small fire (degree Celsius)
bool CanDismantleStoneCircle()
void CookOnDirectSlot(ItemBase slot_item, float temp_equip, float temp_ext)
void SetBurntFirewood()
DEPRECATED.
const string MESSAGE_IGNITE_UNDER_LOW_ROOF
const float PARAM_MIN_FIRE_TEMPERATURE
maximum fireplace temperature of an outdoor fire (degree Celsius)
bool IsInAnimPhase(string anim_phase)
const float MIN_CEILING_HEIGHT
maximum temperature for dismantling oven
const float PARAM_MAX_ITEM_HEAT_TEMP_INCREASE
multiplies temperature change on heating
const string MATERIAL_FIREPLACE_NOGLOW
void SpendFireConsumable(float amount)
void ParticleNormalSmokeStop()
const string ANIMATION_INVENTORY
bool IsFuel(ItemBase item)
Returns if item attached to fireplace is fuel.
float GetTemperatureLossMP()
determines how fast will the fireplace loose its temperature when cooling (lower is better)
void RefreshFireplacePhysics()
const string ANIMATION_STONES
void RefreshFireParticlesAndSounds(bool force_refresh)
bool IsOnInteriorSurface()
const float SNOWFALL_EFFECT_LIMIT
rain level that triggers fireplace to start soaking
ref AreaDamageManager m_AreaDamage
const float PARAM_SMALL_FIRE_TEMPERATURE
Cooking GetCookingProcess()
int PARTICLE_NORMAL_SMOKE
const float PARAM_WET_COOLING_DECREASE_COEF
value for calculating wetness loss during heating process
const string MESSAGE_REIGNITE_TOO_WET
void ParticleFireStartStart()
const int SMOKING_SLOT_COUNT
void SoundFireWetNoIgniteStart()
const float FUEL_BURN_RATE_OVEN
const string MESSAGE_BURY_ASHES_FAILED_TOO_HOT
void SmokeOnSmokingSlot(ItemBase slot_item, float temp_equip, float temp_ext)
const float SNOWFALL_WETNESS_INCREASE
value for calculating of wetness that fireplace gain when raining
const string MESSAGE_CANNOT_BUILD_OVEN
void SoundFireExtinguishingStart()
float GetSurfaceWetnessOnHeatModifier(notnull EntityAI entity)
void StartFire(bool force_start=false)
override bool GetCookingTargetTemperature(out float temperature)
ItemBase m_DirectCookingSlots[DIRECT_COOKING_SLOT_COUNT]
const string ANIMATION_WOOD
void SetIgniteFailure(bool failure)
void SoundFireWindyNoIgniteStart()
void AddTemperatureToFireplace(float amount)
DEPRECATED.
const float FUEL_BURN_RATE_DEFAULT
min height of ceiling for fire to be ignited
const float PARAM_BURN_WET_THRESHOLD
maximum rain value when the fireplace can be ignited
ref Timer m_HeatingTimer
value for calculating of wetness that fireplace gain when raining
override bool DisassembleOnLastDetach()
void ParticleNormalFireStart()
const float FUEL_BURN_RATE_STONES
void SetStoneCircleState(bool has_stonecircle)
ref UniversalTemperatureSourceLambdaFireplace m_UTSLFireplace
static bool IsRainingAboveEntity(notnull EntityAI entity_ai)
void SetExtinguishingState()
void StopAllParticlesAndSounds()
vector GetFireEffectPosition()
const string ANIMATION_KINDLING
ref UniversalTemperatureSource m_UTSource
const string MESSAGE_IGNITE_TOO_WET
const float PARAM_IGNITE_RAIN_THRESHOLD
minimum fireplace temperature under which the fireplace can be reignited using air only (degree Celsi...
float GetFireConsumableTypeEnergy(ItemBase item)
void SetTemperatureLossMP(float value)
void ParticleFireWindyNoIgniteStart()
bool IsFacingFireplace(PlayerBase player)
DEPRECATED.
ref map< ItemBase, ref FireConsumable > m_FireConsumables
bool GetCeilingHeight(out float actual_height)
const float PARAM_COOKING_EQUIP_MAX_TEMP
const float PARAM_ITEM_HEAT_TEMP_INCREASE_COEF
DEPRECATED.
float m_TemperatureLossMP
value for calculating of wetness that fireplace gain when raining
int GetAttachedStonesCount()
const float PARAM_WET_INCREASE_COEF
const string ANIMATION_COOKWARE_HANDLE
ref FireConsumable m_ItemToConsume
const float PARAM_MAX_WET_TO_IGNITE
how much will temperature decrease when fireplace is cooling (degree Celsius per second)
ItemBase m_CookingEquipment
const float IGNITE_WIND_THRESHOLD
bool IsSpaceFor(vector size)
Particle m_ParticleFireEnd
void ClearCookingEquipment()
DEPRECATED.
FireConsumable GetFireConsumableByItem(ItemBase item)
ItemBase m_SmokingSlots[SMOKING_SLOT_COUNT]
const string ANIMATION_STICKS
void CalcAndSetTotalEnergy()
const float PARAM_FULL_HEAT_RADIUS
value for calculating damage on items located in fireplace cargo
const string ANIMATION_STONE
bool IsKindling(ItemBase item)
Returns if item attached to fireplace is kindling.
FireConsumable SetItemToConsume()
void SetBurningState(bool is_burning)
void ParticleWetNoIgniteStop()
bool IsItemAttachedQuantity(typename item_type, float quantity)
void SoundFireNoFireStart()
const float PARAM_COOKING_EQUIP_TEMP_INCREASE
maximum temperature of attached cooking equipment (degree Celsius)
void ParticleSmallSmokeStop()
void ParticleFireEndStart()
bool m_ThawnSurfaceUnderSupport
size of wetness increment (per FP heating tick) added to overall FP wetness when ignited on wet surfa...
bool IsItemTypeAttached(typename item_type)
void ParticleFireEndStop()
bool HasLastFuelKindlingAttached()
int GetFuelCount()
Returns count of all fuel type items (define in 'm_FuelTypes') attached to fireplace.
override bool CanHaveTemperature()
void ParticleFireStartStop()
void ParticleSteamEndStop()
void SetOvenState(bool is_oven)
const string MESSAGE_BURY_ASHES_FAILED_SURFACE
const float PARAM_WET_HEATING_DECREASE_COEF
maximum wetness value when the fireplace is able to burn
const int MIN_STONES_TO_BUILD_CIRCLE
const string ANIMATION_BURNT_WOOD
Particle m_ParticleSteamEnd
const string MESSAGE_REIGNITE_NO_KINDLING
const float RAIN_WETNESS_INCREASE
snowfall level that triggers fireplace to start soaking
void SetLightEntity(FireplaceLight light)
void ParticleSmallFireStop()
const float PARAM_COOKING_TEMP_THRESHOLD
cooking
const string SOUND_FIRE_NO_FIRE
int PARTICLE_OVEN_FIRE_END
const float SMOKING_SPEED
void AddDamageToItemByFireEx(ItemBase item, bool can_be_ruined, bool pAttachment)
const float PARAM_OUTDOOR_FIRE_TEMPERATURE
maximum fireplace temperature of a normal fire (degree Celsius)
const float RAIN_EFFECT_LIMIT
override bool CanSwapEntities(EntityAI otherItem, InventoryLocation otherDestination, InventoryLocation destination)
int GetKindlingCount()
Returns count of all kindling type items (define in 'm_KindlingTypes') attached to fireplace.
int PARTICLE_OVEN_FIRE_START
void AddWetnessToItem(ItemBase item, float amount)
Particle m_ParticleNormalSmoke
void AddWetnessToFireplace(float amount)
InventoryLocationType
types of Inventory Location
override bool IsHologram()
void OnAttachmentQuantityChanged(ItemBase item)
Called on server side when some attachment's quantity is changed. Call super.OnAttachmentQuantityChan...
override void CheckForRoofLimited(float timeTresholdMS=3000)
Roof check for entity, limited by time (anti-spam solution)
override void SetWet(float value, bool allow_client=false)
override int GetQuantityMax()
class Land_Buoy extends House m_Light
class NoiseSystem NoiseParams()
class Paper extends ItemBase Paper
void PlayParticle(int particle_id=-1)
Method to tell the particle to start playing.
bool StopParticle(int flags=0)
Method to tell the particle to stop playing.
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor)
override void EEItemLocationChanged(notnull InventoryLocation oldLoc, notnull InventoryLocation newLoc)
void UnderObjectDecalSpawnComponent(notnull UnderObjectDecalSpawnSettings pSettings, notnull Object pParent)
Deferred version of AreaDamageLooped.
proto native int GetItemCount()
proto native EntityAI GetItem(int index)
represents base for cargo storage for entities
Super root of all classes in Enforce script.
static proto bool RaycastRV(vector begPos, vector endPos, out vector contactPos, out vector contactDir, out int contactComponent, set< Object > results=NULL, Object with=NULL, Object ignore=NULL, bool sorted=false, bool ground_only=false, int iType=ObjIntersectView, float radius=0.0, CollisionFlags flags=CollisionFlags.NEARESTCONTACT)
Raycasts world by given parameters.
void MakeSoundsOnClient(bool soundstate, CookingMethodType cookingMethod=CookingMethodType.NONE)
Wrapper class for managing sound through SEffectManager.
float GetRemainingEnergy()
void SetRemainingEnergy(float energy)
override bool CanExtinguishFire()
void InitializeTemperatureSources()
override bool CanCookOnStick()
override bool IsBaseFireplace()
override void RefreshFireplacePhysics()
vector GetSmokeEffectPosition()
override void EEItemAttached(EntityAI item, string slot_name)
override void ParticleSmallSmokeStart()
override bool IsPrepareToDelete()
override void SetCookingEquipment(ItemBase equipment)
override bool CanPutIntoHands(EntityAI parent)
override bool CanShowSmoke()
override void ParticleNormalSmokeStart()
override bool IsIndoorOven()
override void OnDebugSpawn()
override void OnIgnitedThis(EntityAI fire_source)
override void CreateAreaDamage()
override void OnVariablesSynchronized()
override void AfterStoreLoad()
override bool OnStoreLoad(ParamsReadContext ctx, int version)
override void OnStoreSave(ParamsWriteContext ctx)
override bool IsBarrelWithHoles()
override bool CanReleaseAttachment(EntityAI attachment)
proto native bool EnumerateInventory(InventoryTraversalType tt, out array< EntityAI > items)
enumerate inventory using traversal type and filling items array
proto native CargoBase GetCargo()
cargo
script counterpart to engine's class Inventory
proto native EntityAI GetParent()
returns parent of current inventory location
proto native int GetType()
returns type of InventoryLocation
static proto native int GetSlotIdFromString(string slot_name)
converts string to slot_id
provides access to slot configuration
override bool SetQuantity(float value, bool destroy_config=true, bool destroy_forced=false, bool allow_client=false, bool clamp_to_stack_max=true)
proto void AddNoisePos(EntityAI source_entity, vector pos, NoiseParams noise_params, float external_strenght_multiplier=1.0)
Legacy way of using particles in the game.
static const int CAMP_NO_IGNITE_WIND
static const int CAMP_STOVE_FIRE_START
static const int CAMP_SMALL_SMOKE
static const int CAMP_STEAM_EXTINGUISH_START
static const int CAMP_FIRE_START
static const int CAMP_NORMAL_SMOKE
static const int CAMP_STOVE_FIRE
static const int CAMP_STEAM_2END
static const int CAMP_SMALL_FIRE
static const int CAMP_FIRE_END
static const int CAMP_NORMAL_FIRE
static const int CAMP_STOVE_FIRE_END
The class that will be instanced (moddable)
proto bool Write(void value_out)
proto bool Read(void value_in)
static float GetParamFloat(string surface_name, string param_name)
original Timer deletes m_params which is unwanted
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.
static float Dot(vector v1, vector v2)
Returns Dot product of vector v1 and vector v2.
static const vector Forward
static proto native float Distance(vector v1, vector v2)
Returns the distance between tips of two 3D vectors.
Serializer ParamsReadContext
InventoryTraversalType
tree traversal type, for more see http://en.wikipedia.org/wiki/Tree_traversal
Serializer ParamsWriteContext
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
const float TEMP_COEF_FIREPLACE_COOLING
const float TEMP_COEF_FIREPLACE_HEATING
const float FIRE_ATTACHMENT_DAMAGE_PER_SECOND
various damage per second constants
static const float ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE
const int STATE_BADLY_DAMAGED
const int STATE_HOT_LVL_ONE
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
static proto float Max(float x, float y)
Returns bigger of two given values.
static proto float Acos(float c)
Returns angle in radians from cosinus.
static proto float Cos(float angle)
Returns cosinus of angle in radians.
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
static proto float Sin(float angle)
Returns sinus of angle in radians.
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...
proto native int dBodyGetInteractionLayer(notnull IEntity ent)
const int SAT_DEBUG_ACTION
vector GetPosition()
Get the world position of the Effect.
bool Contains(string sample)
Returns true if sample is substring of string.