コード例 #1
0
    IEnumerator Shoot(float waitTime)
    {
        yield return(new WaitForSeconds(waitTime));

        for (int i = 0; i < canonMountCapacity; i++)
        {
            EnemyWeapon_Base script = canonMounted[i].GetComponent <EnemyWeapon_Base> ();
            script.fireWeapon();
        }
        firstShot = true;
    }
コード例 #2
0
    public override void initializeCanon(Transform scale, int i)
    {
        canonMounted[i] = (GameObject)Object.Instantiate(Resources.Load(canonTypes[i]));
        Transform thisTrans = canonMounted[i].transform;

        canonMounted[i].transform.localScale = new Vector3(thisTrans.localScale.x * scale.localScale.x, thisTrans.localScale.y * scale.localScale.y, thisTrans.localScale.z * scale.localScale.z);
        canonMounted[i].transform.position   = canonMount[i].position;
        canonMounted[i].transform.rotation   = canonMount[i].rotation;
        canonMounted[i].transform.parent     = canonMount[i].transform;
        EnemyWeapon_Base wwscript = canonMounted [i].GetComponent <EnemyWeapon_Base> ();

        wwscript.forceStart(fireRate, damage);
    }
コード例 #3
0
    // Update is called once per frame
    public override void Update()
    {
        //print ("dead enemies: "+Parent.deadEnemy);

        if (isDead)
        {
            Parent.deadEnemy++;
            Destroy(gameObject);
        }
        Transform tmp    = transform;
        Vector3   tmpPos = tmp.position;

        tmpPos.y          += maneuverSpeed * Time.deltaTime;
        transform.position = tmpPos;
        manageShader();

        if (!gameObject.activeSelf)
        {
            return;
        }

        // deletes the enemy if it flies past the camera:
        if (transform.position.y > cameraPos.transform.position.y)
        {
            Destroy(gameObject);
        }
        if (firstShot)
        {
            for (int i = 0; i < canonMountCapacity; i++)
            {
                EnemyWeapon_Base script = canonMounted [i].GetComponent <EnemyWeapon_Base> ();
                script.fireWeapon();
            }
        }

        /*RaycastHit hit1;
         * Vector3 forward1 = this.transform.FindChild("mountT0").transform.TransformDirection(Vector3.forward) * 20000; //Det sidste tal ændrer længen af søgefeltet (tror jeg)
         * //	Debug.DrawRay(this.transform.FindChild("mountT0").transform.position, forward1, Color.green);
         * RaycastHit hit2;
         * Vector3 forward2 = this.transform.FindChild("mountT1").transform.TransformDirection(Vector3.forward) * 20000; //Det sidste tal ændrer længen af søgefeltet (tror jeg)
         * //	Debug.DrawRay(this.transform.FindChild("mountT1").transform.position, forward2, Color.green);
         *
         * if (Physics.Raycast(this.transform.FindChild("mountT0").transform.position, forward1, out hit1))
         * {
         *      if (hit1.collider.tag == "Player")
         *      {
         *              for (int i = 0; i < canonMountCapacity; i++) {
         *                      EnemyWeapon_Base script = canonMounted[i].GetComponent<EnemyWeapon_Base> ();
         *                      script.fireWeapon ();
         *              }
         *      }
         * }
         * if (Physics.Raycast(this.transform.FindChild("mountT1").transform.position, forward2, out hit2))
         * {
         *      if (hit2.collider.tag == "Player")
         *      {
         *              for (int i = 0; i < canonMountCapacity; i++) {
         *                      EnemyWeapon_Base script = canonMounted[i].GetComponent<EnemyWeapon_Base> ();
         *                      script.fireWeapon ();
         *              }
         *      }
         * }*/
    }