1234567891011121314151617181920212223242526272829 |
- class CAContinuousQuantityBloodTransfer : CAContinuousQuantityRepeat
- {
- override void CalcAndSetQuantity( ActionData action_data )
- {
- if ( GetGame().IsServer() )
- {
- if ( m_SpentUnits )
- {
- m_SpentUnits.param1 = m_SpentQuantity;
- SetACData(m_SpentUnits);
- }
- action_data.m_MainItem.AddQuantity( -m_SpentQuantity, false, false );
- ActionGiveBloodData action_data_b = ActionGiveBloodData.Cast( action_data );
- PlayerBase bloodtarget = PlayerBase.Cast( action_data.m_Target.GetObject() );
- if ( !bloodtarget )
- bloodtarget = action_data.m_Player;
-
- if( BloodTypes.MatchBloodCompatibility(action_data_b.m_ItemBloodType, bloodtarget.GetStatBloodType().Get()) )
- {
- bloodtarget.AddHealth("", "Blood", m_SpentQuantity);
- }
- }
- }
- }
|