コード例 #1
0
 void Awake()
 {
     enemyMoving = gameObject.GetComponent<EnemyMoving>();
     orbiting = gameObject.GetComponent<Orbiting>();
     chained = gameObject.GetComponent<Chained>();
     dead = gameObject.GetComponent<Dead>();
 }
コード例 #2
0
ファイル: Die.cs プロジェクト: Karaka-Y/Avrora
    //получение урона от шипов и монстров
    private void OnTriggerEnter2D(Collider2D other)
    {
        Spikes      _spikes = other.GetComponent <Spikes>();
        EnemyMoving _enemy  = other.GetComponent <EnemyMoving>();

        if (_spikes != null && canTakeDamage == true)
        {
            _slider.value -= spikesDamage;
            canTakeDamage  = false;
            StartCoroutine("SpriteChanger");
            Audio.StaticFxAudioSource2.pitch = Random.Range(0.9f, 1.1f);
            Audio.StaticFxAudioSource2.clip  = Audio.StaticFxAudioClips[1];
            Audio.StaticFxAudioSource2.Play();
            StartCoroutine("WaitToDamage");
        }
        if (_enemy != null && canTakeDamage == true)
        {
            _slider.value -= enemyDamage;
            canTakeDamage  = false;
            StartCoroutine("SpriteChanger");
            Audio.StaticFxAudioSource2.pitch = Random.Range(0.9f, 1.1f);
            Audio.StaticFxAudioSource2.clip  = Audio.StaticFxAudioClips[1];
            Audio.StaticFxAudioSource2.Play();
            StartCoroutine("WaitToDamage");
        }
    }
コード例 #3
0
 //public AudioSource SoundAudio; ЗвукЗробыТормоз
 // Start is called before the first frame update
 void Start()
 {
     transform.position = new Vector3(transform.position.x, 15, transform.position.z);
     Enemys             = FindObjectOfType <CameraController>().Enemys;
     for (i = 0; ; i++)
     {
         if (Enemys[i].GetComponent <EnemyMoving>() != null)
         {
             enemyScript = Enemys[i].GetComponent <EnemyMoving>();
             if (enemyScript.Death != true)
             {
                 Enemyposition = Enemys[i].transform;
                 break;
             }
         }
         else if (Enemys[i].GetComponent <Spartamen>() != null)
         {
             spartamen = Enemys[i].GetComponent <Spartamen>();
             if (spartamen.Death != true)
             {
                 Enemyposition = Enemys[i].transform;
                 break;
             }
         }
         else if (Enemys[i].GetComponent <HammerMan>() != null)
         {
             hammerMan = Enemys[i].GetComponent <HammerMan>();
             if (hammerMan.Death != true)
             {
                 Enemyposition = Enemys[i].transform;
                 break;
             }
         }
     }
 }
コード例 #4
0
    // Use this for initialization

    void Start()
    {
        move   = GetComponent <EnemyMoving> ();
        target = GameObject.Find("Character");
        anim   = GetComponent <Animation> ();
        player = target.GetComponent <PlayerHealth> ();
        pe     = target.GetComponent <person>();
        enemy  = GetComponent <EnemyHealth> ();
    }
コード例 #5
0
    // Use this for initialization
    void Start()
    {
        currentHp       = hp;
        hpImg           = transform.Find("bkg_hp").Find("hp").GetComponent <Image>();
        posCircleGround = transform.Find("circle_ground");

        currentTimeToAttack = 0;
        attackBarImg        = transform.Find("useSkill").GetComponent <Image>();

        moving = GetComponent <EnemyMoving>();
    }
コード例 #6
0
    private void OnTriggerStay2D(Collider2D col) //при соприкосновении
    {
        if (!godMode)                            // если не было недавно урона
        {
            if (col.gameObject.tag == "Enemy")
            {
                Vector2 mouseP = Input.mousePosition;
                mouseP = Camera.main.ScreenToWorldPoint(mouseP);

                bool enemy_mov = col.gameObject.GetComponent <EnemyMoving>().enabled;

                float EnemyMass = col.gameObject.GetComponent <EnemyBehaviour>().EnemyMass;//получил массу етого объекта
                if (EnemyMass < UserMass)
                {
                    _anim.SetBool("is_eating", true);
                    if (transform.localScale.x > 0)
                    {
                        Stats.Scale = transform.localScale + new Vector3(EnemyMass / 80, EnemyMass / 80, 0);
                    }
                    else
                    {
                        Stats.Scale = transform.localScale + new Vector3(-EnemyMass / 80, EnemyMass / 80, 0);
                    }

                    sourse.PlayOneShot(eatSound);
                    Stats.Change_score((int)(10f * EnemyMass));//добавление очков
                    Stats.IsTarget(col.transform.parent.name);
                    EnemyMoving mov = col.GetComponent <EnemyMoving>();
                    mov.enabled = true; //восстанавливаем движение врага
                    UserMass   += EnemyMass / 10;
                    EnemyBehaviour.Changepos(mov);
                    count++;
                    if (count > 5)
                    {
                        MapEditor.CheckCamera();
                        count = 0;
                    }
                }
                else
                {
                    if (enemy_mov)                  //если враг в движении
                    {
                        godMode = true;             // включаем режим бессмертия
                        Invoke("OffGodMode", 3.5f); //через 2 секунды вырубаем
                        Stats.Change_life(1);       //меняем жизни
                    }
                }
            }
        }
    }
コード例 #7
0
 /// <summary>
 ///
 /// </summary>
 void Start()
 {
     // Atribui o estado inicial caso seja valido.
     if (initialState == null || initialState.gameObject != gameObject)
     {
         Debug.LogError("No initial state.");
     }
     else
     {
         state    = initialState;
         moving   = GetComponent <EnemyMoving>();
         shooting = GetComponent <EnemyShooting>();
         dying    = GetComponent <EnemyDying>();
     }
 }
コード例 #8
0
 public virtual void Start()
 {
     Death               = false;
     EnemyWeapon         = transform.Find("Арматура/Bone/Bone.007/Bone.008/Bone.013/Bone.014/Bone.018/His Weapon").gameObject;
     EnemyWeaponCollider = EnemyWeapon.GetComponent <BoxCollider>();
     script              = GetComponent <EnemyMoving>();
     anim.GetComponent <Animator>();
     nav         = GetComponent <NavMeshAgent>();
     Player      = GameObject.FindGameObjectWithTag("Player").transform;
     PlayerObj   = GameObject.FindGameObjectWithTag("Player");
     PC          = PlayerObj.GetComponent <PlayerController>();
     nav.enabled = true;
     anim.SetBool("Walk", true);
     nav.SetDestination(Player.transform.position);
     EnemyWeaponCollider.enabled = false;
 }
コード例 #9
0
    private Vector3 targetShot()
    {
        Vector3     rotationShot = new Vector3();
        EnemyMoving enemyScript  = _target.GetComponent <EnemyMoving>();

        if (Vector3.Distance(enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position, _target.position) < 10 &&
            enemyScript.GetNumberPoint() + 1 < enemyScript.FindTargetTransform.TargetEnemyPoint.Count)
        {
            Vector3 vecotrNextPoint =
                enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint() + 1].position
                - enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position;
            rotationShot = enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position + vecotrNextPoint.normalized * (10 - Vector3.Distance(enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position, _target.position));
        }
        else
        {
            rotationShot = _target.position + _target.forward * 10;
        }
        return(rotationShot);
    }
コード例 #10
0
 public static void Changepos(EnemyMoving a)
 {
     a.change_position();
     a.transform.position = a.get_random_pos();
 }