Ejemplo n.º 1
0
    //Private Spawn function used for spawning
    private void Spawn(Vector3 spawnPos)
    {
        if (enemies.Count >= maxEnemies)
        {
            //  print("cant spawn more enemies, max limit reached.");
            return;
        }

        GameObject enemyInstance = enemyPrefabs[Random.Range(0, enemyPrefabs.Length)];

        //Instantiate the enemy (make sure the enemy prefab is inactive by default
        GameObject enemy = Instantiate(enemyInstance, spawnPos + enemySpawnPosOffset, Quaternion.identity);

        if (enemy)
        {
            //  print("enemy spawned" +enemy);
            enemies.Add(enemy);

            //Find closest tree and set that to enemy target


            Enemy2    e2     = enemy.GetComponent <Enemy2>();
            Transform target = FindTarget(e2);


            //Randomize the scale with enemyScaleRandomize
            float   xyzScale       = Random.Range(-enemyScaleRandomize, enemyScaleRandomize);
            Vector3 scaleRandomize = new Vector3(xyzScale, xyzScale, xyzScale);
            enemy.transform.localScale += scaleRandomize;
            e2.Initialize();
            StartCoroutine(e2.SetTarget(target));
            enemy.SetActive(true);
        }
    }
Ejemplo n.º 2
0
    /// ④更新
    public void Update()
    {
        if (_number <= 0)
        {
            // ⑧すべての敵が出現したので何もしない
            return;
        }

        // ⑤経過時間を足し込む
        _tInterval += Time.deltaTime;
        // ⑥経過時間をチェック
        if (_tInterval >= _interval)
        {
            // インターバルを超えたので敵出現
            _tInterval -= _interval;
            // 敵を生成
            int ranene = Random.Range(0, 2);
            if (ranene == 0)
            {
                Enemy.Add(_pathList);
            }
            if (ranene == 1)
            {
                Enemy2.Add(_pathList);
            }
            // ⑦敵生成カウンタを減らす
            _number--;
        }
    }
Ejemplo n.º 3
0
    private void OnTriggerEnter2D(Collider2D collider)
    {
        if (collider.GetComponent <AreaCamera>() == null &&
            collider.CompareTag("Water") == false &&
            collider.GetComponent <Enemy3>() == null &&
            collider.GetComponent <Enemy4>() == null) // Adição
        {
            Debug.Log("Bullet hit " + collider.name);

            Enemy1 enemy1 = collider.GetComponent <Enemy1>();
            Enemy2 enemy2 = collider.GetComponent <Enemy2>();
            Boss   boss   = collider.GetComponent <Boss>();
            Player player = collider.GetComponent <Player>();
            if (enemy1 != null) // É um inimigo
            {
                enemy1.TakeDamage(bulletDamage);
            }
            else if (enemy2 != null)
            {
                enemy2.TakeDamage(bulletDamage);
            }
            else if (boss != null)
            {
                boss.TakeDamage(bulletDamage);
            }
            else if (player != null)
            {
                player.TakeDamage(bulletDamage);
            }

            Destroy(gameObject);

            Instantiate(impactEffect, transform.position, transform.rotation);
        }
    }
Ejemplo n.º 4
0
    IEnumerator Shoot()
    {
        RaycastHit2D hitInfo = Physics2D.Raycast(firePoint.position, firePoint.right);

        if (hitInfo)
        {
            Enemy enemy = hitInfo.transform.GetComponent <Enemy>();
            if (enemy != null)
            {
                enemy.TakeDamage(damage);
            }

            Enemy2 enemy2 = hitInfo.transform.GetComponent <Enemy2>();
            if (enemy2 != null)
            {
                enemy2.TakeDamage(damage);
            }

            Instantiate(impactEffect, hitInfo.point, Quaternion.identity);

            lineRenderer.SetPosition(0, firePoint.position);
            lineRenderer.SetPosition(1, hitInfo.point);
        }
        else
        {
            lineRenderer.SetPosition(0, firePoint.position);
            lineRenderer.SetPosition(1, firePoint.position + firePoint.right * 100);
        }

        lineRenderer.enabled = true;

        yield return(0);

        lineRenderer.enabled = false;
    }
