예제 #1
0
    // Update is called once per frame
    void Update()
    {
        // posizione attuale
        xCurrentPosition = this.transform.position;

        // morte
        if (Time.time >= TimeStart + Durata)
        {
            Debug.Log("Nebbia DEATH");
            Destroy(gameObject);
            return;
        }

        if (xMovimento == eMovimento.sinistra && xCurrentPosition.x < -21)
        {
            xMovimento = eMovimento.pausa;
            PausaStart = Time.time;
        }
        if (xMovimento == eMovimento.pausa && Time.time >= PausaStart + Pausa)
        {
            xMovimento = eMovimento.destra;
        }

        switch (xMovimento)
        {
        case eMovimento.sinistra:
            NebbiaMovement = new Vector3(-1f, 0f, 0f);
            break;

        case eMovimento.pausa:
            NebbiaMovement = new Vector3(0f, 0f, 0f);
            break;

        case eMovimento.destra:
            NebbiaMovement = new Vector3(1f, 0f, 0f);
            break;
        }


        this.transform.position += NebbiaMovement * Velocita * Time.deltaTime;
    }
예제 #2
0
 // Start is called before the first frame update
 void Start()
 {
     TimeStart  = Time.time;
     PausaStart = 0;
     xMovimento = eMovimento.sinistra;
 }