19 if ( !target )
return false;
21 Object target_object = target.GetObject();
22 string action_selection = target_object.GetActionComponentName( target.GetComponentIndex() );
29 vector fire_point_pos_world, fire_point_rot_world;
36 vector diff = fire_point_rot_world - fire_point_pos_world;
39 float dotp =
vector.
Dot(
"0 0 1" , diff );
41 if ( ( diff[0] < 0 ) && ( diff[2] < 0 ) )
42 rot_deg = 360.0 - rot_deg;
43 else if ( ( diff[0] < 0 ) && ( diff[2] > 0 ) )
44 rot_deg = 360.0 - rot_deg;
49 float fire_point_dist =
vector.
Distance( fire_point_pos_world, player.GetPosition() );
50 if ( fire_point_dist <= 2 )
52 player.SetLastFirePoint( fire_point_pos_world );
53 player.SetLastFirePointIndex( fire_point_index );
54 player.SetLastFirePointRot( rot_deg );
66 Object targetObject = action_data.m_Target.GetObject();
71 lambda.SetTransferParams(
true,
true,
true);
72 action_data.m_Player.ServerReplaceItemInHandsWithNewElsewhere(lambda);
95 OverrideNewLocation( gnd );
102 vector smoke_point_pos_world = target.ModelToWorld( smoke_point_pos );
108 super.CopyOldPropertiesToNew( old_item, new_item );
111 if ( fireplace_indoor )
121 fireplace_indoor.SetOrientation( fprot );
124 fireplace_indoor.Synchronize();
ActionPlaceFireplaceIndoor m_FirePointIndex
void FireplaceToIndoorsLambda(EntityAI old_item, string new_item_type, PlayerBase player, vector pos, Object target)
class ActionTargets ActionTarget
override void CopyOldPropertiesToNew(notnull EntityAI old_item, EntityAI new_item)
bool IsInReach(PlayerBase player, ActionTarget target, float maxDistance=1.0)
ref CCIBase m_ConditionItem
ref CCTBase m_ConditionTarget
override bool IsLockTargetOnUse()
void ActionPlaceFireplaceIndoor()
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void CreateConditionComponents()
override void OnExecuteServer(ActionData action_data)
void ActionSingleUseBase()
string GetFireplaceType(int firePointIndex)
static bool CanPlaceFireplaceInSelectedSpot(Object building, int fire_point_index, out vector fire_point_pos_world, out vector fire_point_rot_world)
void SetSmokePointPosition(vector smoke_point_pos)
static const string FIREPOINT_PLACE_ROT
static int GetFirePointIndex(string action_selection)
static const string FIREPOINT_ACTION_SELECTION
void SetFirePointIndex(int fire_point_index)
static const string FIREPOINT_SMOKE_POSITION
proto native void SetGround(EntityAI e, vector mat[4])
sets current inventory location type to Ground with transformation mat
static float Dot(vector v1, vector v2)
Returns Dot product of vector v1 and vector v2.
proto float Normalize()
Normalizes vector. Returns length.
static proto native float Distance(vector v1, vector v2)
Returns the distance between tips of two 3D vectors.
DayZPlayerConstants
defined in C++
static void MatrixIdentity4(out vector mat[4])
Creates identity matrix.
static proto float Acos(float c)
Returns angle in radians from cosinus.
static const float RAD2DEG
bool Contains(string sample)
Returns true if sample is substring of string.