Ejemplo n.º 5
0
        public void SequentialEnemies()
        {
            String str = @"[
              { ""time"": 100, ""type"": 0, ""x"":10, ""y"": 60},
              { ""time"": 200, ""type"": 1, ""x"":20, ""y"": 70},
              { ""time"": 300, ""type"": 2, ""x"":30, ""y"": 80},
              { ""time"": 400, ""type"": 3, ""x"":40, ""y"": 90},
              { ""time"": 500, ""type"": 4, ""x"":50, ""y"": 100},
            ";
            Dictionary <int, List <AbstractEnemy> > story
                = ScenarioReader.Read(str);

            Assert.IsInstanceOfType(story[100][0], typeof(Enemy0));
            Assert.IsInstanceOfType(story[200][0], typeof(Enemy1));
            Assert.IsInstanceOfType(story[300][0], typeof(Enemy2));
            Assert.IsInstanceOfType(story[400][0], typeof(Enemy3));
            Assert.IsInstanceOfType(story[500][0], typeof(Enemy4));

            Enemy0 e0 = (Enemy0)story[100][0];
            Enemy1 e1 = (Enemy1)story[200][0];
            Enemy2 e2 = (Enemy2)story[300][0];
            Enemy3 e3 = (Enemy3)story[400][0];
            Enemy4 e4 = (Enemy4)story[500][0];

            Assert.AreEqual(10, e0.X);
            Assert.AreEqual(60, e0.Y);
            Assert.AreEqual(20, e1.X);
            Assert.AreEqual(70, e1.Y);
            Assert.AreEqual(30, e2.X);
            Assert.AreEqual(80, e2.Y);
            Assert.AreEqual(40, e3.X);
            Assert.AreEqual(90, e3.Y);
            Assert.AreEqual(50, e4.X);
            Assert.AreEqual(100, e4.Y);
        }
Ejemplo n.º 6
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        Enemy     enemy     = collision.GetComponent <Enemy>();
        Enemy1    enemy1    = collision.GetComponent <Enemy1>();
        Enemy2    enemy2    = collision.GetComponent <Enemy2>();
        Enemyboss enemyboss = collision.GetComponent <Enemyboss>();

        if (enemy != null)
        {
            enemy.TakeDamage(20);
        }
        else if (enemy1 != null)
        {
            enemy1.TakeDamage(20);
        }
        else if (enemy2 != null)
        {
            enemy2.TakeDamage(20);
        }
        else if (enemyboss != null)
        {
            enemyboss.TakeDamage(20);
        }
        GameObject destroyffect = Instantiate(impactEffect, transform.position, Quaternion.identity);

        Destroy(destroyffect, 0.2f);
        Destroy(gameObject);
    }
