51 lines
947 B
C
51 lines
947 B
C
/**
|
|
* 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); |