Beispiel #1
0
    public void ShootLasers()
    {
        if (isLaserAttackReady() && target != null)
        {
            AutoGuidedBullet.Create(laserPrefab, trip.barrel.transform, laserSpeed, 0f, laserDamage, laserDamage, 0f, true, trip.player, target, laserGuidanceStart, laserGuidanceMaxDeviation);

            laserLastUse = Time.time;
        }
    }
    public static GameObject Create(GameObject prefab, Transform barrel, float speed, float dispertion,
                                    float initialDamage, float minDamage, float damageDecrease, bool friendlyFire, Player shooter, GameObject target, float autoGuidanceStart, float maxDeviation)
    {
        GameObject       pro    = Bullet.Create(prefab, barrel, speed, dispertion, initialDamage, minDamage, damageDecrease, friendlyFire, shooter);
        AutoGuidedBullet bullet = pro.GetComponent <AutoGuidedBullet> ();

        bullet.target            = target;
        bullet.autoGuidanceStart = autoGuidanceStart;
        bullet.maxDeviation      = maxDeviation;

        return(pro);
    }
Beispiel #3
0
 void ShootTarget()
 {
     if (Vector3.Distance(transform.position, target.transform.position) > balisticShotMinDistance && !isTargetVisible(target, maxAimingDistance))
     {
         barrel.transform.Rotate(new Vector3(-balisticShotAngle, 0f, 0f));
         AutoGuidedBullet.Create(bulletPrefab, barrel.transform, bulletSpeed, 0f, damage, minDamage, damageDecrease, true, tripod, target, autoGuidanceStart, maxDeviation);
         barrel.transform.Rotate(new Vector3(balisticShotAngle, 0f, 0f));
     }
     else
     {
         AutoGuidedBullet.Create(bulletPrefab, barrel.transform, bulletSpeed, 0f, damage, minDamage, damageDecrease, true, tripod, target, autoGuidanceStart, maxDeviation);
     }
     audio.Play();
     shots++;
 }