Пример #1
0
    void Shoot()
    {
        //aim
        Vector3 rayDirection = cameraController.transform.forward;

        //feedback
        muzzleFlash.Play();
        AudioHelper.PlayClip2D(fireSound, 1f);
        //debug ray
        Debug.DrawRay(rayOrigin.position, rayDirection * shootDistance, Color.cyan, 1f);
        //raycast check
        if (Physics.Raycast(rayOrigin.position, rayDirection, out objectHit, shootDistance, hitLayers))
        {
            UnityEngine.Debug.Log(objectHit.transform.name);
            ImpactFlash();

            //apply damage if object is enemy
            if (objectHit.transform.tag == "Enemy")
            {
                EnemyShooter enemyShooter = objectHit.transform.GetComponent <EnemyShooter>();
                if (enemyShooter != null)
                {
                    enemyShooter.TakeDamage(primaryWeaponDamage);
                }
            }
        }
        else
        {
            UnityEngine.Debug.Log("miss");
        }
    }
Пример #2
0
    // fire the weapon using a raycast
    void Shoot()
    {
        // calculate direction to shoot the ray
        Vector3 rayDirection = cameraController.transform.forward;

        // cast a debug ray
        Debug.DrawRay(rayOrigin.position, rayDirection * shootDistance, Color.cyan, 1f);
        // do the raycast
        if (Physics.Raycast(rayOrigin.position, rayDirection, out objectHit, shootDistance, hitLayers))
        {
            // Hit thing DoStuff() code
            Debug.Log("You HIT the " + objectHit.transform.name);

            if (objectHit.transform.tag == "Enemy")
            {
                Debug.Log("DEAL DAMAGE");
                // Visual Feedback
                visualFeedbackObject.transform.position = objectHit.point;
                // Apply damage if it's enemy
                EnemyShooter enemyShooter = objectHit.transform.gameObject.GetComponent <EnemyShooter>();
                if (enemyShooter != null)
                {
                    enemyShooter.TakeDamage(weaponDamage);
                }
            }
        }
        else
        {
            Debug.Log("Miss.");
        }
    }
Пример #3
0
    //fire the weapon using a raycast
    void Shoot()
    {
        //calculate direction to shoot
        Vector3 rayDirection = cameraController.transform.forward;

        //cast a debug ray
        UnityEngine.Debug.DrawRay(rayOrigin.position, rayDirection * shootDistance, Color.blue, 1f);
        //do the raycast
        if (Physics.Raycast(rayOrigin.position, rayDirection, out objectHit, shootDistance))
        {
            //do stuff when hitting an object
            UnityEngine.Debug.Log("You hit the " + objectHit.transform.name + "!");
            //visual feedback
            visualFeedbackObject.transform.position = objectHit.point;
            //apply damage to enemy
            EnemyShooter enemyShooter = objectHit.transform.gameObject.GetComponent <EnemyShooter>();
            if (enemyShooter != null)
            {
                enemyShooter.TakeDamage(weaponDamage);
                enemyShooter.TakeKnockback(weaponKnockback);
            }
        }
        else
        {
            //do stuff when missing objects
            UnityEngine.Debug.Log("Miss");
        }
    }
Пример #4
0
 public void RespawnEnemy(EnemyShooter enemy)
 {
     CheckNewEnemiesBorning();
     if (currentWaveValue > 0)
     {
         StartCoroutine(RebornShooterEnemies(enemy));
     }
 }
Пример #5
0
    private void releaseCrate(EnemyShooter destroyed)
    {
        var crate = Instantiate <GameObject>(CratePrefab[Random.Range(0, CratePrefab.Length)]);

        crate.transform.position = destroyed.transform.position;
        crate.GetComponent <Rigidbody2D>().velocity = new Vector2(0, CrateDropVelocity);

        ++CratesReleasedInCurrentWave;
    }
Пример #6
0
    private void RandomizeBonusDrop(EnemyShooter destroyed)
    {
        int potentialCrates = UEnemyDestroyedListener.NumberOfActiveEnemies;
        int cratesToRelease = MinCratesPerWave - CratesReleasedInCurrentWave;

        if (cratesToRelease == potentialCrates || shouldDropCrateByLuck())
        {
            releaseCrate(destroyed);
        }
    }