Ejemplo n.º 7
0
        private void PlaceEnemies(Double left, Double top)
        {
            Enemy1.Move(Enemy1.Left + left, Enemy1.Top + top);
            Enemy2.Move(Enemy1.Left + GameConfigurations.EnemyWidth * 1.5, Enemy1.Top);
            Enemy3.Move(Enemy2.Left + GameConfigurations.EnemyWidth * 1.5, Enemy1.Top);
            Enemy4.Move(Enemy3.Left + GameConfigurations.EnemyWidth * 1.5, Enemy1.Top);

            Enemy5.Move(Enemy1.Left * 1.5, Enemy1.Top + GameConfigurations.EnemyHeight * 1.5);
            Enemy6.Move(Enemy5.Left + GameConfigurations.EnemyWidth * 1.5, Enemy5.Top);
            Enemy7.Move(Enemy6.Left + GameConfigurations.EnemyWidth * 1.5, Enemy5.Top);
            Enemy8.Move(Enemy7.Left + GameConfigurations.EnemyWidth * 1.5, Enemy5.Top);

            Enemy9.Move(Enemy1.Left * 1.25, Enemy5.Top + GameConfigurations.EnemyHeight * 1.5);
            Enemy10.Move(Enemy9.Left + GameConfigurations.EnemyWidth * 1.5, Enemy9.Top);
            Enemy11.Move(Enemy10.Left + GameConfigurations.EnemyWidth * 1.5, Enemy9.Top);
            Enemy12.Move(Enemy11.Left + GameConfigurations.EnemyWidth * 1.5, Enemy9.Top);

            Enemy13.Move(Enemy1.Left * 1.5, Enemy10.Top + GameConfigurations.EnemyHeight * 1.5);
            Enemy14.Move(Enemy13.Left + GameConfigurations.EnemyWidth * 1.5, Enemy13.Top);
            Enemy15.Move(Enemy14.Left + GameConfigurations.EnemyWidth * 1.5, Enemy13.Top);
            Enemy16.Move(Enemy15.Left + GameConfigurations.EnemyWidth * 1.5, Enemy13.Top);

            Enemy17.Move(Enemy1.Left, Enemy13.Top + GameConfigurations.EnemyHeight * 1.5);
            Enemy18.Move(Enemy17.Left + GameConfigurations.EnemyWidth * 1.5, Enemy17.Top);
            Enemy19.Move(Enemy18.Left + GameConfigurations.EnemyWidth * 1.5, Enemy17.Top);
            Enemy20.Move(Enemy19.Left + GameConfigurations.EnemyWidth * 1.5, Enemy17.Top);
        }
Ejemplo n.º 8
0
    public void StartSinking()
    {
        //TODO: ENTER SCRIPT HERE TO STOP MOVING  (currently disabling AI to make this work)   GetComponent<UnityEngine.AI.NavMeshAgent>().enabled = false;

        if (sphereCollider)
        {
            sphereCollider.isTrigger = true;
        }
        rb.isKinematic = false;
        GetComponent <UnityEngine.AI.NavMeshAgent>().enabled = false;
        Enemy1 e1 = GetComponent <Enemy1>();

        if (e1)
        {
            e1.enabled = false;
        }
        else
        {
            Enemy2 e2 = GetComponent <Enemy2>();
            if (e2)
            {
                e2.enabled = false;
            }
        }
        //ScoreManager.score += scoreValue;
        isSinking = true;
        Destroy(gameObject, 2f);
    }
Ejemplo n.º 9
0
 // OnStateEnter is called when a transition starts and the state machine starts to evaluate this state
 override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     localScale = animator.transform.localScale;
     playerPos  = GameObject.FindGameObjectWithTag("Player").GetComponent <Transform>();
     rb         = animator.GetComponent <Rigidbody2D>();
     enemy2     = animator.GetComponent <Enemy2>();
     timer      = Random.Range(minTime, maxTime);
 }
Ejemplo n.º 10
0
 void Update()
 {
     rb     = GetComponent <Rigidbody2D>();
     boss   = GetComponent <Boss>();
     enemy2 = GetComponent <Enemy2>();
     enemy3 = GetComponent <Enemy3>();
     enemy4 = GetComponent <Enemy4>();
 }
Ejemplo n.º 11
0
 public void ScorePoint(Enemy2 enemy)
 {
     Score += enemy.ScorePoints;
     if (OnScorePoint != null)
     {
         OnScorePoint();
     }
 }
Ejemplo n.º 12
0
 private void OnTriggerEnter2D(Collider2D collision)
 {
     if (collision.tag == "Player" || collision.tag == "PlayerBullet")
     {
         Enemy2 detectionVar = GetComponentInParent <Enemy2>();
         detectionVar.detectPC = true;
     }
 }
 void Start()
 {
     enemy    = GetComponent <EnemyMove>();
     enemyBos = GetComponent <EnemyBos>();
     enemy2   = GetComponent <Enemy2>();
     enemy3   = GetComponent <Enemy3>();
     enemy4   = GetComponent <Enemy4>();
 }
