Goal:
Retrieve all instance of List<> from interface GameFactory
Problem:
I retrieve error message “Interfaces cannot contain fields”.
How should I do in orde to retrieve all instance from interface GameFactory. Any good idea?
// Fullmetalboy
public interface GameFactory<T>
{
}
public class NiceGameFactory : GameFactory<Player>
{
public List<Obstacle> _my_G_Obstacle;
public List<Action> _my_G_Action = new List<Action>();
public Player _myPlayer;
public void RetrieveObstacle()
{
}
public NiceGameFactory()
{
_my_G_Obstacle = new List<Obstacle>();
_my_G_Obstacle.Add(new Wizard());
_my_G_Obstacle.Add(new Wall());
_my_G_Obstacle.Add(new Elephant());
_my_G_Obstacle.Add(new DPexam());
_my_G_Action.Add(new BowAndShakeHandsAction());
_my_G_Action.Add(new RunAndHideAction());
_my_G_Action.Add(new BargainAndBuyAction());
_my_G_Action.Add(new ChainsawAction());
_my_G_Action.Add(new ClimbAction());
_my_G_Action.Add(new CastAspellAction());
_my_G_Action.Add(new SurrenderAction());
_myPlayer = new OrdinaryPlayer();
}
}
public class NastyGameFactory
{
public List<Obstacle> _my_G_Obstacle;
public List<Action> _my_G_Action;
public Player _myPlayer;
public NastyGameFactory()
{
_my_G_Obstacle.Add(new Dragon());
_my_G_Obstacle.Add(new Bomb());
_my_G_Obstacle.Add(new Samuray());
_my_G_Obstacle.Add(new SumoWrestler());
_my_G_Obstacle.Add(new Gangster());
_my_G_Action.Add(new BowAndShakeHandsAction());
_my_G_Action.Add(new RunAndHideAction());
_my_G_Action.Add(new SwordAction());
_my_G_Action.Add(new RifleAction());
_my_G_Action.Add(new OfferFoodAction());
_my_G_Action.Add(new ChainsawAction());
_my_G_Action.Add(new CastAspellAction());
_my_G_Action.Add(new BargainAndBuyAction());
_my_G_Action.Add(new SurrenderAction());
_myPlayer = new HeroPlayer();
}
}
You can define the lists as accessible via properties on the interface.
(This is a better practice anyway than having public fields.)