25a2753b13
Canviats punters a unique_ptr Afegit const a alguns metodes de classse fix: el segon jugador no podia unirse a la partida new: Quan els dos jugadors han decidit no continuar, ja no poden continuar i el marcador així ho reflectix fix: al posar el nom per segona vegada en la mateixa partida, no es reseteja la posició del selector fix: el fade venetian no netejava la textura i de vegades eixien gràfics corruptes fix: ara grava a disco cada vegada que es posa nom al morir
61 lines
1.7 KiB
C++
61 lines
1.7 KiB
C++
#pragma once
|
|
|
|
#include <string>
|
|
|
|
#define NAME_LENGHT 8
|
|
|
|
/*
|
|
Un array, "characterList", contiene la lista de caracteres
|
|
Un segundo array, "characterIndex", contiene el indice a "characterList" de cada una de las letras que conforman el nombre
|
|
"pos" es la posición de "characterIndex" que se está modificando
|
|
Izquierda o derecha modifican "pos", arriba o abajo modifican el índice de "characterIndex[pos]"
|
|
Pulsar cualquier botón, mueve "pos" a la derecha. Al pulsar el botón en la ´´ultima posición se finaliza la introducción de nombres
|
|
*/
|
|
|
|
// Clase EnterName
|
|
class EnterName
|
|
{
|
|
private:
|
|
std::string characterList; // Lista de todos los caracteres permitidos
|
|
std::string name; // Nombre introducido
|
|
int pos; // Posición a editar del nombre
|
|
int numCharacters; // Cantidad de caracteres de la lista de caracteres
|
|
int characterIndex[NAME_LENGHT]; // Indice de la lista para cada uno de los caracteres que forman el nombre
|
|
|
|
// Actualiza la variable
|
|
void updateName();
|
|
|
|
// Actualiza la variable
|
|
void updateCharacterIndex();
|
|
|
|
// Encuentra el indice de un caracter en "characterList"
|
|
int findIndex(char character);
|
|
|
|
public:
|
|
// Constructor
|
|
EnterName();
|
|
|
|
// Destructor
|
|
~EnterName() = default;
|
|
|
|
// Inicializa el objeto
|
|
void init();
|
|
|
|
// Incrementa la posición
|
|
void incPos();
|
|
|
|
// Decrementa la posición
|
|
void decPos();
|
|
|
|
// Incrementa el índice
|
|
void incIndex();
|
|
|
|
// Decrementa el índice
|
|
void decIndex();
|
|
|
|
// Obtiene el nombre
|
|
std::string getName() const;
|
|
|
|
// Obtiene la posición que se está editando
|
|
int getPos() const;
|
|
}; |