Exemplo n.º 1
0
    private IEnumerator AttackRoutine()
    {
        //For trail renderer
        if (player.inControl)
        {
            unCorruptedTrail.enabled = true;
        }
        else
        {
            corruptedTrail.enabled = true;
        }
        canShoot = false;
        weaponAnim.SetTrigger("Attack");
        //ammoEmitter.localEulerAngles = new Vector3(0f, 0f, Random.Range(-50f, 50f));
        ProjectileScript ammo = Instantiate(bullet, ammoEmitter.position, ammoEmitter.localRotation).GetComponent <ProjectileScript>();

        ammo.Setup(ammoEmitter.up, GetMouseAngle, bulletSpeed);
        audioManager.RandomizeSfx(shootSfx);
        yield return(new WaitForSeconds(fireRate));

        canShoot = true;
        //For trail renderer
        if (player.inControl)
        {
            unCorruptedTrail.enabled = false;
        }
        else
        {
            corruptedTrail.enabled = false;
        }
    }
Exemplo n.º 2
0
 private void FireProjectile()
 {
     if (_CurrentState == EnemyState.FIRE || _CurrentState == EnemyState.FIREANDMOVE)
     {
         ProjectileScript PSTemp = Instantiate(PS, this.transform.position, PS.transform.rotation);
         PSTemp.Setup(HelperScript.PlayerRef.transform.position, this.transform.rotation.eulerAngles + new Vector3(90, 0, 0), "", true, null);
     }
     Invoke("FireProjectile", _FireRate);
 }
Exemplo n.º 3
0
    // Update is called once per frame
    void Update()
    {
        if (fireRate <= 0)
        {
            ProjectileScript projectileScript = Instantiate(projectile, projectileSpawner.position, Quaternion.identity).GetComponent <ProjectileScript>();
            projectileScript.Setup(gameObject.transform.localScale.x);

            fireRate = maxFireRate;
        }
        else
        {
            fireRate -= Time.deltaTime;
        }
    }
Exemplo n.º 4
0
    void Update()
    {
        _MousePos = Camera.main.ScreenPointToRay(Input.mousePosition).GetPoint(Camera.main.transform.position.y);
        this.transform.LookAt(_MousePos, this.transform.up);
        this.transform.rotation = Quaternion.Euler(new Vector3(-90, this.transform.rotation.eulerAngles.y + 180));

        if (Input.GetMouseButtonDown(0))
        {
            ProjectileScript PSTemp = Instantiate(PSSlot1, (LeftGunFire?FLGun:FRGun).position, PSSlot1.transform.rotation);
            LeftGunFire = !LeftGunFire;
            PSTemp.Setup(_MousePos, this.transform.rotation.eulerAngles, "", false, null);
        }
        if (Input.GetMouseButtonDown(1) && !_SecondFireDelay)
        {
            ProjectileScript PSTemp = Instantiate(PSSlot2, this.transform.position, Quaternion.Euler(new Vector3(0, 180, 0)));
            PSTemp.Setup(_MousePos, this.transform.rotation.eulerAngles + new Vector3(90, 0, 0), "Missile1", false, DelayCoolback);
            _SecondFireDelay = true;
        }
    }