/*=============================================================================
	  ___________
	 /           \		Par Martin Robinson
	|   @#!$*%    |		logiciel libre GPL
	 \_______   _/
	 		 \ |  ___________
	    	  \| |   O   O   |
				 |  _______  |
				 | | | | | | |
===============================================================================
voici la structure des formes que les robots 
contienent dans leur mémoire collective.
Plus comme un tableau fonctionnel avec modification
non persistante.
===============================================================================
Preprocesseur
=============================================================================*/

#pragma once
#ifndef shape_deja
#define shape_deja
#include "main.hpp"

#include "constchar.hpp"

/*classe
_____________________*/

class shape{
    int _x[20],		//tableau de coordonné X
        _y[20],		//tableau de coordonné Y
        _qty,		//nombre maximum de bots pour la forme
        _sx,		//X point de départ dans les coordoné du tableau
        _sy,		//Y  "          "             "         "
        _size;		//taille ajuster par rapport à la quantité de bots
public:
    void build(const char * new_shape);     //construire la forme avec le tableau const char
    void adjust(int vx, int vy);			//modifier le point de départ
    bool resize(int);						//modifier la taille pour le robot
    int col(int);							//coordonné pour l'index horizontale
    int row(int);							//     "         "       verticale
    int size();								//taille de la liste avec modification
    void reset();							//élimine les modifications mais garde la construction
};

#endif
