O objetivo era corrigir as partes do jogo via internet que quebraram devido à falta de testes e ao botão ter ficado escondido nos últimos updates.
Acabei percebendo que era preciso reintroduzir o conceito de "gerente" e consolidar alguns comportamentos. Isso me fez:
Reescrever o ServidorInternetActivity e rever a hierarquia dessas activities, introduzindo SalaActivity como a mãe de qualquer activity que possa criar partidas (e chamar TrucoActivity)
Centralizar toda a criação de novas partida em CriadorDePartida (que sempre delega para a SalaActivity apropriada) e o lifecycle da TrucoActivity em SalaActivity.
Ainda tem bugs pra resolver (vide #38), mas ao menos o geral do multiplayer está funcionando, com mais testes.
Essa PR ficou meio grande 🙈
O objetivo era corrigir as partes do jogo via internet que quebraram devido à falta de testes e ao botão ter ficado escondido nos últimos updates.
Acabei percebendo que era preciso reintroduzir o conceito de "gerente" e consolidar alguns comportamentos. Isso me fez:
ServidorInternetActivity
e rever a hierarquia dessas activities, introduzindoSalaActivity
como a mãe de qualquer activity que possa criar partidas (echamar TrucoActivity
)CriadorDePartida
(que sempre delega para aSalaActivity
apropriada) e o lifecycle daTrucoActivity
emSalaActivity
.Ainda tem bugs pra resolver (vide #38), mas ao menos o geral do multiplayer está funcionando, com mais testes.