Just to add on to the answer by @palacsint the answer by @palacsint, if the language you are working with allows array literals, you can make it look like more a table:
var decisionTable = new GameState[][] {
new GameState[] { GameState.Checkmate, GameState.Check } // isCheck
new GameState[] { GameState.Stalemate, GameState.Ok }
// isStuck
}
return decisionTable[(int)isCheck][(int)isStuck];
Just to add on to the answer by @palacsint, if the language you are working with allows array literals, you can make it look like more a table:
var decisionTable = new GameState[][] {
new GameState[] { GameState.Checkmate, GameState.Check } // isCheck
new GameState[] { GameState.Stalemate, GameState.Ok }
// isStuck
}
return decisionTable[(int)isCheck][(int)isStuck];
Just to add on to the answer by @palacsint, if the language you are working with allows array literals, you can make it look like more a table:
var decisionTable = new GameState[][] {
new GameState[] { GameState.Checkmate, GameState.Check } // isCheck
new GameState[] { GameState.Stalemate, GameState.Ok }
// isStuck
}
return decisionTable[(int)isCheck][(int)isStuck];
Just to add on to the answer by @palacsint, if the language you are working with allows array literals, you can make it look like more a table:
var decisionTable = new GameState[][] {
new GameState[] { GameState.Checkmate, GameState.Check } // isCheck
new GameState[] { GameState.Stalemate, GameState.Ok }
// isStuck
}
return decisionTable[(int)isCheck][(int)isStuck];