몬스터 관련 함수 - Enemy 스크립트

|
벌레와 우주선이 있는데요

벌레는 꼬리부분을 개별적으로 짤라주고 축을 오른족으로 두어서 꼬리의 크기를 늘렸다 줄였다하면서 애니메이션을 줄수있습니다.


둘다 Enemy 스크립트를 가지고 있지만 익스펙터에서 값을 조정해서 사용한다.











deadEnemy = 죽는 모습 스프라이트

damagedEnemy = 몬스터 공격 당할시 스프라이트

deathClips = 사운드

hundredPointsUI -> 적을 죽이면 100 생성

deathSpinMin -> 죽을때 떨어지는 각도


ren - > 몸통 렌더러

frontCheck -> 바로 앞에 있는 값 체크




Collider2D[] frontHits = Physics2D.OverlapPointAll(frontCheck.position, 1); -> 바로 앞에 있는 모든 값 체크

레이어 마스크 값이 1이면 모든 값;

그중에 Obstacle 값이면 Flip 함수실행 -> 좌우 반전

움직임 조절 rigidbody2D.velocity = new Vector2(transform.localScale.x * moveSpeed, rigidbody2D.velocity.y);


죽으면 죽는 함수 실행

if(HP <= 0 && !dead)

// ... call the death function.

Death ();




void Death() 함수


모든 스프라이트 렌더러를 불러와서 다 안보이게 한다.

그리고 바디 렌더러(ren)는 보이게 하고

그 렌더러의 스프라이트를 죽는 모습으로 변경하고

스코어를 100점 올려주고 dead 를 true 로 변경


리지드바디의 앵글을 고정시켜버린다.(떨어질때 변경되지 않도록)

AddTorque -> 함수를 사용하여 축을 중심으로 회전되게한다.


그리고 주인공 스크립트에서 했던것과 마찬가지로 모든 콜라이더를 isTrigger 처리 해줘서 적이 떨어지도록 한다

스코어는 적의 위치 바로 위에 생성되게 한다.







Trackback 0 And Comment 0
prev | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ··· | 13 | next