MonsterContrller에서 몬스터의 체력이 모두 소모되었을 경우 호출
1) 아이템 8종 프리팹을 리스트로 불러온다.
2) 랜덤으로 아이템을 생성한다.
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
/// <summary>
/// 기능
/// 1) 아이템 8종 프리팹을 리스트로 불러온다.
/// 2) 랜덤으로 아이템을 생성한다.
/// 호출 : MonsterContrller에서 몬스터의 체력이 모두 소모되었을 경우 호출
/// </summary>
public class ItemSpawner : MonoBehaviour
{
//아이템 프리팹 리스트
private GameObject[] _itemList;
// 아이템 오브젝트 생성
public void CloneItem(Transform clonePos){
//프리팹을 리스트로 생성
_itemList = Resources.LoadAll<GameObject>("Prefabs/Items");
int _randomIndex =Random.Range(0,_itemList.Length);
//아이템 생성
Instantiate(_itemList[_randomIndex], clonePos.position, Quaternion.identity);
}
}
이 메서드를 이용하여 Resource 폴더에 저장된 자산의 경로를 찾을 수 있다.
해당 유형이 요청된 매개변수와 일치하는 경우 자산을 반환한다.
그렇지 않다면 null을 반환한다.
Resources.LoadAll(string path);
매개변수
path = 경로
자산의 이름과 경로는 슬래시를 사용한다.
GameObject를 로드하려면, 문자열을 사용하여 로드할 수 있다.
ex)
public void CloneItem(Transform clonePos){
//프리팹을 리스트로 생성
_itemList = Resources.LoadAll<GameObject>("Prefabs/Items");
int _randomIndex =Random.Range(0,_itemList.Length)
}
Quaternion은 unity 내부의 모든 회전을 나타내는데 사용하며, 회전을 다른 회전으로 바꾸거나 vector를 회전으로 변경할 수 있다.
Quaternion은 생성자로 주어진 x, y, z, w 구성요소를 사용하여 새로운 Quasternion을 생성합니다.
주로 사용하는 함수
- Quaternion.LookRotation
- Quaternion.Angle
- Quaternion.Euler
- Quaternion.Slerp
- Quaternion.FromToRotation
- Quaternion.identity
정적 변수
ex)
public void CloneItem(Transform clonePos){
//아이템 생성
Instantiate(_itemList[_randomIndex], clonePos.position, Quaternion.identity);
}