Пример #7
0
    private void Awake()
    {
        _enemyMover = new EnemyMover(GetComponent <Rigidbody>(), transform);

        if (isShotable == false)
        {
            return;
        }
        _enemyShooter = GetComponent <EnemyShooter>();
    }
Пример #8
0
    IEnumerator RebornShooterEnemies(EnemyShooter enemy)
    {
        yield return(new WaitForSeconds(timeToRessurectionSpecialEnemy));

        int spawnIndex = Random.Range(0, rangedSpawnPoints.Count);

        enemy.transform.position = rangedSpawnPoints[spawnIndex].transform.position;
        enemy.transform.rotation = rangedSpawnPoints[spawnIndex].transform.rotation;
        enemy.Reborn();
    }
Пример #9
0
 private void Awake()
 {
     _shooter        = GetComponent <EnemyShooter>();
     _mover          = GetComponent <EnemyMover>();
     _jumper         = GetComponent <EnemyJumper>();
     _enemyAnimator  = GetComponent <EnemyAnimator>();
     _health         = GetComponent <Health>();
     _collider       = GetComponent <BoxCollider>();
     _enemyHolder    = FindObjectOfType <EnemyHolder>();
     _characterAudio = GetComponent <CharacterAudio>();
 }
Пример #10
0
    float lastShotTime = -1f;           // Last Time when Shot



    void Awake()
    {
        player  = GameObject.FindGameObjectWithTag("Player");
        shooter = GetComponent <EnemyShooter>();

        // Ignore Player Collision
        Physics2D.IgnoreLayerCollision(
            LayerMask.NameToLayer("Character"),
            LayerMask.NameToLayer("Enemy")
            );
    }
Пример #11
0
    public static int totalEnemies; //reset during game over

    // Use this for initialization
    void Start()
    {
        Mover       = GetComponentInParent <EnemyMover>();
        AI          = GetComponentInParent <FSM>();
        Shooter     = GetComponentInParent <EnemyShooter>();
        CurrentTurn = FindObjectOfType <Turn>();

        //meshes
        firingMesh.SetActive(false);
        meleeMesh.SetActive(false);
        acting = false;
    }
Пример #12
0
    public void EnemyDestroyed(EnemyShooter enemy)
    {
        var addedScore = Instantiate(TempScorePrefab);

        addedScore.transform.position = enemy.transform.position;

        var movingScore = addedScore.GetComponentInChildren <MovingScore>();

        movingScore.TotalScore = ScorePresenter;
        movingScore.UpdateScore(enemy.ScoreValue);
        movingScore.Scorer = this;
        movingScore.Canvas = addedScore;
    }
Пример #13
0
    public static void ReportEnemyDestroyed(EnemyShooter destroyed)
    {
        if (OnBeforeEnemyDestroyed != null)
        {
            OnBeforeEnemyDestroyed(destroyed);
        }

        Interlocked.Decrement(ref numberOfActiveEnemies);

        if (OnNumberOfActiveEnemiesChanged != null)
        {
            OnNumberOfActiveEnemiesChanged();
        }
    }
Пример #14
0
    void HitObject()
    {
        Vector3 rayDirection = cameraController.transform.forward;

        Debug.DrawRay(rayOrigin.position, rayDirection * shootDistance, Color.red, 0.5f);
        if (Physics.Raycast(rayOrigin.position, rayDirection, out objectHit, shootDistance, hitLayers))
        {
            EnemyShooter enemyShooter = objectHit.transform.GetComponent <EnemyShooter>();
            if (enemyShooter != null)
            {
                enemyShooter.TakeDamage(punchDamage);
            }
        }
    }
Пример #15
0
    //on trigger enter
    void OnTriggerEnter()
    {
        positionHolder = this.gameObject.transform.position;
        AudioHelper.PlayClip2D(explosionSound, 1f);
        GameObject explosionInstance = Instantiate(explosion, positionHolder, Quaternion.identity);

        Destroy(explosionInstance, 3.5f);
        Collider[] hitColliders = Physics.OverlapSphere(positionHolder, hitRadius, hitLayers);
        foreach (var hitCollider in hitColliders)
        {
            EnemyShooter shooter = hitCollider.gameObject.GetComponent <EnemyShooter>();
            if (shooter != null)
            {
                shooter.TakeDamage(grenadeDamage);
            }
        }
        //do visuals and sound
        //destroy
        Destroy(this.gameObject, 4f);
    }
