コード例 #1
0
    public void Fire(Transform fireTransform, BulletScriptable bulletType, int layer)
    {
        SoundManager.Instance.PlaySoundAtTrack1(bulletFire, 1f, 64, true);
        GameObject bullet = ObjectPooler.SharedInstance.GetPooledObject("bullet");

        if (bullet != null)
        {
            bullet.transform.position = fireTransform.position;
            bullet.transform.rotation = fireTransform.rotation;
            if (layer == 8)
            {
                bullet.layer = 10;
            }
            else if (layer == 9)
            {
                bullet.layer = 11;
            }
            bullet.SetActive(true);
            Rigidbody bulletRigidbody = bullet.GetComponent <Rigidbody>();
            bulletRigidbody.velocity = fireSpeed * fireTransform.forward;
        }
        //GameObject bullet = Instantiate(bulletType.bulletPref, fireTransform.position, fireTransform.rotation);
        //Rigidbody bulletRigidbody = bullet.GetComponent<Rigidbody>();
        //bulletRigidbody.velocity = fireSpeed * fireTransform.forward;
    }
コード例 #2
0
    private void GetBulletType()
    {
        int rand = Random.Range(0, bulletList.Length);

        bulletType = bulletList[rand];
        damage     = bulletType.damage;
        fireSpeed  = bulletType.speed;
    }
コード例 #3
0
 public void InitializeValues(EnemyScriptable enemyType)
 {
     bulletType            = enemyType.bulletType;
     health                = enemyType.health;
     healthSlider.maxValue = health;
     turnSpeed             = enemyType.turnSpeed;
     movementSpeed         = enemyType.movementSpeed;
     fireRate              = enemyType.fireRate;
     patrollingRadius      = enemyType.patrollingRadius;
     patrolTime            = enemyType.patrolTime;
     attackDistance        = enemyType.attackDistance;
     SetScale(enemyType.ScaleMultiplier);
     for (int i = 0; i < tankParts.Length; i++)
     {
         tankParts[i].material = enemyType.material;
     }
 }
コード例 #4
0
 private void Start()
 {
     bulletScriptable = BulletService.Instance.bulletType;
     rigidBody        = GetComponent <Rigidbody>();
 }