Ejemplo n.º 1
0
    public void enemyInitialize(int input_id)
    {
        var enemy = GameObject.Find("Game manager").GetComponent <Enemy_manager_script>().enemies[input_id];

        _characterManager = gameObject.GetComponent <Character_manager>();
        _characterStats   = GameObject.Find("Game manager").GetComponent <Character_stats>();

        enemy_name = enemy.enemy_name;

        enemy_damage     = UnityEngine.Random.Range(_characterStats.getPercentOfHealth(5), _characterStats.getPercentOfHealth(25));
        enemy_max_health = UnityEngine.Random.Range(_characterStats.getPercentOfHealth(40), _characterStats.getPercentOfHealth(110));
        enemy_health     = enemy_max_health;
        id = input_id;

        opponentUpdateHealthBar();

        if (enemy.isHuman)
        {
            appearance_non_human.SetActive(false);
            appearance_human.SetActive(true);

            if (enemy.isRandomAppearance)
            {
                int hair_length = 8, eyes_length = 4, nose_length = 2, mouth_length = 3, body_length = 3;

                int random_sex = UnityEngine.Random.Range(0, 2);
                if (random_sex == 0)
                {
                    _characterManager.sex = false;
                }
                else
                {
                    _characterManager.sex = true;
                }
                _characterManager.hair_id  = UnityEngine.Random.Range(0, hair_length + 1);
                _characterManager.eyes_id  = UnityEngine.Random.Range(0, eyes_length + 1);
                _characterManager.nose_id  = UnityEngine.Random.Range(0, nose_length + 1);
                _characterManager.mouth_id = UnityEngine.Random.Range(0, mouth_length + 1);
                _characterManager.body_id  = UnityEngine.Random.Range(0, body_length + 1);

                _characterManager.hair_color_r = (byte)UnityEngine.Random.Range(0, 256);
                _characterManager.hair_color_g = (byte)UnityEngine.Random.Range(0, 256);
                _characterManager.hair_color_b = (byte)UnityEngine.Random.Range(0, 256);
            }
            else
            {
                _characterManager.sex      = enemy.sex;
                _characterManager.hair_id  = enemy.appearance[0];
                _characterManager.eyes_id  = enemy.appearance[1];
                _characterManager.nose_id  = enemy.appearance[2];
                _characterManager.mouth_id = enemy.appearance[3];
                _characterManager.body_id  = enemy.appearance[4];

                _characterManager.hair_color_r = enemy.hair_color[0];
                _characterManager.hair_color_g = enemy.hair_color[1];
                _characterManager.hair_color_b = enemy.hair_color[2];
            }

            _characterManager.equipment_head_id     = enemy.equipment[0];
            _characterManager.equipment_body_id     = enemy.equipment[1];
            _characterManager.equipment_legs_id     = enemy.equipment[2];
            _characterManager.equipment_left_id     = enemy.equipment[3];
            _characterManager.equipment_shoulder_id = enemy.equipment[4];
            _characterManager.equipment_gadget_id   = enemy.equipment[5];
            _characterManager.equipment_feet_id     = enemy.equipment[6];
            _characterManager.equipment_right_id    = enemy.equipment[7];
        }
        else
        {
            appearance_human.SetActive(false);
            appearance_non_human.SetActive(true);
            appearanceSprite.sprite = Resources.Load <Sprite>(enemy.non_human_appearance);
        }
        gameObject.GetComponent <Visibility_script>().setVisible();
    }