Ejemplo n.º 14
0
    // Use this for initialization
    void Start()
    {
        enemy = GameObject.Find("Enemy2");
        star  = GameObject.Find("Star");

        //enemyScript = enemy.GetComponent<Enemy>();
        enemyScript = enemy.GetComponent <Enemy2>();
    }
Ejemplo n.º 15
0
    // Use this for initialization
    void Start()
    {
        enemy = GameObject.Find("Enemy2");
        star = GameObject.Find("Star");

        //enemyScript = enemy.GetComponent<Enemy>();
        enemyScript = enemy.GetComponent<Enemy2>();
    }
Ejemplo n.º 16
0
    void Damage2(Transform enemy2)
    {
        Enemy2 e = enemy2.GetComponent <Enemy2>();

        if (e != null)
        {
            e.TakeDamage(BulletDamage);
        }
    }
Ejemplo n.º 17
0
    void OnTriggerEnter2D(Collider2D col)
    {
        if (col.gameObject.tag.Equals("Player") && !isByPlayerCreated)
        {
            Debug.Log("Collison with Player");

            Player player = col.gameObject.GetComponent <Player>();
            PlayerRecord.health -= damage;
            //Debug.Log("Life of player: " + PlayerRecord.health);
        }
        else if (isByPlayerCreated)
        {
            if (col.gameObject.tag.Equals("Enemy1"))
            {
                Debug.Log("Collison with Enemy1");

                Enemy1 enemy1 = col.gameObject.GetComponent <Enemy1>();
                enemy1.setHealth(enemy1.getHealth() - damage);
                //Debug.Log("Life of Enemy1: " + enemy1.getHealth());
            }

            else if (col.gameObject.tag.Equals("Enemy2"))
            {
                Debug.Log("Collison with Enemy2");

                Enemy2 enemy2 = col.gameObject.GetComponent <Enemy2>();
                enemy2.setHealth(enemy2.getHealth() - damage);
                //Debug.Log("Life of Enemy2: " + enemy2.getHealth());
            }
            else if (col.gameObject.tag.Equals("Enemy3"))
            {
                Debug.Log("Collison with Enemy3");

                Enemy3 enemy3 = col.gameObject.GetComponent <Enemy3>();
                enemy3.setHealth(enemy3.getHealth() - damage);
                //Debug.Log("Life of Enemy3: " + enemy3.getHealth());
            }
            else if (col.gameObject.tag.Equals("Enemy4"))
            {
                Debug.Log("Collison with Enemy4");

                Enemy4 enemy4 = col.gameObject.GetComponent <Enemy4>();
                enemy4.setHealth(enemy4.getHealth() - damage);
                //Debug.Log("Life of Enemy4: " + enemy4.getHealth());
            }
        }
        else if (col.gameObject.tag.Equals("FireBall"))
        {
            bool isByPlayerCreatedColFireBall = col.gameObject.GetComponent <FireBall>().getIsByPlayerCreated();
            if (isByPlayerCreated ^ isByPlayerCreatedColFireBall)
            {
                //Debug.Log("Fireball is destroyed");
                Destroy(col.gameObject);
                Destroy(gameObject);
            }
        }
    }
Ejemplo n.º 18
0
    // 管理オブジェクト
    //public static TokenMgr<Enemy2> parent = null;

    // プレハブから敵を生成
    new public static Enemy2 Add(List <Vec2D> path)
    {
        Enemy2 e = parent.Add <Enemy2>(0, 0);

        if (e == null)
        {
            return(null);
        }
        e.Init(path);
        return(e);
    }
