11 override void CreateConditionComponents()
17 override bool HasProneException()
22 override void OnActionInfoUpdate(
PlayerBase player, ActionTarget target,
ItemBase item )
29 m_Text =
"#take " + attachment.GetDisplayName();
33 override typename GetInputType()
38 override bool HasProgress()
46 if ( target_entity && target_entity.CanUseConstruction() )
53 string main_part_name = target_entity.GetActionComponentName( target.GetComponentIndex() );
62 if ( attachment && player.GetInventory().CanAddEntityIntoHands( attachment ) && attachment.GetHierarchyRootPlayer() != player )
71 override bool CanContinue( ActionData action_data )
76 override void OnExecute( ActionData action_data )
78 if (
GetGame().IsDedicatedServer())
93 float stackable = item_target.GetTargetQuantityMax();
95 if( stackable == 0 || stackable >= item_target.GetQuantity() )
98 action_data.m_Player.PredictiveTakeEntityToHands( item_target );
100 else if( stackable != 0 && stackable < item_target.GetQuantity() )
103 item_target.SplitIntoStackMaxHandsClient( action_data.m_Player );
113 bool heavy_item =
false;
115 if ( target && target.ConfigIsExisting(
"heavyItem") && target.ConfigGetBool(
"heavyItem") )
137 action_data.m_Callback = callback;