ActionStripCarrierVest.c
class ActionStripCarrierVestCB : ActionContinuousBaseCB
{
override void CreateActionComponent()
{
m_ActionData.m_ActionComponent = new CAContinuousTime(UATimeSpent.DEFAULT);
}
};
//!DEPRECATED
class ActionStripCarrierVest: ActionContinuousBase
{
void ActionStripCarrierVest()
{
m_CallbackClass = ActionStripCarrierVestCB;
m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_CRAFTING;
m_FullBody = true;
m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH;
m_SpecialtyWeight = UASoftSkillsWeight.PRECISE_LOW;
m_Text = "#strip_vest";
}
override void CreateConditionComponents()
{
m_ConditionItem = new CCINonRuined;
m_ConditionTarget = new CCTNone;
}
override bool ActionCondition( PlayerBase player, ActionTarget target, ItemBase item )
{
if ( item.GetNumberOfItems() > 0 )
{
return false;
}
return true;
}
override bool HasTarget()
{
return false;
}
override void OnFinishProgressServer( ActionData action_data )
{
if ( action_data.m_MainItem && action_data.m_MainItem.GetHierarchyRootPlayer() == action_data.m_Player )
{
TStringArray results;
Class.CastTo(results, new TStringArray);
string itemName = action_data.m_MainItem.GetType();
EntityAI object;
results.Insert("PlateCarrierBlank");
switch (itemName)
{
case "PlateCarrierHolster":
results.Insert("CarrierHolsterSolo");
break
case "PlateCarrierPouches":
results.Insert("CarrierPouches");
break
case "PlateCarrierComplete":
results.Insert("CarrierPouches");
results.Insert("CarrierHolsterSolo");
break
}
for ( int i = 0; i < results.Count(); i++ )
{
object = EntityAI.Cast( g_Game.CreateObjectEx(results.Get(i), action_data.m_Player.GetPosition(), ECE_PLACE_ON_SURFACE) );
object.SetHealth("","",action_data.m_MainItem.GetHealth("",""));
}
action_data.m_MainItem.Delete();
action_data.m_MainItem = NULL;
}
}
};