class UseAction extends BaseItemAction { public override function IsPossible( target : weak< GameObject >, optional actionRecord : weak< ObjectAction_Record >, optional objectActionsCallbackController : weak< gameObjectActionsCallbackController > ) : Bool { var targetPrereqs : array< weak< IPrereq_Record > >; if( !( actionRecord ) ) { actionRecord = GetObjectActionRecord(); } if( objectActionsCallbackController && objectActionsCallbackController.HasObjectAction( actionRecord ) ) { return objectActionsCallbackController.IsObjectActionInstigatorPrereqFulfilled( actionRecord ); } else { actionRecord.InstigatorPrereqs( targetPrereqs ); return RPGManager.CheckPrereqs( targetPrereqs, target ); } } public override function StartAction( gameInstance : GameInstance ) { var itemData : gameItemData; itemData = GetItemData(); super.StartAction( gameInstance ); if( !( itemData ) || !( m_executor.IsPlayer() ) ) { return; } if( ( ( ( ( ( ( ( m_objectActionID == T"CyberwareAction.UseOpticalCamoRare" ) || ( m_objectActionID == T"CyberwareAction.UseOpticalCamoEpic" ) ) || ( m_objectActionID == T"CyberwareAction.UseOpticalCamoLegendary" ) ) || ( m_objectActionID == T"CyberwareAction.UseBloodPumpCommon" ) ) || ( m_objectActionID == T"CyberwareAction.UseBloodPumpUncommon" ) ) || ( m_objectActionID == T"CyberwareAction.UseBloodPumpRare" ) ) || ( m_objectActionID == T"CyberwareAction.UseBloodPumpEpic" ) ) || ( m_objectActionID == T"CyberwareAction.UseBloodPumpLegendary" ) ) { GameInstance.GetTelemetrySystem( gameInstance ).LogActiveCyberwareUsed( m_executor, itemData.GetID() ); } } }