Anmelden
DE
games/satisfying-bounce / src / Scene / FilmScene.php · commit 8bdd6e4
<?phpnamespace App\Scene;use JumPHP\Renderer\Renderer;use JumPHP\Scene\AbstractScene;/** * The entry of bin/jumphp video:make (project.yaml video.scene): it only starts the scene of the `template` param * (gap | multiply | rings | marble | zoom | stairs | tunnel | spiral | checker | ripple | dominos | cats | rain | pendulum | plinko) * with the same params (seed, seconds, lang, title, captions...), straight away. */final class FilmScene extends AbstractScene{    public const TEMPLATES = [        'gap' => GapCircleScene::class,        'multiply' => MultiplyScene::class,        'rings' => ConcentricScene::class,        'marble' => MarbleScene::class,        'zoom' => ZoomRingsScene::class,        'stairs' => StairsScene::class,        'tunnel' => TunnelScene::class,        'spiral' => SpiralScene::class,        'checker' => WaveGridScene::class,        'ripple' => DotRippleScene::class,        'dominos' => DominoScene::class,        'cats' => CatBounceScene::class,        'rain' => RainPondScene::class,        'pendulum' => PendulumScene::class,        'plinko' => PlinkoScene::class,    ];    public function enter(array $params = []): void    {        $class = self::TEMPLATES[(string)($params['template'] ?? 'gap')] ?? GapCircleScene::class;        $this->scenes()->switchTo($class, $params, false);    }    public function update(float $dt): void    {    }    public function render(Renderer $r): void    {        $r->clear([8, 8, 16]);    }}