Piszę grę bomberman. Jakąś wersję w którą można pograć już mam (zaznaczam to bo wiem, że często odpowiedzi w wątkach tego typu sprowadzają się do "weź się za coś prostszego potem napisz grę").
Używam silnika ZenGL (http://www.zengl.org/).
Mój problem polega na tym, że nie wiem jak napisać menu by kod wyglądał sensownie. Mam zamiar zrobić jak najprostsze menu typu:
1.Start
Poziom trudności:
- Łatwy
- Normalny
- Trudny
- Opcje
- Grafika
- Fullscreen
- Rozciągnięcie
- Klawiszologia
- góra
- dół
- prawo
- lewo
- postaw bombę
- detonuj bombę
- Wyjdź.
I dla każdego takiego menu i podmenu musiał bym pisać odpowiednią procedurę rysującą i odpowiednie procedury obsługi klawiszy. @furious programming podpowiedział mi, by te wszystkie procedury umieścić w tablicy i na podstawie enuma wybierać odpowiednie. Jest to jakieś rozwiązanie jednak przeraża mnie ilość kodu który będę musiał napisać a w większości przypadków kod będzie się powtarzał (co mógłbym ominąć rozbijając kod na większą ilość procedur i funkcji) i wcale nie zdziwił bym się gdyby kod miał coś koło 6k LoC z czego 4k to by było menu...
I tu pojawia się moje pytanie:
Da się to napisać jakoś krócej? Sensowniej rozplanować? Przy czym pisanie czegoś w rodzaju LCL pod ZenGL raczej odpada.