Ejemplo n.º 1
0
 void CheckForFiring( )
 {
     FireCounter += Time.deltaTime;
     if ((FireCounter >= FireTime) && (GetDistanceToTarget() < TriggerDistance))
     {
         FireCounter = 0;
         if (MissileObject)
         {
             GameObject o;
             if (FireAtTarget)
             {
                 Quaternion rel = Quaternion.LookRotation(Target.position - transform.position);
                 o = Instantiate(MissileObject, this.transform.position + rel * Offset, rel) as GameObject;
             }
             else
             {
                 o = Instantiate(MissileObject, this.transform.position + transform.rotation * Offset, this.transform.rotation) as GameObject;
             }
             if (o)
             {
                 AI_Missile aim = o.GetComponent <AI_Missile>( );
                 aim.Owner  = this;
                 aim.Target = Target;
                 if (aim)
                 {
                     aim.Fire(AttackForce);
                 }
             }
         }
     }
 }
Ejemplo n.º 2
0
    void FireMissile( )
    {
        MissileOffset.x = -MissileOffset.x;
        GameObject go   = Instantiate(Missile, transform.position + transform.rotation * MissileOffset, transform.rotation) as GameObject;
        AI_Missile miss = go.GetComponent <AI_Missile>() as AI_Missile;

        if (miss)
        {
            miss.Owner = this.GetComponent <AI_Agent>();
            if (MissileExplosion)
            {
                miss.Explosion = MissileExplosion;
            }
            miss.Fire(12000);
        }
    }