Ejemplo n.º 19
0
    public void RandomAI()
    {
        bool rightLane = false;

        while (!rightLane)
        {
            double rnd = SplashKit.Rnd();
            if (rnd > 0.4)
            {
                AI newAI = new Enemy1();
                if (CheckLane(newAI))
                {
                    _ai.Add(newAI);
                    rightLane = true;
                }
            }
            if (rnd <= 0.4 && rnd > 0.2)
            {
                AI newAI = new Enemy2();
                if (CheckLane(newAI))
                {
                    _ai.Add(newAI);
                    rightLane = true;
                }
            }
            if (rnd <= 0.2 && rnd > 0.1)
            {
                AI newAI = new Enemy3();
                if (CheckLane(newAI))
                {
                    _ai.Add(newAI);
                    rightLane = true;
                }
            }
            if (rnd <= 0.1 && rnd > 0.03)
            {
                AI newAI = new Reward1();
                if (CheckLane(newAI))
                {
                    _ai.Add(newAI);
                    rightLane = true;
                }
            }
            if (rnd <= 0.03)
            {
                AI newAI = new Reward2();
                if (CheckLane(newAI))
                {
                    _ai.Add(newAI);
                    rightLane = true;
                }
            }
        }
    }
Ejemplo n.º 20
0
    void Start()
    {
        Humanoid human = new Humanoid();
        Humanoid enemy = new Enemy2();
        Humanoid orc   = new Orc();

        // Each variable has a reference to its own yell method
        human.Yell();
        enemy.Yell();
        orc.Yell();
    }
Ejemplo n.º 21
0
    void OnTriggerEnter2D(Collider2D hitInfo)
    {
        Enemy2 enemy = hitInfo.GetComponent <Enemy2>();

        if (enemy != null)
        {
            enemy.TakeDamage(damage);
        }
        Instantiate(impactEffect, transform.position, transform.rotation);
        Destroy(gameObject);
        Destroy(GameObject.Find("ImpactEffect(Clone)"), 2);
    }
Ejemplo n.º 22
0
    void OnTriggerEnter2D(Collider2D hitInfo)
    {
        Enemy enemy = hitInfo.GetComponent <Enemy>();

        if (enemy != null)
        {
            enemy.TakeDamage(damage);
            Destroy(gameObject);
        }

        Enemy2 enemy2 = hitInfo.GetComponent <Enemy2>();

        if (enemy2 != null)
        {
            enemy2.TakeDamage(damage);
            Destroy(gameObject);
        }

        Enemy3 enemy3 = hitInfo.GetComponent <Enemy3>();

        if (enemy3 != null)
        {
            enemy3.TakeDamage(damage);
            Destroy(gameObject);
        }

        Enemy4 enemy4 = hitInfo.GetComponent <Enemy4>();

        if (enemy4 != null)
        {
            enemy4.TakeDamage(damage);
            Destroy(gameObject);
        }

        Boss1 boss1 = hitInfo.GetComponent <Boss1>();

        if (boss1 != null)
        {
            boss1.TakeDamage(damage);
            Destroy(gameObject);
        }

        Boss2 boss2 = hitInfo.GetComponent <Boss2>();

        if (boss2 != null)
        {
            boss2.TakeDamage(damage);
            Destroy(gameObject);
        }
    }
Ejemplo n.º 23
0
    void Start()
    {
        Humanoid human = new Humanoid();
        Humanoid enemy = new Enemy2();
        Humanoid orc   = new Orc();

        //Notice how each Humanoid variable contains
        //a reference to a different class in the
        //inheritance hierarchy, yet each of them
        //calls the Humanoid Yell() method.
        human.Yell();
        enemy.Yell();
        orc.Yell();
    }
Ejemplo n.º 24
0
 private void OnTriggerEnter(Collider other)
 {
     Debug.Log(other.name);
     target = GameObject.FindWithTag("Player");
     if (other.gameObject.tag != target.tag && other.gameObject.tag != "Help")
     {
         Enemy2 enemy = other.GetComponent <Enemy2>();
         if (enemy != null)
         {
             enemy.DamageEnemy(damage);
         }
         Destroy(gameObject);
     }
 }
