123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- class ActionOpenBarrelHoles: ActionInteractBase
- {
- void ActionOpenBarrelHoles()
- {
- m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_INTERACTONCE;
- m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH;
- m_Text = "#open";
- }
- override bool ActionCondition( PlayerBase player, ActionTarget target, ItemBase item )
- {
- Object target_object = target.GetObject();
- if ( target_object.IsItemBase() )
- {
- BarrelHoles_ColorBase ntarget = BarrelHoles_ColorBase.Cast( target_object );
- if( ntarget )
- {
- if ( !ntarget.IsOpen() && !ntarget.DirectCookingSlotsInUse() )
- {
- return true;
- }
- }
- }
- return false;
- }
- override void OnExecuteServer( ActionData action_data )
- {
- Object target_object = action_data.m_Target.GetObject();
- BarrelHoles_ColorBase ntarget = BarrelHoles_ColorBase.Cast( target_object );
- if( ntarget )
- {
- ntarget.Open();
- }
- }
-
- override void OnEndServer( ActionData action_data )
- {
- super.OnEndServer(action_data);
-
- Object target_object = action_data.m_Target.GetObject();
- BarrelHoles_ColorBase ntarget = BarrelHoles_ColorBase.Cast( target_object );
- if( ntarget )
- {
- ntarget.SoundSynchRemoteReset();
- }
- }
- }
|