// MyClass.cs created with MonoDevelop
// User: naugrim at 22:21 09/03/2009
//
// To change standard headers go to Edit->Preferences->Coding->Standard Headers
//
using System;
using System.Collections;
using System.Collections.Generic;
namespace libcreature
{
///
/// Возможные действия
///
public enum CreatureAction
{
///
/// Вперед
///
Forward,
///
/// Поворот на лево
///
Left,
///
/// Поворот на право
///
Right,
///
/// Атака ячейки впереди
///
Attack,
///
/// Съесть еду находящуюся в ячейке впереди
///
Eat
}
///
/// Типы объектов на карте
///
public enum MapObject
{
///
/// Еда
///
Food,
///
/// Враг или существа другого класса
///
Enemy,
///
/// Друг или существо того же типа
///
Friend,
///
/// Стена или край поля
///
Wall
}
///
/// Класс объектов на карте, используемый при передаче существу объектов в области видимости
///
public class MapState
{
///
/// Расстояние до объекта
///
public int Distance;
public int Direction;
///
/// Экземпляр перечисления типа объекта
///
public MapObject Obj;
}
///
/// Интерфейс существа
///
public interface ICreature
{
int Points { get; set; }
int Damage { get; }
int HP {get; set; }
int LOS { get; }
int Speed {get; }
string Name {get;}
void ChangeSight (List Objects);
CreatureAction DoMove();
}
}