public ActionReader(string newGameSymbol, string endGameSymbol, MovementDisplayNamesResolver movementDisplayNamesResolver, LegalMovesCalculator legalMovesCalculator, IO.IO io) { this.newGameSymbol = newGameSymbol; this.endGameSymbol = endGameSymbol; this.movementDisplayNamesResolver = movementDisplayNamesResolver; this.legalMovesCalculator = legalMovesCalculator; this.io = io; }
private bool TryResolve(string action, out Movement movement) { Dictionary <Movement, string> movementDisplayNames = new Dictionary <Movement, string>() { { Movement.DOWN, "D" } }; MovementDisplayNamesResolver movementDisplayNamesResolver = new MovementDisplayNamesResolver(movementDisplayNames); return(movementDisplayNamesResolver.TryResolve(action, out movement)); }
public ActionApplier(string newGameSymbol, string endGameSymbol, TileMover tileMover, MovementDisplayNamesResolver movementDisplayNamesResolver, IO.IO io) { this.newGameSymbol = newGameSymbol; this.endGameSymbol = endGameSymbol; this.tileMover = tileMover; this.movementDisplayNamesResolver = movementDisplayNamesResolver; this.io = io; }
public override void Load() { Bind <IO.IO>().To <ConsoleIO>().InSingletonScope(); Bind <BoardRenderer>().ToSelf().InSingletonScope(); Bind <MagicSquare>().ToSelf().InSingletonScope(); Bind <BoardSizeReadingBoardFactory>().ToSelf().InSingletonScope(); Bind <ActionReader>().ToMethod(ctx => { MovementDisplayNamesResolver movementDisplayNamesResolver = ctx.Kernel.Get <MovementDisplayNamesResolver>(); LegalMovesCalculator legalMovesCalculator = ctx.Kernel.Get <LegalMovesCalculator>(); IO.IO io = ctx.Kernel.Get <IO.IO>(); return(new ActionReader(newGameSymbol, endGameSymbol, movementDisplayNamesResolver, legalMovesCalculator, io)); }).InSingletonScope(); Bind <ActionApplier>().ToMethod(ctx => { TileMover tileMover = ctx.Kernel.Get <TileMover>(); MovementDisplayNamesResolver movementDisplayNamesResolver = ctx.Kernel.Get <MovementDisplayNamesResolver>(); IO.IO io = ctx.Kernel.Get <IO.IO>(); return(new ActionApplier(newGameSymbol, endGameSymbol, tileMover, movementDisplayNamesResolver, io)); }).InSingletonScope(); }