From 0b541e60bc1a457f415c84fe23022172a52a00d5 Mon Sep 17 00:00:00 2001 From: Cesar Rincon Date: Sun, 29 Apr 2018 09:03:28 +0200 Subject: [PATCH] NGN 0.5.3-a RC3 Minor changes in NGN_Camera class. --- Source/ngn_camera.cpp | 6 ++++- Source/ngn_camera.h | 51 +++++++++++++++++++++++-------------------- 2 files changed, 32 insertions(+), 25 deletions(-) diff --git a/Source/ngn_camera.cpp b/Source/ngn_camera.cpp index 5749079..02e28c7 100644 --- a/Source/ngn_camera.cpp +++ b/Source/ngn_camera.cpp @@ -66,6 +66,8 @@ /*** Contructor de la clase NGN_Camera ***/ NGN_Camera::NGN_Camera() { + // Limpia los vectores + layer.clear(); // Parametros iniciales target = NULL; //world.width = ngn->graphics->native_w; // Se autoconfigura en ngn_graphics.cpp @@ -74,7 +76,6 @@ NGN_Camera::NGN_Camera() { scroll.width = scroll.height = 0.0f; animation_pause = false; - } @@ -104,6 +105,9 @@ void NGN_Camera::CreateLayers(uint32_t layers) { layer[i].sprite_layer.height = NGN_DEFAULT_VALUE; layer[i].in_use = false; layer[i].visible = true; + layer[i].texture.clear(); + layer[i].bg.clear(); + layer[i].spr.clear(); } } diff --git a/Source/ngn_camera.h b/Source/ngn_camera.h index 32b8e9b..70174a2 100644 --- a/Source/ngn_camera.h +++ b/Source/ngn_camera.h @@ -69,26 +69,7 @@ /*** Declaracion de la clase de la Camara virtual en 2D ***/ class NGN_Camera { - // Private [Declaracion de los prototipos de datos] - private: - - // Estructura de capas de dibujado - struct layer_data{ - std::vector texture; // Fondos de textura en esta capa - std::vector bg; // Fondos de tiles en esta capa - std::vector spr; // Sprites en esta capa - Size2I64 sprite_layer; // Tamaņo para la capa de sprites - bool visible; // Visibilidad de la capa - bool in_use; // Hay datos en la capa - }; - - // Parametros internos de la camara para su funcionamiento - NGN_Sprite* target; // Sprite al que seguira la camara - Size2I64 scroll; // Tamaņo total del scroll en el mundo - - - - // Public + // Metodos y propiedades publicas public: // Contructor de la clase @@ -97,10 +78,7 @@ class NGN_Camera { // Destructor de la clase ~NGN_Camera(); - // Vector de memoria con las capas - std::vector layer; - - // Tamaņo del mundo + // Tamaņo del mundo Size2I64 world; // Posicion de la camara en el mundo @@ -150,6 +128,31 @@ class NGN_Camera { // Reset de la camara void Reset(); + + // Datos privados de la clase + private: + + // Estructura de capas de dibujado + struct layer_data{ + std::vector texture; // Fondos de textura en esta capa + std::vector bg; // Fondos de tiles en esta capa + std::vector spr; // Sprites en esta capa + Size2I64 sprite_layer; // Tamaņo para la capa de sprites + bool visible; // Visibilidad de la capa + bool in_use; // Hay datos en la capa + }; + + // Parametros internos de la camara para su funcionamiento + NGN_Sprite* target; // Sprite al que seguira la camara + Size2I64 scroll; // Tamaņo total del scroll en el mundo + + + // Vector de datos gestionados por la camara + public: + + // Vector de memoria con las capas + std::vector layer; + };