20 vector ground_position = position;
21 ground_position[1] =
g_Game.SurfaceY(ground_position[0],ground_position[2]);
25 if (
m_ActionData.m_MainItem.GetInventory().GetCurrentInventoryLocation( source ) )
28 m_ActionData.m_Player.PredictiveTakeToDst(source, destination);
33 if (
m_ActionData.m_MainItem.GetInventory().GetCurrentInventoryLocation( source ) )
36 m_ActionData.m_Player.PredictiveTakeToDst(source, destination);
86 if ( !player.IsPlacingLocal() )
97 if ( super.SetupAction(player, target, item, action_data, extra_data ))
106 super.OnStartServer(action_data);
114 Param1<bool> play =
new Param1<bool>(
false );
122 super.OnEndServer(action_data);
126 if ( action_data.m_MainItem.IsInherited(
TentBase ) )
128 RepackLambda lambda_back_pack =
new RepackLambda(action_data.m_MainItem,
"LargeTentBackPack", action_data.m_Player);
129 action_data.m_Player.ServerReplaceItemElsewhereWithNewInHands(lambda_back_pack);
132 if ( action_data.m_MainItem.IsInherited(
Clothing ) )
135 action_data.m_Player.ServerReplaceItemElsewhereWithNewInHands(lambda_tent);
140 if (
g_Game.IsMultiplayer() )
142 if ( action_data.m_MainItem )
144 action_data.m_Player.ServerTakeEntityToHands( action_data.m_MainItem );
149 if ( action_data.m_MainItem )
151 action_data.m_Player.LocalTakeEntityToHands( action_data.m_MainItem );
159 if ( item.IsHeavyBehaviour() )
163 else if ( item.IsOneHandedBehaviour() )
167 else if ( item.IsTwoHandedBehaviour() )
173 Print(
"Error: check " + item +
" behaviour");
179 if ( action_data.m_Player.GetItemInHands() )
185 Param1<bool> play =
new Param1<bool>(
false );
186 if ( !
g_Game.IsMultiplayer() )
188 if ( action_data.m_Player.GetItemInHands() )
192 if ( action_data.m_Player.GetItemInHands() )
194 play =
new Param1<bool>(
true );
203 Param1<bool> play =
new Param1<bool>(
false );
210 return " re-packed " + action_data.m_Target.GetObject().GetDisplayName() +
" with Hands ";
222 OverrideNewLocation( hands );
class ActionTargets ActionTarget
ref CCIBase m_ConditionItem
ref CCTBase m_ConditionTarget
void ActionContinuousBase()
override string GetAdminLogMessage(ActionData action_data)
override bool SetupAction(PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data=NULL)
override void OnFinishProgressServer(ActionData action_data)
override void OnStartAnimationLoopClient(ActionData action_data)
override void OnStartAnimationLoopServer(ActionData action_data)
override void CreateConditionComponents()
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void OnStartServer(ActionData action_data)
void SetupAnimation(ItemBase item)
override bool HasTarget()
override bool ActionConditionContinue(ActionData action_data)
override bool HasAlternativeInterrupt()
override void OnEndServer(ActionData action_data)
override void OnEndAnimationLoop(ActionData action_data)
EntityAI m_RepackedEntity
override bool HasProgress()
void DropDuringRepacking()
override void CreateActionComponent()
proto native void SetHands(notnull EntityAI parent, EntityAI e)
sets current inventory location type to Hands
proto native void SetGroundEx(EntityAI e, vector pos, float dir[4])
sets current inventory location type to Ground with transformation mat
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
EntityAI m_RepackedNewEntity
void RepackLambda(EntityAI old_item, string new_item_type, PlayerBase player)
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.
DayZPlayerConstants
defined in C++
proto void Print(void var)
Prints content of variable to console/log.
static proto void MatrixToQuat(vector mat[3], out float d[4])
Converts rotation matrix to quaternion.
static proto void YawPitchRollMatrix(vector ang, out vector mat[3])
Creates rotation matrix from angles.