/** * Copyright (c) 2025 Dominic Masters * * This software is released under the MIT License. * https://opensource.org/licenses/MIT */ #pragma once #include "display/camera.h" #include "rpg/world/map.h" #include "error/error.h" typedef struct { camera_t camera; } sceneoverworld_t; extern sceneoverworld_t SCENE_OVERWORLD; /** * Initialize the overworld scene. */ errorret_t sceneOverworldInit(void); /** * Update the overworld scene. */ void sceneOverworldUpdate(void); /** * Render the overworld scene. */ void sceneOverworldRender(void); /** * Render a map in the overworld scene. * * @param map Pointer to the map to render. */ void sceneOverworldRenderMap(const map_t *map); /** * Render an entity in the overworld scene. * * @param entity Pointer to the entity to render. */ void sceneOverworldRenderEntity(const entity_t *entity); /** * Dispose of the overworld scene. */ void sceneOverworldDispose(void);