Ejemplo n.º 25
0
        static internal Dictionary <int, List <AbstractEnemy> > Read(String content)
        {
            Dictionary <int, List <AbstractEnemy> > story
                = new Dictionary <int, List <AbstractEnemy> >();

            var json = (dynamic)JsonConvert.DeserializeObject(content);

            foreach (var e in json)
            {
                long time = e["time"].Value;
                long type = e["type"].Value;
                long x    = e["x"].Value;
                long y    = e["y"].Value;
                long sx   = e["sx"]?.Value ?? 0;
                long sy   = e["sy"]?.Value ?? 0;

                AbstractEnemy enemy = null;
                switch (type)
                {
                case 0: enemy = new Enemy0(x, y); break;

                case 1: enemy = new Enemy1(x, y); break;

                case 2:
                    double t = sx > 0 ? -1 : +1;
                    enemy = new Enemy2(x, y, sx, sy, t);
                    break;

                case 3: enemy = new Enemy3(x, y); break;

                case 4: enemy = new Enemy4(x, y); break;
                }

                List <AbstractEnemy> enemies;
                if (story.ContainsKey((int)time))
                {
                    enemies = story[(int)time];
                }
                else
                {
                    enemies          = new List <AbstractEnemy>();
                    story[(int)time] = enemies;
                }

                enemies.Add(enemy);
            }
            return(story);
        }
Ejemplo n.º 26
0
    public void Fire(float i)
    {
        // Enemy2 enemy = Instantiate<Enemy2>(enemy2); // 에너미 2를 복제해서 생성
        // enemy.transform.position = this.transform.position;// enemyt3 포지션에서 출발
        // enemy.speed = 4f; // 소환된 에너미2 속도

        Enemy2 enemy = Instantiate <Enemy2>(enemy2);

        enemy.transform.position = this.transform.position;

        enemy.direction             = MyMath.GetDirection(this, PlayerScript.player) + i * 5f; // 로테이션
        enemy.transform.eulerAngles = new Vector3(0f, 0f, enemy.direction - 90f);
        enemy.speed = 4f;

        enemy.movementVec2D = MyMath.DirectionToVector2(enemy.direction + i * 5f);
    }
Ejemplo n.º 27
0
    IEnumerator TutState15()
    {
        Animation anim      = WelcomeImage.GetComponent <Animation>();
        Animation animText  = WelcomeText.GetComponent <Animation>();
        Animation animArrow = JumpingArrow.GetComponent <Animation>();

        animText.Play("TextDisappear");
        yield return(new WaitForSeconds(0.5f));

        WelcomeText.GetComponent <Text>().text = "You are no longer immune to death!" +
                                                 "\nPlease kill the final enemy to complete the tutorial!";
        WelcomeText.transform.localPosition        = new Vector3(-547, 271, 0);
        WelcomeText.GetComponent <Text>().fontSize = 60;
        animText.Play("TextAppear");
        Enemy2.SetActive(true);
        TutorialStage = 16;
    }
Ejemplo n.º 28
0
    private void OnTriggerEnter2D(Collider2D hitInfo)
    {
        Enemy2      enemy2 = hitInfo.gameObject.GetComponent <Enemy2>();
        BomberDeath bomber = hitInfo.gameObject.GetComponent <BomberDeath>();

        if (enemy2 != null)
        {
            enemy2.TakeDamage(damage);
            Destroy(gameObject);
        }

        if (bomber != null)
        {
            bomber.TakeDamage(damage);
            Destroy(gameObject);
        }
    }
Ejemplo n.º 29
0
    private int Enemies()
    {
        Random rand = new Random();
        Random rd   = new Random();
        int    v    = rand.Next(10) + 5;

        ens.Clear();
        for (int i = 0; i < v; i++)
        {
            int    w  = rd.Next(700) + 400;
            int    x  = rd.Next(100) * 10;
            Enemy2 en = new Enemy2(w, x);
            ens.Add(en);
        }
        es.Add(ens);
        return(es.Count - 1);
    }
