Peer 상태 머신
클라이언트 피어는 다음 중 하나의 상태가 있습니다:
- 연결됨: 연결된 후 초기 상태로 플레이어가 세계에 입장하지 않은 상태입니다.
- 세계입장: 플레이어가 EnterWorld 오퍼레이션을 통해 세계에 입장 하였습니다.
- 연결해제됨: 클라이언트가 접속 해제 되었습니다.
이 다이어그램은 모든 전환을 보여 주고 있습니다:
피어는 상태에 따라 서로 다른 오퍼레이션 핸들러를 사용합니다.
이렇게 하면 오퍼레이션이 각 상태에 따라 다르게 행동할 수 있도록 합니다.
다음의 오퍼레이션 핸들러들이 사용됩니다:
- State Connected: Photon.MmoDemo.Server.MmoInitialOperationHandler
- State WorldEntered: Photon.MmoDemo.Server.MmoActorOperationHandler
- State Disconnected: null
클라이언트는 상태 변경 오퍼레이션을 호출 후 항상 관련된 오퍼레이션 응답 이벤트를 기다려야 합니다.
피어 상태, 따라서 현재 오퍼레이션 핸들러 (오퍼레이션 행위)는 응답 이벤트를 받을 때까지 보장되지 않습니다.
EnterWorld 오퍼레이션의 경우는 오퍼레이션 응답이며 ExitWorld 오퍼레이션의 경우에는 WorldExited 이벤트를 대기 해야 합니다.