ActionOpen.c
class ActionOpen: ActionSingleUseBase
{
void ActionOpen()
{
m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_OPENITEM_ONCE;
m_CommandUIDProne = DayZPlayerConstants.CMD_ACTIONFB_OPENITEM_ONCE;
//m_Animation = "open";
m_Text = "#open";
}
override void CreateConditionComponents()
{
m_ConditionItem = new CCINonRuined;
m_ConditionTarget = new CCTNone;
}
override bool HasTarget()
{
return false;
}
override bool ActionCondition( PlayerBase player, ActionTarget target, ItemBase item )
{
if (item && !item.IsOpen())
{
Edible_Base edible;
if (Class.CastTo(edible,item) && edible.GetIsFrozen())
return false;
return true;
}
return false;
}
override bool ActionConditionContinue( ActionData action_data )
{
return true;
}
override void OnExecuteClient( ActionData action_data )
{
ClearInventoryReservationEx(action_data);
}
override void OnExecuteServer( ActionData action_data )
{
if( !g_Game.IsMultiplayer() )
ClearInventoryReservationEx(action_data);
action_data.m_MainItem.Open();
}
};