Jeśli mam enumSprawdź, czy enum jest w jednym z pożądanych stanów
[Flags]
public enum GameFlow
{
Normal = 1,
NormalNoMove = 2,
Paused = 4,
Battle = 8
}
Czy to możliwe, aby sprawdzić, czy enum jest w jednej z pożądanych stanów za pomocą jednego czeku? Na przykład, jeśli chciałbym sprawdzić, czy enum to Normal czy NormalNoMove, czy zawsze muszę to napisać w ten sposób?
if(Flow == GameFlow.Normal || Flow == GameFlow.NormalNoMove)
Nie jest to duży problem, jeśli istnieją tylko dwie wartości, ale nie będzie więcej stanów enum i byłoby miło, gdybym tylko musiał zmienić go w jednym miejscu. Czy można w jakiś sposób utworzyć alias enum, który zwróciłby wartość true, gdyby wartość wyliczeniowa była równa Normal lub NormalNoMove? Czy muszę napisać jakąś metodę pomocnika, aby to osiągnąć (metoda rozszerzenia?)
Przypuszczam, że Flow jest typu GameFlow? –
Tak, jest to typ GameFlow: – kasztelan