유니티 랜덤 스폰 - yuniti laendeom seupon

10일차 - 랜덤하게 적 스폰하기

음 이대로 게임을 즐기기엔 적이 나오지 않아서 굉장히 재미 없습니다. 적이 잔뜩 몰려오고, 언제나올지 모르고, 그런것이 좀 더 흥미로운 게임이겠죠?

그래서 랜덤한 타이밍에, 랜덤한 곳에서! 적을 스폰하도록 게임을 고쳐볼건데요.

유니티 랜덤 스폰 - yuniti laendeom seupon

먼저 여태 만들었던 적 캐릭터인 Enemy군을 Hierarchy View에서 Project View로 끌어서 Prefab으로 저장해주도록 합시다.

유니티 랜덤 스폰 - yuniti laendeom seupon

그리고 Create Empty를 해서 빈 객체를 하나 만들어 줍시다. Empty 객체는 눈에 보이지 않고 기본적으로 아무것도 하지 않는 말 그대로 '빈 객체'이지만 스크립트를 달아주면 보이지 않는 객체지만 특정 코드를 실행할 수 있습니다. 그런식으로 우리는 적 생성을 도와줄 가상의 매니저를 만들어 볼건데요. 일단 만든 Empty 객체에는 Spawn Manager라는 이름을 붙여줍시다.

그리고 spawnManager라는 스크립트를 만들어서 코드를 작성해 줍시다.

public class spawnManaer : NetworkBehaviour { public bool enableSpawn = false; public GameObject Enemy; //Prefab을 받을 public 변수 입니다. void SpawnEnemy() { float randomX = Random.Range(-0.5f, 0.5f); //적이 나타날 X좌표를 랜덤으로 생성해 줍니다. if (enableSpawn) { GameObject enemy =(GameObject)Instantiate(Enemy, new Vector3(randomX, 1.1f, 0f), Quaternion.identity); //랜덤한 위치와, 화면 제일 위에서 Enemy를 하나 생성해줍니다. } } void Start () { InvokeRepeating("SpawnEnemy", 3, 1); //3초후 부터, SpawnEnemy함수를 1초마다 반복해서 실행 시킵니다. } void Update () { } }

이 스크립트를 아까 만들어준 Empty 객체인 spawnManager에다가 달아주는 것으로 Enemy와 스릴넘치는 전투를 벌일 수 있게 되었습니다!

results matching ""

    No results matching ""