import time
import servo_R_A as servo_R_A
import servo_R_R as servo_R_R
import servo_L_A as servo_L_A
import servo_L_R as servo_L_R

#movimientos camara
def moveToLeft(normal):
    input("Moviendo a lado izquierdo:")
    if normal:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
    else:
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()


def moveToFront(normal):
    input("Moviendo al frente:")
    if normal:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
    else:
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

def moveToRight(normal):
    input("Moviendo a derecha:")
    if normal:
        servo_L_A.abrir()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
    else:
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

def moveToBack(normal):
    input("Moviendo a back:")
    if normal:
        servo_L_A.abrir()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
    else:
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

def moveToDown(normal):
    input("Moviendo a down:")
    if normal:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
    else:
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
#Movimientos para resolver el cubo

def moveLeft(number):
    input("Moviendo lado IZQUIERDO G:" + str(number))

    if number == 90:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

    if number == 180:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

def moveRight(number):
    input("Moviendo lado DERECHO G:" + str(number))
    if number == 90:
        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
    if number == 180:
        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

def moveFront(number):
    input("Moviendo lado FRONTAL G:" + str(number))
    if number == 90:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

    if number == 180:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
        servo_R_R.horario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

def moveDown(number):
    input("Moviendo lado INFERIOR G:" + str(number))
    if number == 90:
        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()
    if number == 180:
        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

def moveTop(number):
    input("Moviendo lado SUPERIOR G:" + str(number))
    if number == 90:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

    if number == 180:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()
        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

def moveBack(number):
    input("Moviendo lado TRASERO G:" + str(number))
    if number == 90:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

    if number == 180:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()
        servo_L_R.horario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

def moveLeftR(number):
    input("Moviendo lado IZQUIERDO Reverse G:" + str(number))

    if number == 90:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
    if number == 180:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()


def moveRightR(number):
    input("Moviendo lado DERECHO Reverse G:" + str(number))
    if number == 90:
        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
    if number == 180:
        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
def moveFrontR(number):
    input("Moviendo lado FRONTAL Reverse G:" + str(number))
    if number == 90:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

    if number == 180:
        servo_L_A.abrir()
        servo_L_R.antiHorario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()
        servo_R_R.antiHorario()
        servo_R_A.abrir()
        servo_R_R.centrar()
        servo_R_A.cerrar()

        servo_L_A.abrir()
        servo_L_R.horario()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_L_R.centrar()
        servo_R_A.cerrar()

def moveDownR(number):
    input("Moviendo lado INFERIOR Reverse G:" + str(number))
    if number == 90:
        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()
    if number == 180:
        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()


def moveTopR(number):
    input("Moviendo lado SUPERIOR Reverse G:" + str(number))
    if number == 90:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

    if number == 180:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()
        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()


def moveBackR(number):
    input("Moviendo lado TRASERO Reverse G:" + str(number))
    if number == 90:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

    if number == 180:
        servo_R_A.abrir()
        servo_R_R.antiHorario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()

        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()
        servo_L_R.antiHorario()
        servo_L_A.abrir()
        servo_L_R.centrar()
        servo_L_A.cerrar()

        servo_R_A.abrir()
        servo_R_R.horario()
        servo_R_A.cerrar()
        servo_L_A.abrir()
        servo_R_R.centrar()
        servo_L_A.cerrar()
