diff --git a/Assets/Scripts/Interface/IMaze.cs b/Assets/Scripts/Interface/IMaze.cs index fd6fdcb..bdeafce 100644 --- a/Assets/Scripts/Interface/IMaze.cs +++ b/Assets/Scripts/Interface/IMaze.cs @@ -1,14 +1,11 @@ -using System.Collections; -using System.Collections.Generic; - -namespace MazeProject { - /* - * CellType enum is used to indicate the content of the cell - */ - public enum CellType { +namespace MazeProject +{ + /* + * CellType enum is used to indicate the content of the cell + */ + public enum CellType { CELL_IS_EMPTY, CELL_IS_WALL, - CELL_TRAVERSED // used for marking cell for path-finding algorithms } /* @@ -23,17 +20,18 @@ public interface IMaze { // returns the content of the cell[row][col] CellType GetCellType(int row, int col); - + // returns the number of rows the maze was initialized to int GetNumRows(); - + // returns the number of columns the maze was initialized to - int GetNumColumns(); - - // set the weight of a cell (used for path-finding algorithms) - void SetWeight(int row, int col, int weight); + int GetNumColumns(); + + // Associate a metadata attribute with a given maze cell + void SetMetadata(int row, int col, string attribute, object data); - // retrieve weight of specified cell - int GetWeight(int row, int col); + // Retrieve the metadata attribute associated with a given cell, + // or null if no such attribute was previously associated. + object GetMetadata(int row, int col, string attribute); } }