WaitUntil
Namespace:
namespace Lenga\Engine\Core;
class WaitUntil
Methods
keepWaiting
public function keepWaiting()
Example
use Lenga\Engine\Core\Behaviour;
use Lenga\Engine\Core\WaitUntil;
class ConditionWaiter extends Behaviour
{
private bool $conditionMet = false;
public function start(): void
{
$this->startCoroutine($this->waitForCondition());
}
public function update(): void
{
// Some condition check
if (Input::getKeyDown(KeyCode::SPACE)) {
$this->conditionMet = true;
}
}
private function waitForCondition(): \Generator
{
Debug::log('Waiting for condition...');
// Wait until condition is true
yield new WaitUntil(function() {
return $this->conditionMet;
});
Debug::log('Condition was met!');
}
}