68 super.EOnPostSimulate(other,timeSlice);
72 MiscGameplayFunctions.ThrowAllItemsInInventory(
this, 0);
81 if ( !super.CanReceiveAttachment(attachment, slotId) )
89 if ( FindAttachmentBySlotName(
"CookingTripod" ) ||
IsOven() )
101 if ( item.IsKindOf(
"Edible_Base" ) )
111 if (!
IsOven() && !GetHierarchyParent())
119 if ( !GetHierarchyParent() && !
IsBurning() )
130 if ( super.CanDisplayAttachmentSlot(slot_id) )
132 if ( slot_name !=
"CookingEquipment" || FindAttachmentBySlotName(
"CookingTripod" ) )
141 if ( !super.CanLoadAttachment(attachment) )
161 if ( item.IsKindOf(
"Edible_Base" ) )
167 if ( GetHierarchyParent() == NULL )
174 if ( GetHierarchyParent() )
185 if (!super.CanReleaseAttachment(attachment))
199 int stone_quantity = item.GetQuantity();
216 super.EEItemAttached(item, slot_name);
226 if (item_base.IsCookware())
238 bool edible_base_attached =
false;
241 case "DirectCookingA":
243 edible_base_attached =
true;
245 case "DirectCookingB":
247 edible_base_attached =
true;
249 case "DirectCookingC":
251 edible_base_attached =
true;
256 edible_base_attached =
true;
260 edible_base_attached =
true;
264 edible_base_attached =
true;
268 edible_base_attached =
true;
280 super.EEItemDetached(item, slot_name);
290 if (item_base.IsCookware())
293 item_base.RemoveAudioVisualsOnClient();
296 if (item_base.IsLiquidContainer())
297 item_base.RemoveAudioVisualsOnClient();
310 case "DirectCookingA":
313 case "DirectCookingB":
316 case "DirectCookingC":
342 super.SetCookingEquipment(equipment);
348 stand.LockToParent();
350 stand.UnlockFromParent();
356 super.OnBeforeTryDelete();
358 MiscGameplayFunctions.DropAllItemsInInventoryInBounds(
this,
m_HalfExtents);
370 if (!super.CanPutInCargo(parent))
391 if ( GetHierarchyParent() )
394 return super.CanReceiveItemIntoCargo( item );
399 if (!super.CanLoadItemIntoCargo( item ))
402 if ( GetHierarchyParent() )
411 if (!super.CanPutIntoHands(parent))
426 if ( !super.CanDisplayAttachmentCategory( category_name ) )
431 if ( category_name ==
"CookingEquipment" )
433 if ( ( category_name ==
"DirectCooking" ) || ( category_name ==
"Smoking" ) )
438 if ( category_name ==
"CookingEquipment" )
440 if ( ( category_name ==
"DirectCooking" ) || ( category_name ==
"Smoking" ) )
470 super.RefreshPhysics();
503 super.OnStoreSave(ctx);
505 if (
GetGame().SaveVersion() >= 110 )
517 if ( !super.OnStoreLoad(ctx, version) )
520 if ( version >= 110 )
540 super.AfterStoreLoad();
593 Man player = fire_source.GetHierarchyRootPlayer();
599 if ( fire_source.ClassName() ==
"Matchbox" )
603 else if ( fire_source.ClassName() ==
"Roadflare" )
607 else if ( fire_source.ClassName() ==
"HandDrillKit" )
621 Param1<bool> failure;
657 if ( !
IsOven() && !IsRoofAbove() )
694 if ( !
GetGame().IsMultiplayer() )
697 entity.GetInventory().GetCurrentInventoryLocation( loc );
698 player.GetInventory().ClearInventoryReservationEx( entity, loc );
703 player.ServerTakeEntityToTargetAttachment( fireplace, entity );
707 player.LocalTakeEntityToTargetAttachment( fireplace, entity );
711 fireplace.StartFire();
712 fireplace.OnIgnitedThis(fire_source);
725 entity.CheckForRoofLimited();
726 if (!entity.IsRoofAbove())
ActionBuildOvenCB ActionContinuousBaseCB ActionBuildOven()
ActionBuildStoneCircleCB ActionContinuousBaseCB ActionBuildStoneCircle()
ActionDismantleOvenCB ActionContinuousBaseCB ActionDismantleOven()
ActionDismantleStoneCircleCB ActionContinuousBaseCB ActionDismantleStoneCircle()
ActionPlaceObjectCB ActiondeployObjectCB ActionPlaceObject()
void AddAction(typename actionName)
const int ECE_PLACE_ON_SURFACE
Container_Base m_HalfExtents
void RefreshFireplaceVisuals()
void RemoveFromFireConsumables(FireConsumable fire_consumable)
ref UniversalTemperatureSourceSettings m_UTSSettings
static bool IsEntityOnInteriorSurface(notnull EntityAI entity_ai)
override void CheckForDestroy()
const string ANIMATION_OVEN
bool IsCeilingHighEnoughForSmoke()
void AddToFireConsumables(ItemBase item)
const string OBJECT_CLUTTER_CUTTER
const string ANIMATION_CAULDRON_HANDLE
const string ANIMATION_TRIPOD
bool IsFuel(ItemBase item)
Returns if item attached to fireplace is fuel.
bool IsOnInteriorSurface()
const float PARAM_SMALL_FIRE_TEMPERATURE
int PARTICLE_NORMAL_SMOKE
void StartFire(bool force_start=false)
ItemBase m_DirectCookingSlots[DIRECT_COOKING_SLOT_COUNT]
void SetIgniteFailure(bool failure)
ref UniversalTemperatureSourceLambdaFireplace m_UTSLFireplace
ref UniversalTemperatureSource m_UTSource
const string ANIMATION_COOKWARE_HANDLE
void ClearCookingEquipment()
DEPRECATED.
FireConsumable GetFireConsumableByItem(ItemBase item)
ItemBase m_SmokingSlots[SMOKING_SLOT_COUNT]
bool IsKindling(ItemBase item)
Returns if item attached to fireplace is kindling.
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)
const float PARAM_OUTDOOR_FIRE_TEMPERATURE
maximum fireplace temperature of a normal fire (degree Celsius)
override void CheckForRoofLimited(float timeTresholdMS=3000)
Roof check for entity, limited by time (anti-spam solution)
proto native void RPCSingleParam(Object target, int rpc_type, Param param, bool guaranteed, PlayerIdentity recipient=null)
see CGame.RPC
override ScriptCallQueue GetCallQueue(int call_category)
proto native Object CreateObjectEx(string type, vector pos, int iFlags, int iRotation=RF_DEFAULT)
Creates object of certain type.
proto native void ObjectDelete(Object obj)
override void OnBeforeTryDelete()
void ContactEvent(IEntity other, vector position)
void InitializeTemperatureSources()
override void SetActions()
override bool IsBaseFireplace()
static Fireplace IgniteEntityAsFireplace(notnull EntityAI entity, notnull EntityAI fire_source)
override void EOnTouch(IEntity other, int extra)
override void EOnContact(IEntity other, Contact extra)
override void RefreshFireplacePhysics()
override bool CanIgniteItem(EntityAI ignite_target=NULL)
override void EEItemAttached(EntityAI item, string slot_name)
override bool IsPrepareToDelete()
override void SetCookingEquipment(ItemBase equipment)
override bool CanObstruct()
override void RefreshPhysics()
override bool CanPutIntoHands(EntityAI parent)
override bool CanShowSmoke()
void DestroyClutterCutter(Object clutter_cutter)
override bool CanBeIgnitedBy(EntityAI igniter=NULL)
bool m_ContactEventProcessing
override bool CanDisplayAttachmentSlot(int slot_id)
void EOnPostSimulate(IEntity other, float timeSlice)
override bool HasFlammableMaterial()
override bool CanPutInCargo(EntityAI parent)
override void OnIgnitedTarget(EntityAI target_item)
override bool CanReceiveAttachment(EntityAI attachment, int slotId)
override bool CanLoadAttachment(EntityAI attachment)
override bool IsIgnited()
override void OnIgnitedThis(EntityAI fire_source)
override bool CanAssignAttachmentsToQuickbar()
static bool CanIgniteEntityAsFireplace(notnull EntityAI entity)
bool m_ContactDeletionProcessing
override bool CanReceiveItemIntoCargo(EntityAI item)
override bool CanProxyObstruct()
override void AfterStoreLoad()
override float HeightStartCheckOverride()
override bool IsThisIgnitionSuccessful(EntityAI item_source=NULL)
override bool OnStoreLoad(ParamsReadContext ctx, int version)
override void EEItemDetached(EntityAI item, string slot_name)
override bool CanRemoveFromCargo(EntityAI parent)
override void OnStoreSave(ParamsWriteContext ctx)
override bool CanDisplayAttachmentCategory(string category_name)
override bool CanReleaseAttachment(EntityAI attachment)
override bool CanLoadItemIntoCargo(EntityAI item)
static proto native owned string GetSlotName(int id)
converts slot_id to string
provides access to slot configuration
static const int CAMP_SMALL_SMOKE
static const int CAMP_FIRE_START
static const int CAMP_NORMAL_SMOKE
static const int CAMP_STEAM_2END
static const int CAMP_SMALL_FIRE
static const int CAMP_FIRE_END
static const int CAMP_NORMAL_FIRE
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 bool Write(void value_out)
proto bool Read(void value_in)
static void SendPlayerIgnatedFireplace(Man player, EFireIgniteType ignite_type)
original Timer deletes m_params which is unwanted
Serializer ParamsReadContext
proto native CGame GetGame()
Serializer ParamsWriteContext
vector Position
Position of the contact point (world space)
EntityEvent
Entity events for event-mask, or throwing event from code.
static const float ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE
proto native bool dBodyIsActive(notnull IEntity ent)
class JsonUndergroundAreaTriggerData GetPosition