示例#1
0
    public void Update()
    {
        if (!item)
        {
            item = this.GetComponent <OSItem> ();
            return;
        }

        if (!bullet)
        {
            bullet = item.ammunition.projectile;
        }

        if (fireTimer > 0)
        {
            fireTimer -= Time.deltaTime;
        }

        if (flashTimer > 0)
        {
            flashTimer -= Time.deltaTime;
        }

        if (muzzleFlash)
        {
            if (flashTimer > 0 && !muzzleFlash.activeSelf)
            {
                muzzleFlash.SetActive(true);

                if (muzzleFlash.particleSystem)
                {
                    muzzleFlash.particleSystem.Play();
                }
            }
            else if (flashTimer <= 0 && muzzleFlash.activeSelf)
            {
                muzzleFlash.SetActive(false);
            }
        }

        if (projectileTypeThreshold > 0)
        {
            if (Time.timeScale >= projectileTypeThreshold)
            {
                projectileType = OSProjectileType.Raycast;
            }
            else if (bullet)
            {
                projectileType = OSProjectileType.Prefab;
            }
        }
    }
示例#2
0
	public void Update () {
		if ( !item ) {
			item = this.GetComponent< OSItem > ();
			return;
		}

		if ( !bullet ) {
			bullet = item.ammunition.projectile;
		}

		if ( fireTimer > 0 ) {
			fireTimer -= Time.deltaTime;
		}

		if ( flashTimer > 0 ) {
			flashTimer -= Time.deltaTime;
		}

		if ( muzzleFlash ) {
			if ( flashTimer > 0 && !muzzleFlash.activeSelf ) {
				muzzleFlash.SetActive ( true );

				if ( muzzleFlash.particleSystem ) {
					muzzleFlash.particleSystem.Play ();
				}
			
			} else if ( flashTimer <= 0 && muzzleFlash.activeSelf ) {
				muzzleFlash.SetActive ( false );

			}
		}

		if ( projectileTypeThreshold > 0 ) {
			if ( Time.timeScale >= projectileTypeThreshold ) {
				projectileType = OSProjectileType.Raycast;
			
			} else if ( bullet ) {
				projectileType = OSProjectileType.Prefab;
			
			}
		}
	}