유니티

캐릭터 선택

잼잼재미 2023. 11. 29. 10:36

Animator Controller 변경 방법


1. 이미지와 버튼 구현

 

2. 버튼 클릭 시, 캐릭터 선택창 활성화

 

3. 캐릭터 클릭 시, 캐릭터 Animator Controller 변경

 

public enum Player
{
    Player1,
    Player2,
    Player3,
}

Player player = Player.Player1;

[SerializeField] Animator playerAnimator;	// 캐릭터 Animator 연결
public List<RuntimeAnimatorController> playerAnimatorList;	// 변경할 캐릭터 AnimatorController List

[SerializeField] Image playerImage;
public List<Sprite> playerImageList;

public void EnterButton()
{

    switch (player)
    {
        case Player.Player1:
            playerAnimator.runtimeAnimatorController = playerAnimatorList[0];
            break;
        case Player.Player2:
            playerAnimator.runtimeAnimatorController = playerAnimatorList[1];
            break;
        case Player.Player3:
            playerAnimator.runtimeAnimatorController = playerAnimatorList[2];
            break;
        default:
            break;
    }	
}

public void Player1Button()
{
    player = Player.Player1;
    playerImage.sprite = playerImageList[0];
    playerChangePanel.SetActive(false);
}

public void Player2Button()
{
    player = Player.Player2;
    playerImage.sprite = playerImageList[1];
    playerChangePanel.SetActive(false);
}

public void Player3Button()
{
    player = Player.Player3;
    playerImage.sprite = playerImageList[2];
    playerChangePanel.SetActive(false);
}

'유니티' 카테고리의 다른 글

Vector  (0) 2023.11.29
Image Sprite 변경  (1) 2023.11.29
Invoke와 InvokeRepeating  (0) 2023.11.28
현재시간 (DateTime.Now)  (0) 2023.11.28
캐릭터 이름 입력창 만들기 (Input Field - TextMeshPro)  (1) 2023.11.28