Ed
ontem
O padrão de projeto que se encaixa na descrição que você forneceu é o State (Estado). Esse padrão permite que um objeto altere seu comportamento quando seu estado interno muda, além de ajudar a evitar condicionais complexas, delegando o comportamento a classes específicas de estado.
Mais perguntas desse material