264 RegisterNetSyncVariableBool(
"m_IsBurning" );
265 RegisterNetSyncVariableBool(
"m_HasAshes" );
266 RegisterNetSyncVariableBool(
"m_IsOven" );
267 RegisterNetSyncVariableBool(
"m_HasStoneCircle" );
268 RegisterNetSyncVariableBool(
"m_RoofAbove" );
270 RegisterNetSyncVariableBool(
"m_IsSoundSynchRemote" );
271 RegisterNetSyncVariableBool(
"m_IsPlaceSound" );
272 RegisterNetSyncVariableBool(
"m_NoIgnite" );
313 super.EEItemAttached(item, slot_name);
328 super.OnItemLocationChanged(old_owner, new_owner);
336 switch (attachment.Type())
341 EntityAI ent = GetInventory().FindAttachment(slot);
349 vector direction = ent.GetDirection();
353 if (direction[0] < 0)
360 GetInventory().DropEntityInBounds(
InventoryMode.SERVER,
this, ent,
"2 0 2", angle, cos, sin);
372 super.EEDelete(parent);
385 super.OnStoreSave(ctx);
402 if ( !super.OnStoreLoad(ctx, version) )
440 super.AfterStoreLoad();
473 super.OnVariablesSynchronized();
602 super.EECargoOut(item);
641 if (
vector.
DistanceSq(player.GetPosition(),
this.GetPosition()) > lightDist * lightDist)
647 GetLightEntity().FadeBrightnessTo(FireplaceLight.m_FireplaceBrightness, 5);
799 switch ( fire_state )
1037 if ( !particle &&
GetGame() && ( !
GetGame().IsDedicatedServer() ) )
1041 particle =
ParticleManager.GetInstance().PlayOnObject( particle_type,
this, pos );
1045 particle =
ParticleManager.GetInstance().PlayInWorld( particle_type, pos );
1057 if ( particle &&
GetGame() && ( !
GetGame().IsDedicatedServer() ) )
1128 float actual_height;
1154 float actual_height;
1240 from[1] = from[1] + 1.0;
1244 int contactComponent;
1246 bool hit =
DayZPhysics.
RaycastRV( from, to, contactPos, contactDir, contactComponent, NULL, NULL,
this );
1255 actual_height =
Math.
Clamp( actual_height, 0, 36 );
1257 air_res = ( 6 - actual_height ) * 0.33;
1267 return Vector( 0, 0.05, 0 );
1272 return Vector( 0, 0.05, 0 );
1312 PlaySoundSet(
m_SoundFire,
"ExtinguishByWind_SoundSet", 0, 0 );
1334 if (!fireConsumableType)
1338 for (
int i = 0; i < count; ++i)
1345 if (fireConsumableType)
1354 if (fire_consumable)
1357 delete fire_consumable;
1418 if (!fireConsumable)
1437 if (item.IsAnyInherited({ItemBook, Paper, GiftWrapPaper, EyeMask_ColorBase}))
1445 if (item.GetQuantity() <= 1)
1455 item.AddQuantity(-1);
1467 int attachmentsCount = GetInventory().AttachmentCount();
1468 int kindlingCount = 0;
1470 for (
int i = 0; i < attachmentsCount; ++i)
1478 return kindlingCount;
1484 int attachmentsCount = GetInventory().AttachmentCount();
1487 for (
int i = 0; i < attachmentsCount; ++i)
1501 if (!fireConsumableType)
1505 for (
int i = 0; i < count; ++i)
1512 return fireConsumableType && fireConsumableType.
IsKindling();
1519 if (!fireConsumableType)
1523 for (
int i = 0; i < count; ++i)
1530 return fireConsumableType && !fireConsumableType.
IsKindling();
1536 return GetAttachmentByType(item_type) != null;
1544 return item.GetQuantity() >= quantity;
1550 return GetInventory().AttachmentCount() == 1;
1606 return attached_item && attached_item.GetQuantity() > 0;
1705 if (MiscGameplayFunctions.IsUnderRoof(
this))
1719 SetAffectPathgraph(
false,
true);
1755 m_NoisePar.LoadFromPath(
"CfgVehicles FireplaceBase NoiseFireplaceSpecial");
1757 m_NoisePar.LoadFromPath(
"CfgVehicles FireplaceBase NoiseFireplaceBase");
1764 float temperature_modifier = 0;
1848 float cook_item_temp;
1909 SetAffectPathgraph(
false,
false);
1940 float wetness =
GetWet();
1942 float temperature_modifier = 0;
1986 float cook_item_temp;
2050 cooking_pot.RemoveAudioVisualsOnClient();
2061 cookingpot.RemoveAudioVisualsOnClient();
2065 fryingpan.RemoveAudioVisualsOnClient();
2069 itsfood.MakeSoundsOnClient(
false );
2107 switch (slot_item.Type())
2121 slot_item.SetTemperature(cookEquipTemp);
2148 CargoBase cargo = GetInventory().GetCargo();
2156 if (item.GetHealth(
"",
"Health") <= 0 && !item.IsKindOf(
"Grenade_Base"))
2169 for (
int j = 0; j < GetInventory().AttachmentCount(); ++j)
2171 ItemBase attachment =
ItemBase.Cast(GetInventory().GetAttachmentFromIndex(j));
2191 item.SetTemperature(temperature);
2228 float timerCoef = 1.0;
2238 switch (item.Type())
2282 float wetness = item.GetWet();
2283 wetness = wetness + amount;
2285 item.SetWet(wetness);
2292 float wetness =
GetWet();
2293 wetness = wetness + amount;
2301 temperature = temperature * ( 1 - ( wetness * 0.5 ) );
2321 m_AreaDamage.SetExtents(
"-0.30 0 -0.30",
"0.30 0.75 0.30");
2324 m_AreaDamage.SetHitZones( {
"Head",
"Torso",
"LeftHand",
"LeftLeg",
"LeftFoot",
"RightHand",
"RightLeg",
"RightFoot" } );
2362 return ( wind_speed >= wind_speed_threshold );
2378 return ( entity_ai.GetWet() >=
FireplaceBase.PARAM_MAX_WET_TO_IGNITE );
2401 return !MiscGameplayFunctions.IsUnderRoof(
this,
FireplaceBase.MIN_CEILING_HEIGHT );
2418 vector fireplace_pos = entity_ai.GetPosition();
2419 if (
GetGame().SurfaceIsSea( fireplace_pos[0], fireplace_pos[2] ) )
2423 else if (
GetGame().SurfaceIsPond( fireplace_pos[0], fireplace_pos[2] ) )
2429 string surface_type;
2431 return surface_type.
Contains(
"water");
2444 string surface_type;
2445 vector fireplace_pos = entity_ai.GetPosition();
2447 return ( (
GetGame().ConfigGetInt(
"CfgSurfaces " + surface_type +
" interior" ) ) == 1 );
2457 return ( GetInventory().GetCargo().GetItemCount() == 0 && GetInventory().AttachmentCount() == 0 );
2463 return ( GetInventory().GetCargo().GetItemCount() == 0 );
2474 return GetAnimationPhase(anim_phase) == 0;
2480 if (
GetGame().IsBoxCollidingGeometry(GetWorldPosition() +
Vector(0, size[1] * 0.5 + 0.1, 0), GetDirection().VectorToAngles(), size, ObjIntersect.View, ObjIntersect.Geom, {this}, objs))
2482 foreach (
Object obj : objs)
2494 if (!otherDestination || otherDestination.
GetParent() ==
this)
2509 const float size = 0.6;
2562 super.OnPlacementComplete( player, position, orientation );
2568 cc_object.SetOrientation( orientation );
2577 return "placeFireplace_SoundSet";
2592 string quantityConfigPath =
string.Format(
"CfgVehicles %1 varQuantityMax", fireConsumableType.GetItemType().ToString());
2593 string stackMaxConfigPath =
string.Format(
"CfgSlots Slot_%1 stackMax", fireConsumableType.GetAttSlot());
2599 if (
GetGame().ConfigIsExisting(stackMaxConfigPath))
2613 m_TotalEnergy += quantityMax * fireConsumableType.GetEnergy();
2627 float remainingEnergy;
2631 float quantity = fireConsumable.GetItem().GetQuantity();
2634 remainingEnergy += ((quantity - 1) * fireConsumable.GetEnergy()) + fireConsumable.GetRemainingEnergy();
2639 remainingEnergy += fireConsumable.GetRemainingEnergy();
2650 super.OnAttachmentQuantityChanged(item);
2657 if (!super.CanReleaseAttachment(attachment))
2673 string path_cooking_equipment =
string.Format(
"%1 %2 GUIInventoryAttachmentsProps CookingEquipment attachmentSlots",
CFG_VEHICLESPATH,
GetType());
2675 string path_direct_cooking =
string.Format(
"%1 %2 GUIInventoryAttachmentsProps DirectCooking attachmentSlots",
CFG_VEHICLESPATH,
GetType());
2676 if (
GetGame().ConfigIsExisting(path_cooking_equipment) &&
GetGame().ConfigIsExisting(path_direct_cooking) )
2682 for (
int i = 0; i < arr_cooking_equipment.Count(); i++ )
2691 for ( i = 0; i < arr_direct_cooking.Count(); i++ )
2709 super.OnRPC( sender, rpc_type, ctx );
2711 ref Param1<bool> p =
new Param1<bool>(
false);
2715 bool failure = p.param1;
2720 case FirePlaceFailure.WIND:
2731 case FirePlaceFailure.WET:
2752 ItemBase firewood =
ItemBase.Cast(GetInventory().CreateInInventory(
"Firewood"));
2753 firewood.SetQuantity(firewood.GetQuantityMax());
2755 ItemBase sticks =
ItemBase.Cast(GetInventory().CreateInInventory(
"WoodenStick"));
2756 sticks.SetQuantity(sticks.GetQuantityMax());
2759 stone.SetQuantity(stone.GetQuantityMax());
2761 GetInventory().CreateInInventory(
"Rag");
2763 SpawnEntityOnGroundPos(
"PetrolLighter",
GetPosition());
2766 override void GetDebugButtonNames(out
string button1, out
string button2, out
string button3, out
string button4)
2769 button2 =
"Extinguish";
2774 switch (button_index)
eBleedingSourceType GetType()
ref NoiseParams m_NoisePar
void AreaDamageManager(EntityAI parent)
const int ECE_PLACE_ON_SURFACE
Container_Base m_HalfExtents
static const float PARAM_BURN_DAMAGE_COEF
protected ExplosiveLight m_Light
light
override void EEDelete(EntityAI parent)
protected ref UniversalTemperatureSourceSettings m_UTSSettings
float GetAirResistanceForSmokeParticles(float actual_height)
const int MAX_TEMPERATURE_TO_DISMANTLE_OVEN
minimum amount of stones for oven
protected void ParticleFireStartStart()
protected ref Timer m_HeatingTimer
void RefreshFireplaceVisuals()
protected void ParticleSteamEndStop()
protected void ParticleSteamExtinguishingStop()
protected bool m_NoIgnite
const string MESSAGE_BURY_ASHES_FAILED_BURNING
ItemBase GetCookingEquipment()
const string SOUND_FIRE_EXTINGUISHING
static bool IsEntityOnInteriorSurface(notnull EntityAI entity_ai)
protected void StopHeating()
bool CanBuildStoneCircle()
const float TEMPERATURE_LOSS_MP_OVEN
const float PARAM_HEAT_THROUGH_AIR_COEF
radius in which objects are heated by fire
bool DirectCookingSlotsInUse()
protected void ParticleSmallFireStart()
protected void BurnItemsInFireplace()
protected void CookOnDirectSlot(ItemBase slot_item, float temp_equip, float temp_ext)
protected void SoundFireLightStart()
protected void SoundFireHeavyStart()
const string ANIMATION_OVEN
const int DIRECT_COOKING_SLOT_COUNT
direct cooking slots
const int TIMER_HEATING_UPDATE_INTERVAL
protected ref map< ItemBase, ref FireConsumable > m_FireConsumables
void LockOvenAttachments(bool lock)
protected void ParticleNormalSmokeStop()
const string MESSAGE_IGNITE_NO_KINDLING
const int TIMER_COOLING_UPDATE_INTERVAL
update interval duration of heating process (seconds)
protected int PARTICLE_OVEN_FIRE_START
const string MESSAGE_IGNITE_IN_WATER
protected ref Timer m_CoolingTimer
protected void SoundFireWindyNoIgniteStart()
const float PARAM_TEMPERATURE_DECREASE
how much will temperature increase when fireplace is burning (degree Celsius per second)
protected ref FireConsumable m_ItemToConsume
const float PARAM_TEMPERATURE_INCREASE
minimum fireplace temperature under which the fireplace is inactive (degree Celsius)
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
protected void ParticleSmallSmokeStop()
const string SOUND_FIRE_HEAVY
protected float GetTemperatureLossMP()
protected float GetFireConsumableTypeEnergy(ItemBase item)
protected void SetFuelBurnRateMP(float value)
protected void ParticleSmallFireStop()
const string MESSAGE_BURY_ASHES_FAILED_NOT_EMPTY
protected EffectSound m_SoundFireLoop
protected int PARTICLE_SMALL_FIRE
protected void SoundFireWetNoIgniteStart()
static bool IsEntityOnWaterSurface(notnull EntityAI entity_ai)
const float TEMPERATURE_LOSS_MP_DEFAULT
min height of ceiling for fire to be ignited
protected FireplaceFireState m_LastFireState
const string SOUND_FIRE_LIGHT
protected ItemBase m_SmokingSlots[SMOKING_SLOT_COUNT]
enum FireplaceFireState m_IsBurning
bool IsCeilingHighEnoughForSmoke()
override bool IsFireplace()
const string MESSAGE_IGNITE_IGNIT_ITEM_DAMAGED
const string MESSAGE_IGNITE_RAIN
protected void SetFireState(FireplaceFireState state)
protected Object m_ClutterCutter
const float PARAM_ITEM_HEAT_MIN_TEMP
value for calculating temperature increase on each heat update interval (degree Celsius)
protected void RemoveFromFireConsumables(FireConsumable fire_consumable)
protected void TransferHeatToNearPlayers()
DEPRECATED.
protected int PARTICLE_OVEN_FIRE_END
protected bool IsFuel(ItemBase item)
Returns if item attached to fireplace is fuel.
const float PARAM_MIN_TEMP_TO_REIGNITE
maximum wetness value when the fireplace can be ignited
override void OnDebugButtonPressServer(int button_index)
protected ref AreaDamageManager m_AreaDamage
ATTACHMENT_EYEMASK_COLORBASE
protected bool m_HasStoneCircle
protected float m_TotalEnergy
const string MESSAGE_CANNOT_DISMANTLE_OVEN
protected bool m_HasAshes
void StopFire(FireplaceFireState fire_state=FireplaceFireState.END_FIRE)
const string OBJECT_CLUTTER_CUTTER
const string ANIMATION_CAULDRON_HANDLE
protected void AddTemperatureToItemByFire(ItemBase item)
protected void ParticleFireWindyNoIgniteStart()
protected ItemBase m_CookingEquipment
protected int PARTICLE_FIRE_END
protected FireConsumable GetItemToConsume()
const float DIRECT_COOKING_SPEED
const int LIFETIME_FIREPLACE_STONE_OVEN
const float PARAM_MAX_TRANSFERED_TEMPERATURE
DEPRECATED value for calculation of heat transfered from fireplace through air to player (environment...
override void OnAttachmentRuined(EntityAI attachment)
const string ANIMATION_TRIPOD
protected int PARTICLE_NO_IGNITE_WIND
protected EffectSound m_SoundFire
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
protected int PARTICLE_SMALL_SMOKE
protected float m_TemperatureLossMP
protected Particle m_ParticleSteamExtinguishing
FireplaceLight GetLightEntity()
protected void SoundFireExtinguishingStart()
protected FireConsumable GetFireConsumableByItem(ItemBase item)
const string MESSAGE_IGNITE_WIND
const float TEMPERATURE_LOSS_MP_STONES
const string MATERIAL_FIREPLACE_GLOW
protected int PARTICLE_FIRE_START
protected void StartCooling()
protected ref UniversalTemperatureSourceLambdaFireplace m_UTSLFireplace
protected vector GetFireEffectPosition()
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)
protected Particle m_ParticleFireStart
protected float m_FuelBurnRateMP
determines how fast will the fireplace loose its temperature when cooling (lower is better)
protected int PARTICLE_NORMAL_FIRE
bool CanDismantleStoneCircle()
const string MESSAGE_IGNITE_UNDER_LOW_ROOF
const float PARAM_MIN_FIRE_TEMPERATURE
maximum fireplace temperature of a normal fire (degree Celsius)
protected void AddDamageToItemByFire(ItemBase item, bool can_be_ruined)
bool IsInAnimPhase(string anim_phase)
const float MIN_CEILING_HEIGHT
maximum temperature for dismantling oven
const float PARAM_MAX_ITEM_HEAT_TEMP_INCREASE
minimum temperature for items that can be heated in fireplace cargo or as attachments (degree Celsius...
const string MATERIAL_FIREPLACE_NOGLOW
const string ANIMATION_INVENTORY
protected void ParticleWetNoIgniteStart()
protected void ParticleFireEndStart()
protected int GetFuelCount()
Returns count of all fuel type items (define in 'm_FuelTypes') attached to fireplace.
protected void SoundFireNoFireStart()
protected void AddTemperatureToFireplace(float amount)
DEPRECATED.
const string ANIMATION_STONES
bool IsOnInteriorSurface()
protected void ~FireplaceBase()
protected bool m_RoofAbove
const float PARAM_SMALL_FIRE_TEMPERATURE
protected int GetFireState()
protected void ParticleFireEndStop()
Cooking GetCookingProcess()
protected void AddToFireConsumables(ItemBase item)
const float PARAM_WET_COOLING_DECREASE_COEF
value for calculating wetness loss during heating process
protected ref UniversalTemperatureSource m_UTSource
protected void CookWithEquipment()
const string MESSAGE_REIGNITE_TOO_WET
const int SMOKING_SLOT_COUNT
protected int PARTICLE_STEAM_END
const float FUEL_BURN_RATE_OVEN
const string MESSAGE_BURY_ASHES_FAILED_TOO_HOT
protected void CalcAndSetQuantity()
protected FireConsumable SetItemToConsume()
protected void ParticleNormalFireStop()
const string MESSAGE_CANNOT_BUILD_OVEN
void StartFire(bool force_start=false)
protected void CalcAndSetTotalEnergy()
const string ANIMATION_WOOD
void SetIgniteFailure(bool failure)
protected void SetBurningState(bool is_burning)
const float FUEL_BURN_RATE_DEFAULT
const float PARAM_BURN_WET_THRESHOLD
maximum rain value when the fireplace can be ignited
protected Particle m_ParticleSmallFire
override bool DisassembleOnLastDetach()
const float FUEL_BURN_RATE_STONES
void SetStoneCircleState(bool has_stonecircle)
protected void StopAllParticlesAndSounds()
protected float m_LightDistance
static bool IsRainingAboveEntity(notnull EntityAI entity_ai)
void SetExtinguishingState()
protected Particle m_ParticleFireEnd
protected void SpendFireConsumable(float amount)
const string ANIMATION_KINDLING
protected void AddDamageToItemByFireEx(ItemBase item, bool can_be_ruined, bool pAttachment)
protected void ParticleSteamExtinguishingStart()
const string MESSAGE_IGNITE_TOO_WET
protected void ParticleWetNoIgniteStop()
const float PARAM_IGNITE_RAIN_THRESHOLD
minimum fireplace temperature under which the fireplace can be reignited using air only (degree Celsi...
protected bool IsKindling(ItemBase item)
Returns if item attached to fireplace is kindling.
bool IsFacingFireplace(PlayerBase player)
DEPRECATED.
protected void ParticleFireStartStop()
bool GetCeilingHeight(out float actual_height)
const float PARAM_COOKING_EQUIP_MAX_TEMP
temperature threshold for starting coooking process (degree Celsius)
const float PARAM_ITEM_HEAT_TEMP_INCREASE_COEF
value for calculating damage on items located in fireplace cargo
int GetAttachedStonesCount()
const float PARAM_WET_INCREASE_COEF
maximum wetness value when the fireplace is able to burn
const string ANIMATION_COOKWARE_HANDLE
protected Particle m_ParticleSmallSmoke
const float PARAM_MAX_WET_TO_IGNITE
how much will temperature decrease when fireplace is cooling (degree Celsius per second)
static protected ref map< typename, ref FireConsumableType > m_FireConsumableTypes
protected void SoundFireStop()
protected void ParticleSteamEndStart()
override void EECargoOut(EntityAI item)
protected int PARTICLE_NORMAL_SMOKE
protected void AddWetnessToItem(ItemBase item, float amount)
protected Particle m_ParticleNormalSmoke
const float IGNITE_WIND_THRESHOLD
bool IsSpaceFor(vector size)
enum FireplaceFireState WIND
void ClearCookingEquipment()
DEPRECATED.
const string ANIMATION_STICKS
const float PARAM_FULL_HEAT_RADIUS
maximum value of temperature of items in fireplace when heating (degree Celsius)
const string ANIMATION_STONE
protected void StartHeating()
bool IsItemAttachedQuantity(typename item_type, float quantity)
const float PARAM_COOKING_EQUIP_TEMP_INCREASE
maximum temperature of attached cooking equipment (degree Celsius)
protected Particle m_ParticleNormalFire
protected void SetAshesState(bool has_ashes)
bool IsItemTypeAttached(typename item_type)
bool HasLastFuelKindlingAttached()
override void GetDebugButtonNames(out string button1, out string button2, out string button3, out string button4)
protected float GetFuelBurnRateMP()
protected void SoundFireExtinguishedStart()
protected void RefreshFireParticlesAndSounds(bool force_refresh)
protected void ParticleNormalFireStart()
void SetOvenState(bool is_oven)
protected void StopCooling()
protected FireplaceFireState m_FireState
enum FireplaceFireState WET
protected Particle m_ParticleSteamEnd
const string MESSAGE_BURY_ASHES_FAILED_SURFACE
protected void SetTemperatureLossMP(float value)
const float PARAM_WET_HEATING_DECREASE_COEF
value for calculating of wetness that fireplace gain when raining
const int MIN_STONES_TO_BUILD_CIRCLE
protected int PARTICLE_STEAM_EXTINGUISHING
const string ANIMATION_BURNT_WOOD
const string MESSAGE_REIGNITE_NO_KINDLING
void SetLightEntity(FireplaceLight light)
protected void SmokeOnSmokingSlot(ItemBase slot_item, float temp_equip, float temp_ext)
const float PARAM_COOKING_TEMP_THRESHOLD
cooking
const string SOUND_FIRE_NO_FIRE
protected int m_OvenAttachmentsLockState
const float SMOKING_SPEED
protected int PARTICLE_OVEN_FIRE
protected void SetBurntFirewood()
override bool CanSwapEntities(EntityAI otherItem, InventoryLocation otherDestination, InventoryLocation destination)
protected int GetKindlingCount()
Returns count of all kindling type items (define in 'm_KindlingTypes') attached to fireplace.
void AddWetnessToFireplace(float amount)
protected ItemBase m_DirectCookingSlots[DIRECT_COOKING_SLOT_COUNT]
protected ref Cooking m_CookingProcess
determines how fast will the fuel item burn before spending (lower is better)
override bool IsHologram()
void OnAttachmentQuantityChanged(ItemBase item)
Called on server side when some attachment's quantity is changed. Call super.OnAttachmentQuantityChan...
override void OnItemLocationChanged(EntityAI old_owner, EntityAI new_owner)
protected bool CanHaveTemperature()
protected bool CanHaveWetness()
override void OnPlacementComplete(Man player, vector position="0 0 0", vector orientation="0 0 0")
override float GetTemperature()
override void SetWet(float value, bool allow_client=false)
void SetIsPlaceSound(bool is_place_sound)
bool SetQuantity(float value, bool destroy_config=true, bool destroy_forced=false, bool allow_client=false, bool clamp_to_stack_max=true)
Set item quantity[related to varQuantity... config entry], destroy_config = true > if the quantity re...
override int GetQuantityMax()
class NoiseSystem NoiseParams()
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)
void OnRPC(float stamina, float stamina_cap, bool cooldown)
deprecated use, StaminaHandler uses SyncJunctures now
class JsonUndergroundAreaTriggerData GetPosition
Deferred version of AreaDamageLooped.
proto void SurfaceGetType3D(float x, float y, float z, out string type)
proto native Object CreateObjectEx(string type, vector pos, int iFlags, int iRotation=RF_DEFAULT)
Creates object of certain type.
proto native float ConfigGetFloat(string path)
Get float value from config on path.
proto native DayZPlayer GetPlayer()
override ScriptCallQueue GetCallQueue(int call_category)
proto native void ConfigGetTextArray(string path, out TStringArray values)
Get array of strings from config on path.
proto native bool ConfigIsExisting(string path)
proto native Weather GetWeather()
Returns weather controller object.
proto native NoiseSystem GetNoiseSystem()
represents base for cargo storage for entities
proto native int GetItemCount()
proto native EntityAI GetItem(int index)
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.
Wrapper class for managing sound through SEffectManager.
void SetRemainingEnergy(float energy)
float GetRemainingEnergy()
override void OnDebugSpawn()
override bool IsBarrelWithHoles()
override protected vector GetSmokeEffectPosition()
override bool IsBaseFireplace()
override void RefreshFireplacePhysics()
override void SetCookingEquipment(ItemBase equipment)
override void OnStoreSave(ParamsWriteContext ctx)
override bool CanExtinguishFire()
override void ParticleNormalSmokeStart()
override bool CanReleaseAttachment(EntityAI attachment)
override void OnIgnitedThis(EntityAI fire_source)
override string GetPlaceSoundset()
override void AfterStoreLoad()
override bool OnStoreLoad(ParamsReadContext ctx, int version)
override void EEItemAttached(EntityAI item, string slot_name)
override bool IsPrepareToDelete()
override bool CanShowSmoke()
override void OnVariablesSynchronized()
override bool IsIndoorOven()
override void ParticleSmallSmokeStart()
override bool IsFireplaceIndoor()
script counterpart to engine's class Inventory
proto native EntityAI GetAttachmentFromIndex(int index)
proto native int AttachmentCount()
Returns count of attachments attached to this item.
proto native EntityAI GetParent()
returns parent of current inventory location
provides access to slot configuration
static proto native int GetSlotIdFromString(string slot_name)
converts string to slot_id
override bool CanBeCooked()
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.
void SetParameter(int emitter, int parameter, float value)
Set the value of a parameter of an emitor in the particle.
static const int CAMP_STOVE_FIRE
static const int CAMP_STOVE_FIRE_END
static const int CAMP_STEAM_EXTINGUISH_START
static const int CAMP_FIRE_START
static const int CAMP_FIRE_END
static const int CAMP_STOVE_FIRE_START
static const int CAMP_NORMAL_FIRE
static const int CAMP_NORMAL_SMOKE
static const int CAMP_SMALL_FIRE
static const int CAMP_NO_IGNITE_WIND
static const int CAMP_STEAM_2END
static const int CAMP_SMALL_SMOKE
The class that will be instanced (moddable)
proto void CallLater(func fn, int delay=0, bool repeat=false, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
proto void Call(func fn, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
Serialization general interface. Serializer API works with:
proto bool Write(void value_out)
proto bool Read(void value_in)
original Timer deletes m_params which is unwanted
void SetSmallFireplaceTemperatureMax(int value)
void SetFuelCount(int value)
void SetNormalFireplaceTemperatureMax(int value)
void SetCurrentTemperature(float temperature)
float m_TemperatureMax
min temperature you can get from the TemperatureSource
bool m_AffectStat
update is called manually (ex. own tick of parent entity)
float m_RangeFull
temperature cap that will limit the return value from GetTemperature method
bool m_ManualUpdate
if the Update is running periodically
float m_TemperatureMin
how often the Update is ticking
float m_RangeMax
range where the full temperature is given to receiver
float m_TemperatureCap
max temperature you can get from the TemperatureSource
proto native float GetWindMaximumSpeed()
Returns maximal wind speed in metre per second.
proto native float GetWindSpeed()
Returns actual wind speed in metre per second.
proto native Rain GetRain()
Returns a rain phenomenon object.
proto native float GetActual()
Returns actual value of phenomenon in range <0, 1>.
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
static proto native float Distance(vector v1, vector v2)
Returns the distance between tips of two 3D vectors.
static const vector Forward
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.
proto native CGame GetGame()
const float FIRE_ATTACHMENT_DAMAGE_PER_SECOND
various damage per second constants
const int STATE_BADLY_DAMAGED
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
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 AbsFloat(float f)
Returns absolute value.
static proto float Sin(float angle)
Returns sinus of angle in radians.
proto native int dBodyGetInteractionLayer(notnull IEntity ent)
bool Contains(string sample)
Returns true if sample is substring of string.