Esempio n. 1
0
        public void RodarPulso(int rotacao)
        {
            int max = Enum.GetValues(typeof(Rotacoes)).Cast <int>().Max();

            if (rotacao < 0 || rotacao > max)
            {
                throw new Exception($"Parâmetro da ação inválido! Valores válidos: 0-{max}");
            }

            if (!ContracaoCotovelo.Equals(Contracoes.FortementeContraido))
            {
                throw new Exception("Movimento inválido! Não é possível girar o pulso se o cotovelo não estiver fortemente contraído.");
            }

            if (Math.Abs(rotacao - (int)RotacaoPulso) > 1)
            {
                throw new Exception($"Mudança de estado inválida! Movimento brusco, pulando estados. Estado atual: {(int)RotacaoPulso} ({RotacaoPulso}). Estado desejado: {rotacao} ({(Rotacoes)rotacao}).");
            }

            RotacaoPulso = (Rotacoes)rotacao;
        }
Esempio n. 2
0
 public Braco()
 {
     ContracaoCotovelo = Contracoes.EmRepouso;
     RotacaoPulso      = Rotacoes.EmRepouso;
 }