public void Initialize(TableConfig tableConfig, MovesConfig movesConfig, int?id = null) { if (id.HasValue) { ID = id.Value; } StateConfiguration = new StateConfiguration(); StateConfiguration.ActualMove = 0; StateConfiguration.Moves = movesConfig.ToArray(); StateConfiguration.TableConfig = tableConfig; StateConfiguration.Position = tableConfig.StartPosition; StateConfiguration.Validate(); TurtleState = StateHelper.GetState(StateConfiguration.Position, StateConfiguration.TableConfig.Mines, StateConfiguration.TableConfig.Exit); _logger.BusinessSuccess(BL.EVENT_PLAYINIT_ID, BL.EVENT_PLAYINIT_NAME, new { Id = ID }); }