Ejemplo n.º 30
0
    private void Explode()
    {
        if (_App.SoundManager)
        {
            _App.SoundManager.Play(_sfx.Get("explode").audio);
        }
        if (CameraController.instance)
        {
            CameraController.instance.ScreenShake();
        }

        List <GameObject> objectsInRange = new List <GameObject>();

        RaycastHit2D[] hitResult;

        for (int i = 0; i < _hitMask.Length; i++)
        {
            hitResult = Physics2D.CircleCastAll(transform.position, _explosionRadius, Vector2.up, _explosionRadius, _hitMask[i].value);
            for (int n = 0; n < hitResult.Length; n++)
            {
                if (!objectsInRange.Contains(hitResult[n].collider.gameObject))
                {
                    objectsInRange.Add(hitResult[n].collider.gameObject);
                }
            }
        }

        for (int i = 0; i < objectsInRange.Count; i++)
        {
            Vector2 knockBackDir = objectsInRange[i].transform.position - transform.position;

            Character player = objectsInRange[i].GetComponent <Character>();
            Enemy2    enemy  = objectsInRange[i].GetComponent <Enemy2>();

            if (objectsInRange[i].GetComponent <Character>())
            {
                player.TakeDamage(_damage, knockBackDir, _explosionForce);
            }
            else if (objectsInRange[i].GetComponent <Enemy2>())
            {
                enemy.TakeDamage(_damage, knockBackDir, _explosionForce);
            }
        }

        StartCoroutine("DestroyObject");
    }
Ejemplo n.º 31
0
 void Start()
 {
     ass  = GetComponent <AudioSource>();
     anim = GetComponent <Animator>();
     rid  = GetComponent <Rigidbody2D>();
     if (Singleton.getInstance.GameMode == GameMode.Menu)
     {
         anim.SetBool("Idle", true);
     }
     if (Singleton.getInstance.GameMode == GameMode.Ingame)
     {
         enemy2 = sheild.gameObject.GetComponent <Enemy2>();
     }
     if (Singleton.getInstance.GameMode == GameMode.stage)
     {
         enemy2 = transform.FindChild("Enemy2(Clone)").GetComponent <Enemy2>();
     }
 }
Ejemplo n.º 32
0
        static void Main(string[] args)
        {
            Enemy1 e1 = new Enemy1();
            Enemy2 e2 = new Enemy2();
            e1.func();
            e2.func();
            Player p = new Player();
            p.func();
            Random rng = new Random();

            int phealth, e1health, e2health, attack;

            phealth = p.rhealth();
            e1health = e1.rhealth();
            e2health = e2.rhealth();

            while (phealth >= 0 && e1health >= 0)
            {
                Console.WriteLine(p.call());
                attack = rng.Next(10);
                e1health = e1.damage(attack);
                Console.WriteLine("{0} attacks {1} for {2} damage. {3} health remaining.", p.rname(), e1.rname(), attack, e1health);
                Console.WriteLine();
                if (e1health > 0)
                {
                    Console.WriteLine(e1.call());
                    attack = rng.Next(10);
                    phealth = p.damage(attack);
                    Console.WriteLine("{0} attacks {1} for {2} damage. {3} health remaining.", e1.rname(), p.rname(), attack, phealth);
                    Console.WriteLine();
                }
                if (phealth <= 0)
                {
                    Console.WriteLine("{0} Wins!", e1.rname());
                    Console.WriteLine();
                }
                if (e1health <= 0)
                {
                    Console.WriteLine("{0} Wins!", p.rname());
                    Console.WriteLine();
                }
            }
            while (phealth >= 0 && e2health >= 0)
            {
                Console.WriteLine(p.call());
                attack = rng.Next(10);
                e2health = e2.damage(attack);
                Console.WriteLine("{0} attacks {1} for {2} damage. {3} health remaining.", p.rname(), e2.rname(), attack, e2health);
                Console.WriteLine();
                if (e2health > 0)
                {
                    Console.WriteLine(e2.call());
                    attack = rng.Next(10);
                    phealth = p.damage(attack);
                    Console.WriteLine("{0} attacks {1} for {2} damage. {3} health remaining.", e2.rname(), p.rname(), attack, phealth);
                    Console.WriteLine();
                }
                if (phealth <= 0)
                {
                    Console.WriteLine("{0} Wins!", e2.rname());
                    Console.WriteLine();
                }
                if (e2health <= 0)
                {
                    Console.WriteLine("{0} Wins!", p.rname());
                    Console.WriteLine();
                }
            }
        }