DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ AddEnergy()

float ComponentEnergyManager::AddEnergy ( float added_energy)
inlineprotected

Energy manager: Adds energy to this device and clamps it within its min/max storage limits. Returns the amount of energy that was clamped. Negative value is supported, but you should still use ConsumeEnergy(...) for propper substraction of energy.

См. определение в файле ComponentEnergyManager.c строка 1252

1253 {
1254 if (added_energy != 0)
1255 {
1256 //Print("AddEnergy ---------> " + added_energy + " " + this + " " +m_ThisEntityAI.ClassName());
1257 #ifdef DIAG_DEVELOPER
1258 if (FeatureTimeAccel.GetFeatureTimeAccelEnabled(ETimeAccelCategories.ENERGY_CONSUMPTION) && added_energy < 0)
1259 {
1260 float timeAccel = FeatureTimeAccel.GetFeatureTimeAccelValue();
1261 added_energy *= timeAccel;
1262 }
1263 #endif
1264
1265 bool energy_was_added = (added_energy > 0);
1266
1267 float energy_to_clamp = GetEnergy() + added_energy;
1268 float clamped_energy = Math.Clamp( energy_to_clamp, 0, GetEnergyMax() );
1269 SetEnergy(clamped_energy);
1270 StartUpdates();
1271
1272 if (energy_was_added)
1273 OnEnergyAdded();
1274 else
1276
1277 return energy_to_clamp - clamped_energy;
1278 }
1279
1280 return 0;
1281 }
float GetEnergyMax()
Energy manager: Returns the maximum amount of energy this device can curently store....
Определения ComponentEnergyManager.c:1284
void OnEnergyAdded()
Energy manager: Called when energy was added on this device.
Определения ComponentEnergyManager.c:1511
float GetEnergy()
Energy manager: Returns the amount of stored energy this device has.
Определения ComponentEnergyManager.c:1246
void SetEnergy(float new_energy)
Energy manager: Sets stored energy for this device. It ignores the min/max limit!
Определения ComponentEnergyManager.c:521
void OnEnergyConsumed()
Energy manager: Called when energy was consumed on this device.
Определения ComponentEnergyManager.c:1504

Перекрестные ссылки Math::Clamp(), GetEnergy(), GetEnergyMax(), OnEnergyAdded(), OnEnergyConsumed(), SetEnergy() и StartUpdates().

Используется в FindAndConsumeEnergy() и ItemBase::OnIgnitedTarget().