Пример #16
0
    //Shoot gun using raycast
    void Shoot()
    {
        //calc direction to shoot
        Vector3 rayDirection = cameraController.transform.forward;

        //cast debug ray
        Debug.DrawRay(rayOrigin.position, rayDirection * shootDistance, Color.blue, 1f);
        //do raycast
        if (Physics.Raycast(rayOrigin.position, rayDirection, out objectHit, shootDistance, hitLayers) && (PlayerHealth.health > 0))
        {
            Debug.Log("You Hit the  " + objectHit.transform.name);

            if (objectHit.transform.tag == "Enemy")
            {
                Debug.Log("deal damage");
                //visual feedback
                visualFeedbackObject.transform.position = objectHit.point;
                //apply damage if enemy
                EnemyShooter enemyShooter = objectHit.transform.gameObject.GetComponent <EnemyShooter>();
                if (enemyShooter != null)
                {
                    enemyShooter.TakeDamage(weaponDamage);
                    _enemyHit.Play();
                    Debug.Log("Hit enemy");
                }
            }
            if (objectHit.transform.tag == "Wall")
            {
                _hitWall.Play();
                Debug.Log("Hit wall");
            }



            //check health, kill enemy
        }
        else
        {
            Debug.Log("Miss");
        }
    }
Пример #17
0
        private SplineWalker InitSpawned()
        {
            // micro optimization
            var thisWalker = GetComponent<SplineWalker>();

            // Instantiating
            EnemyShooter obj = Instantiate(childPrefab);
            obj.GetComponent<EnemyShooter>().SetConfig(spawner);

            // setting common variables
            obj.transform.position = transform.position;

            var spawnedWalker = obj.GetComponent<SplineWalker>();
            spawnedWalker.duration = thisWalker.duration;
            spawnedWalker.progress = thisWalker.progress;
            spawnedWalker.Spline = thisWalker.Spline;

            UEnemyDestroyedListener.reportNewEnemy();

            return spawnedWalker;
        }
Пример #18
0
    // fire weapon using raycast
    void Shoot()
    {
        Vector3 rayDirection = cameraController.transform.forward;

        // cast ray
        Debug.DrawRay(rayOrigin.position, rayDirection * shootDistance, Color.blue, 1f);
        // do raycast
        if (Physics.Raycast(rayOrigin.position, rayDirection, out objectHit, shootDistance))
        {
            EnemyShooter enemyShooter = objectHit.transform.gameObject.GetComponent <EnemyShooter>();
            if (enemyShooter != null)
            {
                Debug.Log("Hit enemy!");
                enemyShooter.TakeDamage(weaponDamage);
            }
        }
        else
        {
            Debug.Log("Missed!");
        }
    }
Пример #19
0
    public void Init(LevelManager lm)
    {
        //enemyStats = GetComponent<EnemyStats>();
        //motor = GetComponent<EnemyMotor>();
        //enemyStats.Init(levelManager);

        levelManager = lm;

        shooter    = new EnemyShooter();
        enemyStats = new EnemyStats();
        enemyStats.Init(enemyType);

        if (_currentCoroutine != null)
        {
            StopCoroutine(_currentCoroutine);

            _currentCoroutine = null;
        }

        _currentCoroutine = StartCoroutine(LoadStats());
        StartCoroutine(LoadStats());
    }
Пример #20
0
 // Use this for initialization
 void Start()
 {
     myShooter = GetComponent <EnemyShooter>();
 }
