Exemple #1
0
        /// <summary>
        /// Salva os dados do cavalete
        /// </summary>
        /// <param name="cavalete"></param>
        /// <returns></returns>
        public SaveResult SalvarCavalete(Cavalete cavalete)
        {
            cavalete.Require("cavalete").NotNull();

            // Verifica se algum cavelate com o mesmo cod interno
            var consulta = SourceContext.Instance.CreateQuery()
                           .From <Glass.Data.Model.Cavalete>()
                           .Where("CodInterno = ?cod")
                           .Add("?cod", cavalete.CodInterno);

            if (cavalete.IdCavalete > 0)
            {
                consulta.WhereClause.And("IdCavalete <> ?id")
                .Add("?id", cavalete.IdCavalete);
            }

            if (consulta.ExistsResult())
            {
                return(new SaveResult(false, ("Já existe um cavalete cadastrado com o cód.: " + cavalete.CodInterno).GetFormatter()));
            }

            using (var session = SourceContext.Instance.CreateSession())
            {
                var resultado = cavalete.Save(session);

                if (!resultado)
                {
                    return(resultado);
                }

                return(session.Execute(false).ToSaveResult());
            }
        }
    private void OnTriggerEnter(Collider other)
    {
        if (other.gameObject.layer == LayerMask.NameToLayer("Inimigo"))
        {
            if (!gameManagement.EstaBebado())
            {
                gameManagement.CervejaAcumulada    = 0;
                gameManagement.TemporizadorCerveja = 0;
            }
        }

        if (other.gameObject.CompareTag("Bueiro"))
        {
            print("Bueiro");
            rgb.velocity            = Vector3.zero;
            temporizadorSemControle = TempoSemControle;
            GetComponent <CapsuleCollider> ().enabled = false;
        }

        if (other.gameObject.CompareTag("Cavalhete"))
        {
            hitCavalete = other.GetComponent <Cavalete>();
        }

        if (other.gameObject.CompareTag("Final"))
        {
            gameManagement.TerminouFase = true;
        }
    }
Exemple #3
0
        /// <summary>
        /// Apaga os dados do cavalete
        /// </summary>
        /// <param name="cavalete"></param>
        /// <returns></returns>
        public DeleteResult ApagarCavalete(Cavalete cavalete)
        {
            cavalete.Require("cavalete").NotNull();

            // Verifica se alguma peça foi vinculada neste cavalete
            if (SourceContext.Instance.CreateQuery()
                .From <Glass.Data.Model.LeituraProducao>()
                .Where("IdCavalete=?id")
                .Add("?id", cavalete.IdCavalete)
                .ExistsResult())
            {
                return(new DeleteResult(false,
                                        "Este Cavalete não pode ser excluído por haver peças relacionadas ao mesmo.".GetFormatter()));
            }


            using (var session = SourceContext.Instance.CreateSession())
            {
                var resultado = cavalete.Delete(session);

                if (!resultado)
                {
                    return(resultado);
                }

                return(session.Execute(false).ToDeleteResult());
            }
        }
    /// <summary>
    /// Movimenta o Player para frente e para Faixa ativa
    /// </summary>
    private void Moviment()
    {
        if (gameManagement.CervejaAcumulada > 0)
        {
            if (gameManagement.EstaBebado())
            {
                currentSpeed.x = Speed.x - ModVelocidadeCerveja * 2;
                currentSpeed.y = Speed.y - ModVelocidadeCerveja * 2;
            }
            else
            {
                currentSpeed.x = Speed.x + ModVelocidadeCerveja * gameManagement.CervejaAcumulada;
                currentSpeed.y = Speed.y + ModVelocidadeCerveja * gameManagement.CervejaAcumulada;
            }
        }
        else
        {
            currentSpeed.x = Speed.x;
            currentSpeed.y = Speed.y;
        }

        if (hitCavalete != null)
        {
            currentSpeed.x            *= hitCavalete.ReducaVelocidade;
            currentSpeed.y            *= hitCavalete.ReducaVelocidade;
            hitCavalete.TempoDeEfeito -= Time.deltaTime;
            if (hitCavalete.TempoDeEfeito <= 0)
            {
                hitCavalete = null;
            }
        }
        if (carroNoCaminho)
        {
            currentSpeed.x = 0;
        }
        //MOVIMENTO ENTRE FAIXAS - EIXO Z
        float   distanceTime = (Time.time - startTime) * currentSpeed.y;
        Vector3 movment      = transform.position;

        if (!PlayerInActiveSection())
        {
            movment.z = Mathf.Lerp(transform.position.z, Pista.GetPosZFaixaAtual(), distanceTime);
        }

        //MOVIMENTO DE CORRIDA - EIXO X

        movment.x = Mathf.Lerp(transform.position.x, transform.position.x + 1, currentSpeed.x * Time.deltaTime);

        transform.position = movment;
    }
    void Start()
    {
        rgb            = GetComponent <Rigidbody> ();
        gameManagement = (GameManagement)FindObjectOfType(typeof(GameManagement));
        groundCheck    = GameObject.Find("GroundCheck").transform;

        // Guarda os Objetos que identificas as faixas
        Pista  = (Pista)FindObjectOfType(typeof(Pista));
        sombra = GameObject.FindGameObjectWithTag("SombraPlayer").transform;
        distanciaInicialPlayerSombra = Mathf.Abs(sombra.position.y - transform.position.y);
        scaleInicialSombra           = sombra.localScale;
        // Posiciona na Faixa Inicial
        transform.position      = new Vector3(transform.position.x, transform.position.y, Pista.GetPosZFaixaAtual());
        posicaoSombra           = transform.position.y - distanciaInicialPlayerSombra;
        currentSpeed            = Speed;
        temporizadorSemControle = 0;
        posYInicial             = transform.position.y;
        hitCavalete             = null;
    }