From e569fd6c3938ca885bfca0978d143def154abd73 Mon Sep 17 00:00:00 2001 From: MrSimbax Date: Sun, 16 Mar 2014 15:25:49 +0100 Subject: Fix for #294 --- src/object/task/taskrecover.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/object/task/taskrecover.cpp b/src/object/task/taskrecover.cpp index af84099..d8bbafd 100644 --- a/src/object/task/taskrecover.cpp +++ b/src/object/task/taskrecover.cpp @@ -105,9 +105,11 @@ bool CTaskRecover::EventProcess(const Event &event) if ( power != 0 ) { energy = power->GetEnergy(); - power->SetEnergy(energy-ENERGY_RECOVER*event.rTime*m_speed); + energy -= event.rTime * ENERGY_RECOVER / power->GetCapacity() * m_speed; + power->SetEnergy(energy); } + speed.x = (Math::Rand()-0.5f)*0.1f*m_progress; speed.y = (Math::Rand()-0.5f)*0.1f*m_progress; speed.z = (Math::Rand()-0.5f)*0.1f*m_progress; -- cgit v1.2.3-1-g7c22