본문 바로가기

Unity

[Unity] Prefab을 이용한 랜덤 뽑기

728x90

InstanInstantiate() 함수를 통해서 지정된 위치에 랜덤으로 오브젝트들을 뽑아주는 것을 만들 것이다.

 

변수 선언 내용

랜덤으로 뽑아줄 오브젝트들을 배열로 입력받는다.

 

RandomDraw 함수 코드

정수형 변수 random에 0~9까지의 임의의 정수를 넣어준다. 그리고 switch~case문을 사용하여

40% 확률로 objects[0]을 소환하고, 30% 확률로 objects[1]을 소환하고, 20% 확률로 objects[2]를 소환하고 마지막으로  10% 확률로 objects[3]을 소환한다.

 

아래 코드는 박스 스크립트에서 작성한 코드이다.

ChangeSprite 함수 코드

플레이어가 ChangeSprite함수를 불러올 때 RandomDraw 함수를 실행시켜주는 것을 추가해준 코드이다.

그리고 if(!isChange) 조건을 추가해준 이유는 여러 번 소환되는 것을 방지하기 위해 추가된 것이다.

 

결과 화면

728x90