게임 대기실 구현

대기실

호스트가 서버를 새로 열어 방을 생성하면 다른 플레이어가 참가가 가능해진다.

이때 참가자 player는 방을 나가게 되면 그냥 나가지지만 호스트가 방을 나가게 되면 자동으로 플레이어도 나가지게 된다.

이부분은

public class GameRoomSettingsUI : SettingsUI
{
    public void ExitGameRoom()
    {
        var manager = AmongUsRoomManager.singleton;
        if (manager.mode == Mirror.NetworkManagerMode.Host)
        {
            manager.StopHost();
        }
        else if(manager.mode == Mirror.NetworkManagerMode.ClientOnly)
        {
            manager.StopClient();
        }
    }
}

(Setting UI를 상속받은 모습)

StopHost함수(mirror API)를 실행하면 클라이언트도 종료되는 걸로 예상된다.

이때 다른 클라이언트가 호스트가 되는 기능이 구현 가능하지만 지금은 따로 구현 하지 않도록 한다.

영상에서 처럼 간단하게 Main Menu에서 구현한 setting UI를 상속받아 게임돌아가기, 퇴장하기 버튼만 추가하여 쉽게 구현하였다.

확실히 직접 상속받아 써보니 객체지향프로그래밍의 장점을 확인할 수 있었다.

어몽어스
테스트로 호스트 및 플레이어 GameRoom 대기실 적용 되는지..

진행하면서 UI배치와 컴포넌트들이 익숙해지면서 눈에 쉽게들어오기 시작했다.


https://wergia.tistory.com/category/%EA%B2%8C%EC%9E%84%20%EC%A0%9C%EC%9E%91/Make%20the%20%EC%8B%9C%EB%A6%AC%EC%A6%88 베르님의 make the를 참고하여 만들었습니다.

어몽어스 GITHUB

태그: ,

카테고리:

업데이트:

댓글남기기