5 m_QuantityFilledPerSecond = quantity_filled_per_second;
6 m_liquid_type = liquid_type;
15 m_SpentUnits =
new Param1<float>(0);
19 m_SpentUnits.param1 = 0;
23 m_QuantityFilledPerSecond *=
Math.Min(action_data.m_MainItem.GetLiquidThroughputCoef(),pg.GetLiquidThroughputCoef());
25 m_ItemQuantity = action_data.m_MainItem.GetQuantity();
26 m_TargetUnits = pg.GetCompEM().GetEnergyMax() - pg.GetCompEM().GetEnergy();
27 m_AdjustedQuantityFilledPerSecond = action_data.m_Player.GetSoftSkillsManager().AddSpecialtyBonus( m_QuantityFilledPerSecond,
m_Action.GetSpecialtyWeight(),
true );
32 if ( !action_data.m_Player )
39 if ( pg.GetFuel() >= pg.GetMaxFuel() )
45 if ( m_SpentQuantity_total < m_TargetUnits )
47 m_SpentQuantity += m_AdjustedQuantityFilledPerSecond * action_data.m_Player.GetDeltaT();
48 m_TimeElpased += action_data.m_Player.GetDeltaT();
50 if ( m_TimeElpased >= m_DefaultTimeStep )
52 CalcAndSetQuantity( action_data );
60 CalcAndSetQuantity( action_data );
61 OnCompletePogress(action_data);
67 override void CalcAndSetQuantity(
ActionData action_data )
69 m_SpentQuantity_total += m_SpentQuantity;
73 m_SpentUnits.param1 = m_SpentQuantity;
74 SetACData(m_SpentUnits);
81 int consumed_fuel = pg.AddFuel( m_SpentQuantity );
82 action_data.m_MainItem.AddQuantity( -consumed_fuel );