Пример #21
0
    void ShootLaserFromTargetPositionL(Vector3 targetPosition, Vector3 direction, float length)
    {
        Ray ray = new Ray(targetPosition, direction);

        RaycastHit raycastHit;
        Vector3    endPosition = targetPosition + (length * direction);

        if (grabAction1L.GetStateDown(handTypeL))
        {
            Sound.PlayOneShot(soundReload);
            if (Time.time - aowailop2 >= ti)
            {
                if (AmmoL > 0)
                {
                    float seconds = (float)900 / 9000f;
                    vibra.Execute(0, seconds, 20f / seconds, 20, handTypeL);


                    laserLineRendererL.enabled = true;
                    Sound.PlayOneShot(soundShoot);
                    particleL.Emit(1);

                    if (Physics.Raycast(ray, out raycastHit, length))
                    {
                        if (raycastHit.transform.tag == "Enemy")
                        {
                            if (raycastHit.transform.name == "head")
                            {
                                EnemyShooter target = raycastHit.transform.GetComponentInChildren <EnemyShooter>();
                                if (target != null)
                                {
                                    Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                    GameObject particleGun2 = Instantiate(blood, raycastHit.point, rot);

                                    Destroy(particleGun2, 2f);
                                    target.TakeDamage(100);
                                    print("001");
                                }
                            }
                            else
                            {
                                EnemyShooter target = raycastHit.transform.GetComponent <EnemyShooter>();
                                if (target != null)
                                {
                                    Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                    GameObject particleGun2 = Instantiate(blood, raycastHit.point, rot);


                                    Destroy(particleGun2, 2f);
                                    target.TakeDamage(ShootDamage);
                                }
                            }
                        }



                        if (raycastHit.transform.name == "Militarytarget")
                        {
                            raycastHit.rigidbody.AddForce(-raycastHit.normal * 50f);
                        }



                        if (raycastHit.transform.tag == "headAi")
                        {
                            if (raycastHit.transform.name == "head")
                            {
                                ScriptSitShoot target = raycastHit.transform.GetComponentInChildren <ScriptSitShoot>();
                                if (target != null)
                                {
                                    Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                    GameObject particleGun2 = Instantiate(blood, raycastHit.point, rot);

                                    Destroy(particleGun2, 2f);
                                    target.TakeDamage(100);
                                    print("001");
                                }
                            }
                            else
                            {
                                ScriptSitShoot target = raycastHit.transform.GetComponent <ScriptSitShoot>();
                                if (target != null)
                                {
                                    Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                    GameObject particleGun2 = Instantiate(blood, raycastHit.point, rot);


                                    Destroy(particleGun2, 2f);
                                    target.TakeDamage(ShootDamage);
                                }
                            }
                        }



                        if (raycastHit.transform.tag == "Bomb")
                        {
                            ScriptBome target = raycastHit.transform.GetComponent <ScriptBome>();
                            if (target != null)
                            {
                                Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                GameObject particleGun2 = Instantiate(blood, raycastHit.point, rot);


                                Destroy(particleGun2, 2f);
                                target.TakeDamage(ShootDamage);
                            }
                        }

                        if (raycastHit.transform.tag == "Bossfinal")
                        {
                            ScriptHeadShot target = raycastHit.transform.GetComponent <ScriptHeadShot>();
                            if (target != null)
                            {
                                Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                GameObject particleGun2 = Instantiate(blood, raycastHit.point, rot);


                                Destroy(particleGun2, 2f);
                                target.TakeDamage(10);
                            }
                        }

                        if (raycastHit.transform.tag == "StartGame")
                        {
                            OpenDoor target = raycastHit.transform.GetComponent <OpenDoor>();
                            if (target != null)
                            {
                                Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                GameObject particleGun2 = Instantiate(particleGun, raycastHit.point, rot);


                                Destroy(particleGun2, 2f);
                                target.TakeDamage(ShootDamage);
                            }
                        }

                        if (raycastHit.transform.tag == "lobot")
                        {
                            EnemyShooter2 target = raycastHit.transform.GetComponent <EnemyShooter2>();
                            if (target != null)
                            {
                                Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                GameObject particleGun2 = Instantiate(blood, raycastHit.point, rot);


                                Destroy(particleGun2, 2f);
                                target.TakeDamage(ShootDamage);
                            }
                        }

                        if (raycastHit.transform.tag == "newgame")
                        {
                            SceneManager.LoadScene(0);
                        }

                        if (raycastHit.transform.tag == "hp")
                        {
                            reHp target = raycastHit.transform.GetComponent <reHp>();
                            if (target != null)
                            {
                                Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                GameObject particleGun2 = Instantiate(particleGun, raycastHit.point, rot);

                                Sound.PlayOneShot(soundReHp, 30f);
                                Destroy(particleGun2, 2f);
                                ScriptHPStam.currentHP += 100;
                                target.TakeDamage(500);
                            }
                        }

                        if (raycastHit.transform.tag == "Bullet")
                        {
                            EnemyBullet target = raycastHit.transform.GetComponent <EnemyBullet>();
                            if (target != null)
                            {
                                Quaternion rot = Quaternion.FromToRotation(Vector3.forward, raycastHit.normal);

                                GameObject particleGun2 = Instantiate(particleGun, raycastHit.point, rot);


                                Destroy(particleGun2, 2f);

                                target.TakeDamage(ShootDamage);
                            }
                        }

                        if (raycastHit.transform.tag == "StartGame")
                        {
                            Sound.PlayOneShot(soundReHp, 30f);
                            StartCoroutine(stargame());
                        }



                        AmmoL--;
                    }
                    else
                    {
                        print("Empty");
                    }
                    endPosition = raycastHit.point;
                }

                aowailop2 = Time.time;
            }

            laserLineRendererL.SetPosition(0, targetPosition);
            laserLineRendererL.SetPosition(1, endPosition);
        }
    }
