示例#1
0
    private void Awake()
    {
        sInstance = this;

        Initialize(10);
        Initialize_FireObj(10);
        Initialize_IceObj(10);
        Initialize_HealObj(10);
    }
示例#2
0
    IEnumerator CoroutinSkill_Heal()
    {
        mIsIdle = false;
        mAnim.CrossFade("skill", 0.2f);
        var skill_HealBox = ObjectPoolIG.GetHealObject();

        skill_HealBox.transform.position = transform.Find("Skill_Heal").position;
        skill_HealBox.Shoot(transform.position + transform.forward * 10f);

        yield return(new WaitForSeconds(3f));
    }
示例#3
0
    private void skillAttack(bool attack)
    {
        if (attack)
        {
            mIsIdle = false;
            mAnim.CrossFade("attack", 0.2f);
            var bullet = ObjectPoolIG.GetObject();
            bullet.transform.position = attackPoint.transform.position;

            bullet.Shoot(transform.forward * 10f);
        }
    }
示例#4
0
    IEnumerator CoroutinSkill_Fire()
    {
        Vector3 monsVec;

        mIsIdle = false;
        mAnim.CrossFade("skill", 0.2f);
        var skill_FireBox = ObjectPoolIG.GetFireObject();

        skill_FireBox.transform.position = transform.Find("Skill_Fire").position;
        monsVec = skill_FireBox.transform.position;
        //NearEnemyAttack(out monsVec);
        skill_FireBox.Shoot(transform.forward * 10f);
        skill_true = true;

        yield return(new WaitForSeconds(3f));
    }
示例#5
0
    //private void OnCollisionEnter(Collision collision)
    //{

    //    if (collision.gameObject == monster)
    //    {
    //        mHp -= 1;
    //        Debug.Log("hp:" + mHp);
    //        if(mHp == 0)
    //        {
    //            mIsDeath = true;
    //        }
    //    }
    //}

    public void NearEnemyAttack(out Vector3 monsVec)
    {
        monsVec = new Vector3(transform.position.x + 10, transform.position.y, transform.position.z + 1);
        //주변에 있는 모든 적을 추출해서 배열에 저장 (원점, 반경, 레이어)
        Collider[] colls = Physics.OverlapSphere(monsVec, 300f, 1 << 10);

        for (int i = 0; i < colls.Length; i++) //자기자신포함
        {
            MonsterAI mon = colls[i].GetComponent <MonsterAI>();

            if (mon != null && !mon.mIsDeath)
            {
                var bullet = ObjectPoolIG.GetObject();
                bullet.transform.position = mon.transform.position;
            }
            monsVec = colls[i].transform.position;
        }
    }
示例#6
0
 public void DestroyBullet()
 {
     ObjectPoolIG.sReturnObject(this);
     Destroy(fx_obj);
 }