박민혁의 개발

유니티 생성한 프리팹의 겟컴포넌트하지 않고 해당 클래스 바로 접근하기 본문

TIL

유니티 생성한 프리팹의 겟컴포넌트하지 않고 해당 클래스 바로 접근하기

박민혁_kog 2023. 11. 15. 20:57

StartCoroutine("AutoChange");

 

지금까지한 방법

Gameobject enemyBulletPrefab;

Gameobject go = Instantiate(enemyBulletPrefab, enemyAim.transform.position, enemyAim.transform.rotation);
bullet _bullet = go.getcomponent<_bullet>();


        _bullet.IsDamage = true;
        _bullet.ATK = enemySO.atk;
        _bullet.BulletLifeTime = enemySO.bulletLifeTime;
        _bullet.BulletSpeed = enemySO.bulletSpeed;
        _bullet.target = BulletTarget.Player;
        */

 

 

 

새로운 방법 2가지

Bullet enemyBulletPrefab;
//수정 : gameObject 에서 Bullet으로 ->변수 형태와 용도를 통일함
        Bullet _bullet = Instantiate<Bullet>(enemyBulletPrefab, enemyAim.transform.position, enemyAim.transform.rotation);



        _bullet.IsDamage = true;
        _bullet.ATK = enemySO.atk;
        _bullet.BulletLifeTime = enemySO.bulletLifeTime;
        _bullet.BulletSpeed = enemySO.bulletSpeed;
        _bullet.target = BulletTarget.Player;
        */
        
        //수정 : gameObject 에서 Bullet으로 ->변수 형태와 용도를 통일함
        var _bullet = Instantiate(enemyBulletPrefab, enemyAim.transform.position, enemyAim.transform.rotation);

        _bullet.IsDamage = true;
        _bullet.ATK = enemySO.atk;
        _bullet.BulletLifeTime = enemySO.bulletLifeTime;
        _bullet.BulletSpeed = enemySO.bulletSpeed;
        _bullet.target = BulletTarget.Player;

가히 혁신적