#ifndef CELL_H
#define CELL_H


//start of Cell
#include "TileAnimeList.h"

#define leves		4

		class Cell
		{
		private:
			// We need to store values for each tile
			// Save some memory by using short instead of int
			//		Type	Size	Values
			//		char	1 byte	0..255	
			//		short	2 bytes 0..65535
			//		int		4 bytes 0..4,294,967,295
					
			unsigned short layer[leves];//change to arry
			unsigned short value[leves];//change to arry
			unsigned short tileset[leves];//change to arry
			unsigned short passable[leves];//change to arry
			//int id;

			
			
			unsigned short frame[leves];//change to arry
			unsigned short animate_id[leves];//change to arry
			bool triger[leves];//change to arry
			
			
			//int numeffects;
			//Effect effects[numeffects];

			///// layers
			unsigned short trans[leves];//change to arry
			/*
				class Effect
				{
				private:
					char *effectname;
					int id;

				};

			*/
		public:
			Cell();
			unsigned short nuberofleve;
			unsigned short speed[leves];//change to arry
			bool animated[leves];//change to arry
			unsigned short conter[leves];//change to arry
			//sets
			void set_layer(unsigned short,unsigned short);
			void set_value(unsigned short,unsigned short);
			void set_tileset(unsigned short,unsigned short);
			void set_passable(unsigned short,unsigned short);
			void set_trans(unsigned short,unsigned short);
			
			//gets
			unsigned short get_layer(unsigned short);
			unsigned short get_value(unsigned short);
			unsigned short get_tileset(unsigned short);
			unsigned short get_passable(unsigned short);
			unsigned short get_trans(unsigned short);
			void animate(TileAnimeList);
		} ;
		//end of Cell



#endif