Пример #22
0
 // Use this for initialization
 void Start()
 {
     myShooter = GetComponent <EnemyShooter>();
     startX    = transform.position.x;
 }
Пример #23
0
    public void replaceSceneObject(Area area, float areasLength, int areasX, bool oposite = false)
    {
        print(area.name + " AREA");
        borderTransforms = new List <Transform> ();
        this.area        = area;
        GameObject[] gos     = area.getSceneObjects();
        bool         nubesOn = false;

        foreach (GameObject go in gos)
        {
            SceneObject sceneObject = null;
            Vector3     pos         = go.transform.position;
            pos.z += areasLength;
            pos.x += areasX;
            if (oposite)
            {
                pos.z *= -1;
            }


            //  if (!nubesOn)
            //  {
            //  nubesOn = true;
            //   addDecoration("Nubes_real", pos, new Vector3(0, Random.Range(0,2), 5));

            //  }

            switch (go.name)
            {
            case "extralargeBlock1":
            case "flyer":
            case "largeBlock1":
            case "mediumBlock1":
            case "smallBlock1":
            case "extraSmallBlock1":
            case "Coin":
            case "bloodx1":
            //case "Yuyo":
            case "enemyFrontal":
            case "enemyWater":
            case "enemySide":
            case "enemyBack":
            case "castle":
            case "SideMountain":
            case "bonusEntrance":
            case "Cascade":
            case "firewall":
            case "Baranda1":
            case "Tumba":
            case "enemyNaveSimple":

                if (go.name == "smallBlock1" || go.name == "extraSmallBlock1")
                {
                    sceneObject = Pool.GetObjectForType(go.name + "_real", true);
                }
                else
                {
                    sceneObject = Pool.GetObjectForType(go.name + "_real", false);
                }

                if (sceneObject)
                {
                    sceneObject.isActive = false;
                    sceneObject.Restart(pos);
                    sceneObject.transform.rotation = go.transform.rotation;

                    //if (go.name == "Yuyo")
                    //	sceneObject.SetMaterialByVideoGame ();

                    //sceneObject.changeMaterial("pasto");

                    if (go.name == "extralargeBlock1")
                    {
                        //GameObject goNew = new GameObject ();
                        //goNew.transform.position = pos;
                        //goNew.transform.rotation = go.transform.rotation;
                        //borderTransforms.Add (goNew.transform);

//						int num = Random.Range(1, 4);
//						string decorationName = "";
//						if (num == 1)
//							decorationName = "flores1_real";
//						if (num == 2)
//							decorationName = "flores2_real";
//						else if (num == 3)
//							decorationName = "floorFlowers_real";
//
//						if (decorationName != "")
//							addDecoration(decorationName, pos, Vector3.zero);
                    }
                    //  }
                    if (go.GetComponent <DecorationManager>())
                    {
                        addDecoration("Baranda1_real", pos, new Vector3(5.5f, 0, 3));
                        addDecoration("Baranda1_real", pos, new Vector3(-5.5f, 0, 3));
                        addDecoration("Baranda1_real", pos, new Vector3(5.5f, 0, -3));
                        addDecoration("Baranda1_real", pos, new Vector3(-5.5f, 0, -3));
                    }
                }
                else
                {
                    Debug.LogError("___________NO EXISTIO EL OBJETO: " + go.name);
                    Data.Instance.events.ForceFrameRate(0);
                }
                break;
            }



            SceneObject clone = null;


            if (go.name == "FloorSurface")
            {
                clone = FloorSurface;
            }
            if (go.name == "PisoPinche")
            {
                clone = PisoPinche;
            }
            else if (go.name == "house1")
            {
                clone = house1;
            }
            else if (go.name == "house2")
            {
                clone = house2;
            }
            else if (go.name == "house3")
            {
                clone = house3;
            }
            else if (go.name == "house4")
            {
                clone = house4;
            }
            else if (go.name == "rampa")
            {
                clone = rampa;
            }
            else if (go.name == "rampaHuge")
            {
                clone = rampaHuge;
            }
            else if (go.name == "wallBig")
            {
                //  addDecorationWithRotation("Graffiti_Real", pos, go.transform.localEulerAngles);
                clone = wallBig;
            }
            else if (go.name == "wallMedium")
            {
                clone = wallMedium;
            }
            else if (go.name == "wallSmall")
            {
                clone = wallSmall;
            }
            else if (go.name == "wallSuperSmall")
            {
                clone = wallSuperSmall;
            }
            else if (go.name == "jumper")
            {
                clone = jumper;
            }
            else if (go.name == "Lava")
            {
                clone = Lava;
            }
            else if (go.name == "Water")
            {
                clone = Water;
            }
            else if (go.name == "Boss1")
            {
                clone = Boss1;
            }
            else if (go.name == "Boss2")
            {
                clone = Boss2;
            }
            else if (go.name == "BossCalecitas1")
            {
                clone = BossCalecitas1;
            }
            else if (go.name == "BossCreator")
            {
                clone = BossCreator;
            }
            else if (go.name == "BossSpace1")
            {
                clone = BossSpace1;
            }
            else if (go.name == "BossPacmans")
            {
                clone = BossPacmans;
            }
            else if (go.name == "BossGalaga")
            {
                clone = BossGalaga;
            }
            else if (go.name == "BossPacmansIntro")
            {
                clone = BossPacmansIntro;
            }
            else if (go.name == "Calecita")
            {
                clone = Calecita;
            }
            else if (go.name == "Starting")
            {
                clone = Starting;
            }
            else if (go.name == "bomb1")
            {
                clone = bomb1;
            }
            else if (go.name == "tunel1")
            {
                clone = tunel1;
            }
            else if (go.name == "tunel2")
            {
                clone = tunel2;
            }
            else if (go.name == "cilindro")
            {
                clone = cilindro;
            }
            else if (go.name == "enemyGhost")
            {
                clone = enemyGhost;
            }
            else if (go.name == "palmTall")
            {
                clone = palm_tall;
                go.transform.localEulerAngles = new Vector3(0, Random.Range(0, 4) * 90, 0);
            }
            else if (go.name == "palm")
            {
                int ran = Random.Range(0, 60);
                if (ran < 20)
                {
                    clone = palm;
                }
                else if (ran < 40)
                {
                    clone = palm2;
                }
                else
                {
                    clone = palm3;
                }

                go.transform.localEulerAngles = new Vector3(0, Random.Range(0, 4) * 90, 0);
                //}
            }
            else if (go.name == "streetFloor")
            {
                clone = streetFloor;
            }
            else if (go.name == "streetFloorSmall")
            {
                clone = streetFloorSmall;
            }
            else if (go.name == "levelSignal")
            {
                clone = levelSignal;
            }
            else if (go.name == "GrabbableJetpack")
            {
                clone = GrabbableJetpack;
            }
            else if (go.name == "GrabbableInvensible")
            {
                clone = GrabbableInvensible;
            }
            else if (go.name == "borde1")
            {
                clone = borde1;
            }
            else if (go.name == "fences")
            {
                clone = fences;
            }
            else if (go.name == "rainbow")
            {
                clone = rainbow;
            }
            else if (go.name == "Listener")
            {
                clone = Listener;
            }
            else if (go.name == "cruz")
            {
                clone = cruz;
            }
            else if (go.name == "CruzGrande")
            {
                clone = CruzGrande;
            }
            else if (go.name == "rueda1")
            {
                clone = rueda1;
            }
            else if (go.name == "helice1")
            {
                clone = helice1;
            }
            else if (go.name == "helice2")
            {
                clone = helice2;
            }
            else if (go.name == "subibaja")
            {
                clone = subibaja;
            }
            else if (go.name == "cepillo")
            {
                clone = cepillo;
            }
            else if (go.name == "pisoRotatorio")
            {
                clone = pisoRotatorio;
            }
            else if (go.name == "sombrilla")
            {
                clone = sombrilla;
            }
            else if (go.name == "GrabbableMissile")
            {
                clone = GrabbableMissile;
            }
            else if (go.name == "FloorSlider")
            {
                clone = FloorSlider;
            }


            if (clone)
            {
                sceneObject = Instantiate(clone, pos, Quaternion.identity) as SceneObject;
                sceneObject.transform.parent   = Pool.Scene.transform;
                sceneObject.transform.rotation = go.transform.rotation;

                if (go.GetComponent <BossSettings>())
                {
                    BossSettings mo = go.GetComponent <BossSettings>();
                    CopyComponent(mo, sceneObject.gameObject);
                }

                sceneObject.Restart(pos);
            }
            if (go.GetComponent <Move>() && sceneObject.GetComponent <Move>() == null)
            {
                Move mo = go.GetComponent <Move>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <MoveObject>())
            {
                MoveObject mo = go.GetComponent <MoveObject>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <Dropper>())
            {
                Dropper mo = go.GetComponent <Dropper>();
                CopyComponent(mo, sceneObject.gameObject);
            }

            if (go.GetComponent <EnemyPathRunnerBehavior>())
            {
                EnemyPathRunnerBehavior mo = go.GetComponent <EnemyPathRunnerBehavior>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <EnemyShooter>())
            {
                EnemyShooter mo = go.GetComponent <EnemyShooter>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <EnemyRunnerBehavior>())
            {
                EnemyRunnerBehavior mo = go.GetComponent <EnemyRunnerBehavior>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <Jump>())
            {
                Jump mo = go.GetComponent <Jump>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <EnemyPathsMultiples>())
            {
                EnemyPathsMultiples mo = go.GetComponent <EnemyPathsMultiples>();
                CopyComponent(mo, sceneObject.gameObject);
            }



            if (go.GetComponent <Subibaja>())
            {
                Subibaja mo = go.GetComponent <Subibaja>();
                CopyComponent(mo, sceneObject.gameObject);
            }

            if (go.GetComponent <ListenerDispatcher>())
            {
                ListenerDispatcher mo = go.GetComponent <ListenerDispatcher>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <FlyingBehavior>())
            {
                FlyingBehavior mo = go.GetComponent <FlyingBehavior>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <FullRotation>())
            {
                FullRotation mo = go.GetComponent <FullRotation>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <Bumper>())
            {
                Bumper mo = go.GetComponent <Bumper>();
                CopyComponent(mo, sceneObject.gameObject);
            }
            if (go.GetComponent <RandomPosition>())
            {
                RandomPosition mo = go.GetComponent <RandomPosition>();
                pos = mo.getPosition(pos);
            }
        }
        //AddBorders ();
    }
Пример #24
0
 private void Awake()
 {
     _enemyShooter = GetComponent <EnemyShooter>();
     _enemyMover   = GetComponent <EnemyMover>();
     _enemyJumper  = GetComponent <EnemyJumper>();
 }
Пример #25
0
 void Awake()
 {
     _enemyShooter = GetComponentInParent <EnemyShooter> ();
 }
Пример #26
0
 private void Start()
 {
     enemyShooter = GetComponent <EnemyShooter>();
     enemyBomber  = GetComponent <EnemyBomber>();
     initHealth   = health;
 }
Пример #27
0
 public void RemoveEnemy(EnemyShooter ent)
 {
     toremoveshooter.Add(ent);
 }
Пример #28
0
 private void Start()
 {
     anim  = GetComponent <Animator>();
     enemy = GetComponentInParent <EnemyShooter>();
 }
Пример #29
0
 public void WhoIsTheEnemy(EnemyShooter enemy)
 {
     this.enemy = enemy;
 }