public ICard CreateCard(IGameDataSetting gameDataSetting) { var columnNumbers = gameDataSetting.GetCardData().GetColumnNumber(); var rowNumbers = gameDataSetting.GetCardData().GetRowNumber(); var cardBoard = new string[columnNumbers, rowNumbers]; return(new Card(cardBoard)); }
public CardPrototypeFactory(IGameDataSetting gameDataSetting) { this.gameDataSetting = gameDataSetting; var columnNumber = gameDataSetting.GetCardData().GetColumnNumber(); var dictionary = new RangeDictionaryFactory().CreateRangeDictionary(columnNumber); cardPrototype = new CardPrototype(new ColumnRangeGetter(dictionary), gameDataSetting); }
public ICard InjectSpace(ICard card, IGameDataSetting gameDataSetting) { var rowNumber = gameDataSetting.GetCardData().GetRowNumber(); var columnNumber = gameDataSetting.GetCardData().GetColumnNumber(); var spacesInjector = new CardSpacesFiller(card); for (int i = 0; i < rowNumber; i++) { var columnPositions = generator.GenerateDistinctRandomNumbers(new Range(1, columnNumber), 4); spacesInjector.FillData(columnPositions, i); } return(card); }
public ICard InjectSpace(ICard card, IGameDataSetting gameDataSetting) { var columnNumber = gameDataSetting.GetCardData().GetColumnNumber(); var rowNumber = gameDataSetting.GetCardData().GetRowNumber(); decimal columnDivision = columnNumber / 2; decimal rowDivision = rowNumber / 2; var middleColumn = Math.Floor(columnDivision); var middleRow = Math.Floor(rowDivision); var cardBoard = card.GetCardBoard(); cardBoard[decimal.ToInt32(middleColumn), decimal.ToInt32(middleRow)] = " * "; return(card); }
public CardPrototype(IColumnRangeGetter columnRangeGetter, IGameDataSetting gameDataSetting) { this.gameDataSetting = gameDataSetting; this.columnRangeGetter = columnRangeGetter; randomNumbersGenerator = new RandomNumbersGenerator(); }
public CardPackage(IGameDataSetting gameDataSetting) { this.gameDataSetting = gameDataSetting; cards = new List <ICard>(); }