void cambioEmocion()
    {
        if (GameManager.Instance.getScore() >= puntuacionParaPasarN2)
        {
            if (GameManager.Instance.getScore() >= puntuacionParaPasarN3)
            {
                listaEmocionesActual = emocionesN3;
            }
            else
            {
                listaEmocionesActual = emocionesN2;
            }
        }
        else
        {
            listaEmocionesActual = emociones;
        }

        Emocion nuevaEmocion = listaEmocionesActual[Random.Range(0, emociones.Count)];

        if (nuevaEmocion.GetName() != emocionActual.GetName())
        {
            emocionActual = nuevaEmocion;
            Debug.Log(emocionActual.GetName());
        }
        else
        {
            cambioEmocion();
        }

        GameManager.Instance.addRound();

        actualizarSprite();
    }
        async void CargarEmocion()
        {
            Loading(true);

            var bd = new ServicioBaseDatos();

            emocion = await bd.ObtenerEmocion();

            if (emocion == null)
            {
                emocion = new Emocion()
                {
                    Id = 0, Nombre = "", Score = 0, Foto = ""
                };
                ToolbarItems.RemoveAt(1);
            }
            else
            {
                btnAnalizar.IsEnabled = true;
            }

            BindingContext = emocion;

            Loading(false);
        }
Beispiel #3
0
        public static async Task <Emocion> ObtenerEmocion(Stream foto)
        {
            Emocion emocion = null;

            try
            {
                if (foto != null)
                {
                    var clienteFace   = new FaceServiceClient(Constantes.FaceApiKey, Constantes.FaceApiURL);
                    var atributosFace = new FaceAttributeType[] { FaceAttributeType.Emotion, FaceAttributeType.Age };

                    using (var stream = foto)
                    {
                        Face[] rostros = await clienteFace.DetectAsync(stream, false, false, atributosFace);

                        if (rostros.Any())
                        {
                            var analisisEmocion = rostros.FirstOrDefault().FaceAttributes.Emotion.ToRankedList().FirstOrDefault();
                            emocion = new Emocion()
                            {
                                Nombre = analisisEmocion.Key,
                                Score  = analisisEmocion.Value
                            };
                        }

                        foto.Dispose();
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(emocion);
        }
    // Start is called before the first frame update
    void Start()
    {
        renderer = GetComponent <SpriteRenderer>();

        añadirEmociones();
        listaEmocionesActual = emociones;
        emocionActual        = listaEmocionesActual[Random.Range(0, listaEmocionesActual.Count)];

        actualizarSprite();
        tiempoLimite = GameManager.Instance.maxTime;
        tiempoActual = tiempoLimite;

        Debug.Log(emocionActual.GetName());
    }
Beispiel #5
0
        public async Task <bool> ActualizarEmocion(Emocion emocion)
        {
            try
            {
                bd.Emocion.Update(emocion);
                await bd.SaveChangesAsync();

                return(true);
            }
            catch (Exception e)
            {
                var msg = e.Message;
                return(false);
            }
        }
Beispiel #6
0
        public async Task <bool> AgregarEmocion(Emocion emocion)
        {
            try
            {
                await bd.Emocion.AddAsync(emocion);

                await bd.SaveChangesAsync();

                return(true);
            }
            catch (Exception e)
            {
                return(false);
            }
        }