#ifndef COMMON_H
#define COMMON_H

#include "Pantalla.h"


#define MILLISECONDS_PER_FRAME 20	// tiempo por frame.
#define VELOCIDAD_JUEGO 1			// velocidad del juego.

#define PI 3.14159265358979323846264338327950288

/**
 *  Función que dibuja el string. Los caracteres son escalados 
 *  al tamaño especificado.
 *  Si derecha es false el texto está alineado a la izquierda
 *  y x e y son la posición superior izquierda del texto.
 *  Si derecha es true el texto está alineado a la derecha
 *  y x e y son la posición superior derecha del texto.
 */
void dibujarTexto(char * texto, double x, double y, double size, bool derecha = false);

double distancia(double x1, double y1, double z1, double x2, double y2, double z2);

/**
 *  Carga el archivo pasado como parámetro y lo asigna a una nueva textura.
 *  Devuelve el id de la textura o 0 si hubo error al cargar la textura.
 */
GLuint loadTexture(const char *filename);

Pantalla * getPantallaActual();

Pantalla * getMenu();

Pantalla * getJuego();

void setJuego(Pantalla * j);

void goTo(Pantalla * p);

/**
 *  Ajusta un valor a la velocidad actual del juego
 */
double val(double v);

#endif
