MonoBehaviourPunCallbacks에 들어있는 콜백 함수
로비에 있을 때 존재하는 룸을 갱신하기 위해서 사용합니다
public override void OnRoomListUpdate(List<RoomInfo> roomList)
이런식으로 생겨먹었고, 포톤에서 자동으로 실행시켜주고, 실행될 경우 roomList가 함께 전달됩니다
실행되는 경우는
-로비에 접속 시
-새로운 룸이 만들어질 경우
-룸이 삭제되는 경우
-룸의 IsOpen 값이 변화할 경우(아예 RoomInfo 내 데이터가 바뀌는 경우 전체일 수도 있습니다)
에 실행되는 것 같아요
저 매개변수로 넘어오는 roomList는
"현재 존재하는 방 전부" 가 아니라
"변동사항이 있는 방" 만 넘어옵니다.
로비에 들어왔는데 이미 만들어져있던 방이 3개가 있었다
->roomList의 리스트 안에 3개의 방이 건너옵니다
그러다가 방 하나가 만들어졌습니다
->만들어진 그 방 하나의 RoomInfo가 담긴 roomList가 건너옵니다
방 하나가 삭제됬습니다
->삭제된 그 방 하나의 RoomInfo가 담긴 roomList가 건너옵니다
어떤 방이 게임을 시작해서 IsOpen이 false로 바뀌었습니다
->false가 된 그 방 하나의 RoomInfo가 담긴 roomList가 건너옵니다
그래서 저 roomList로 건네받은 리스트를 그대로 현재 존재하는 방 리스트로 쓰기엔 무리가 있고,
따로 List<RoomInfo>를 만들어놓고 그 리스트를 계속 수정해서 갱신하는 방법을 쓰는 것이 좋을 것 같아요
반응형
'플밍' 카테고리의 다른 글
유니티 액션겜 개발일지 - 캐릭터 컨트롤러 구조개선(1) (0) | 2021.04.28 |
---|---|
유니티 커스텀에디터 알아보는 글 - 1 (0) | 2021.01.07 |
리듬겜 프로토 제작일기 - 7 (0) | 2020.08.23 |
리듬겜 프로토 제작일기 - 6 (0) | 2020.08.22 |
리듬겜 프로토 제작일기 - 5 (0) | 2020.08.21 |