Fixed issue #324
parent
7557b888bc
commit
2770ee8927
2
data
2
data
|
@ -1 +1 @@
|
||||||
Subproject commit a521070bb17737e1d3990ba09d09d036749635ab
|
Subproject commit 559797f35b88a2d5e882119034923b2ab75817e2
|
|
@ -820,6 +820,18 @@ void CBrain::StopTask()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Stops the current secondary task.
|
||||||
|
|
||||||
|
void CBrain::StopSecondaryTask()
|
||||||
|
{
|
||||||
|
if (m_secondaryTask != nullptr)
|
||||||
|
{
|
||||||
|
m_secondaryTask->Abort();
|
||||||
|
delete m_secondaryTask; // stops the current secondary task
|
||||||
|
m_secondaryTask = nullptr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Introduces a virus into a program.
|
// Introduces a virus into a program.
|
||||||
// Returns true if it was inserted.
|
// Returns true if it was inserted.
|
||||||
|
@ -1000,7 +1012,7 @@ Error CBrain::StartTaskRecover()
|
||||||
|
|
||||||
Error CBrain::StartTaskShield(TaskShieldMode mode)
|
Error CBrain::StartTaskShield(TaskShieldMode mode)
|
||||||
{
|
{
|
||||||
StopTask();
|
StopSecondaryTask();
|
||||||
|
|
||||||
m_secondaryTask = new CTaskManager(m_object);
|
m_secondaryTask = new CTaskManager(m_object);
|
||||||
Error err = m_secondaryTask->StartTaskShield(mode, 1000.0f);
|
Error err = m_secondaryTask->StartTaskShield(mode, 1000.0f);
|
||||||
|
@ -1048,7 +1060,7 @@ Error CBrain::StartTaskFireAnt(Math::Vector impact)
|
||||||
|
|
||||||
Error CBrain::StartTaskGunGoal(float dirV, float dirH)
|
Error CBrain::StartTaskGunGoal(float dirV, float dirH)
|
||||||
{
|
{
|
||||||
StopTask();
|
StopSecondaryTask();
|
||||||
|
|
||||||
m_secondaryTask = new CTaskManager(m_object);
|
m_secondaryTask = new CTaskManager(m_object);
|
||||||
Error err = m_secondaryTask->StartTaskGunGoal(dirV, dirH);
|
Error err = m_secondaryTask->StartTaskGunGoal(dirV, dirH);
|
||||||
|
|
|
@ -102,6 +102,7 @@ public:
|
||||||
int GetProgram();
|
int GetProgram();
|
||||||
void StopProgram();
|
void StopProgram();
|
||||||
void StopTask();
|
void StopTask();
|
||||||
|
void StopSecondaryTask();
|
||||||
|
|
||||||
bool IntroduceVirus();
|
bool IntroduceVirus();
|
||||||
void SetActiveVirus(bool bActive);
|
void SetActiveVirus(bool bActive);
|
||||||
|
|
Loading…
Reference in New Issue