Eu sei que é fácil criar botões que se destacam quando você passa o mouse sobre eles, mas quando se trata de submenus, estou meio preso. Alguém recebeu algumas dicas sobre a melhor maneira de ter um menu principal com submenus? (como Singleplayer -> Load Save -> Save 1-5? -> Iniciar jogo etc.)
12
Você deve definitivamente implementá-lo como uma máquina de estados finitos (FSM) ou uma pilha de estados (submenus), dependendo dos requisitos exatos. Qualquer submenu é o atual no FSM ou o superior da pilha, atrai a tela e manipula as entradas. E quando detecta que o usuário clica em um botão, ele alterna o FSM ou pressiona na pilha o estado correto para ir para a próxima tela.
No seu caso, estou pensando que uma pilha é melhor, mas se você tivesse um sistema de menus mais complexo que pulasse arbitrariamente nos menus, seria melhor usar um FSM.
fonte
"Melhor maneira" é inteiramente subjetivo. Veja como outros jogos o fazem e veja se você encontra um que funcione bem. A única coisa que você precisa é uma maneira de o usuário clicar em Cancelar e voltar ao nível anterior. Você pode dar a cada objeto de menu uma referência para o menu em que foi aberto ou implementá-lo com uma pilha.
Além disso, tudo depende da aparência do seu jogo e da aparência dos menus. Cada menu deve ocupar a tela inteira, no estilo Final Fantasy? Eles devem se ramificar como submenus do Windows? Você deveria optar por algo exótico, como menus radiais? Depende de você, realmente.
fonte