Hierarchy

  • default
    • GameAnvilUser

Constructors

  • 게임 서버에 접근하기 위한 유저의 새로운 인스턴스를 생성

    Parameters

    • connector: GameAnvilConnector

      커넥터

    • serviceName: string

      서비스 이름

    • subId: number

      추가 아이디 값(1 ~ 127)

    Returns GameAnvilUser

Properties

커넥터

onAdminKickout: ((gameAnvilUser: GameAnvilUser, message: string) => void)

관리자 기능으로 로그아웃 되었을 시 호출하는 이벤트

알림 문자열

onForceLeaveRoom: ((gameAnvilUser: GameAnvilUser, roomId: number, payload: Payload) => void)

방에서 쫒겨났을 시 호출하는 이벤트

방 번호(ID), 추가 정보

onForceLogout: ((gameAnvilUser: GameAnvilUser, payload: Payload) => void)

서버에서 로그아웃 명령을 받을 시 호출하는 이벤트

이 메서드가 호출되었다면 자동으로 서버에서 로그아웃 된다

추가 정보

onMatchPartyCancel: ((gameAnvilUser: GameAnvilUser, resultCode: ResultCodeMatchPartyCancel) => void)

파티 매칭 취소시 호출하는 이벤트

오류 코드

onMatchPartyStart: ((gameAnvilUser: GameAnvilUser, resultCode: ResultCodeMatchPartyStart, payload: Payload) => void)

파티 매칭 시작시 호출하는 이벤트

오류 코드, 서버 추가 정보

onMatchUserDone: ((gameAnvilUser: GameAnvilUser, resultCode: ResultCodeMatchUserDone, matchResult: MatchResult) => void)

유저 매칭 완료시 호출하는 이벤트

오류 코드, 결과

onMatchUserTimeout: ((gameAnvilUser: GameAnvilUser) => void)

유저 매칭이 시간 초과로 취소되었을 때 호출하는 이벤트

onMoveChannel: ((gameAnvilUser: GameAnvilUser, moveChannelResult: MoveChannelResult) => void)

채널 이동시 호출하는 이벤트

채널 이동 결과

onNotice: ((gameAnvilUser: GameAnvilUser, message: string) => void)

공지 메시지를 받을 시 호출하는 이벤트

알림 문자열

onSessionClose: ((gameAnvilUser: GameAnvilUser, resultCode: ResultCodeSessionClose, payload: Payload) => void)

이 유저의 연결이 끊어졌을 시 호출하는 이벤트

일반적인 로그아웃 외에 중복 로그인 등도 같이 처리

오류 코드, 추가 정보

Accessors

  • get isJoinedRoom(): boolean
  • 방에 입장해있는지 여부

    Returns boolean

  • set isJoinedRoom(value): void
  • Parameters

    • value: boolean

    Returns void

  • get isLoggedIn(): boolean
  • 로그인 하였는지 여부

    Returns boolean

  • set isLoggedIn(value): void
  • Internal

    Parameters

    • value: boolean

    Returns void

  • get isPartyMatchInProgress(): boolean
  • 현재 파티 매칭 중인지 여부

    Returns boolean

  • set isPartyMatchInProgress(value): void
  • Parameters

    • value: boolean

    Returns void

  • get isUserMatchInProgress(): boolean
  • 현재 매칭 중인지 여부

    Returns boolean

  • set isUserMatchInProgress(value): void
  • Parameters

    • value: boolean

    Returns void

  • get roomId(): number
  • 방에 있을 때의 아이디

    만약 아니라면 이 값은 0

    Returns number

  • set roomId(value): void
  • Parameters

    • value: number

    Returns void

  • get serviceName(): string
  • 유저 생성할 때 지정한 서비스 이름을 반환

    Returns string

  • set serviceName(value): void
  • Parameters

    • value: string

    Returns void

  • get userId(): number
  • 유저 아이디

    만약 0으면 로그인이 풀렸거나 로그인하지 않았음

    Returns number

  • set userId(value): void
  • Parameters

    • value: number

    Returns void

  • get userType(): string
  • 로그인 시 지정한 유저 타입 정보

    Returns string

  • set userType(value): void
  • Parameters

    • value: string

    Returns void

Methods

  • 방을 생성하고 입장

    Parameters

    • roomName: string

      방 이름

    • roomType: string

      방 타입(서버 설정에서 정의)

    • matchingGroup: string

      매칭 시 사용할 그룹 정보

    • Optionalpayload: Payload

      추가 정보

    Returns Promise<ErrorResult<ResultCodeCreateRoom, CreatedRoomResult>>

    방 생성 결과

  • 객체를 해제

    서버에 로그아웃 요청을 보내지 않기 때문에 이 코드의 호출 전 로그아웃 메서드를 호출해야 한다

    Returns void

  • 방에 입장

    Parameters

    • roomType: string

      방 타입(서버 설정에서 정의)

    • roomId: number

      방 아이디 정보

    • matchingUserCategory: string

      매칭 유저 정보

    • Optionalpayload: Payload

      추가 정보

    Returns Promise<void>

  • 방 매칭 요청

    Parameters

    • isCreateRoomIfNotJoinRoom: boolean

      방이 없으면 생성한다

    • isMoveRoomIfJoinedRoom: boolean

      특정 상황에서 방을 옮겨갈 수 있다

    • roomType: string

      방 타입(서버 설정에서 정의)

    • matchingGroup: string

      매칭 시 사용할 그룹 정보

    • matchingUserCategory: string

      매칭 방에 유저 카테고리 정보 전달

    • Optionalpayload: Payload

      추가 정보

    • OptionalleaveRoomPayload: Payload

      만약 옮겨갈 때 사용할 추가 정보

    Returns Promise<ErrorResult<ResultCodeMatchRoom, MatchResult>>

    매칭 요청 결과

  • Parameters

    • errorCode: ErrorCode
    • adminKickOut: AdminKickoutNoti

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • clientStateCheck: ClientStateCheck

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • forceLeaveRoom: ForceLeaveRoomNoti

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • forceLogout: ForceLogoutNoti

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • matchPartyCancelRes: MatchPartyCancelResOrNoti

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • matchPartyCencelRes: MatchPartyStartResOrNoti

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • matchUserDone: MatchUserDone

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • MatchUserTimeout: MatchUserTimeout

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • moveChannel: MoveChannelNoti

    Returns void

  • Parameters

    • errorCode: ErrorCode
    • notice: Notice

    Returns void

  • Internal

    Parameters

    • message: IMessage

    Returns Promise<InternalPacket>

  • 게임 서버로 유저의 패킷 전송

    Parameters

    • message: IMessage

      서버로 보낼 프로토 버퍼 패킷

    Returns void

  • Internal

    Parameters

    • isJoinedRoom: boolean
    • newRoomId: number

    Returns void

  • 방 입장 정보를 리셋

    단순히 클라이언트 상에서 수치만 바꾼다

    이 메서드는 테스트나 연결 오류 등으로 필요시 사용할 것

    정식 절차로 방에서 나오는 것은 leaveRoom 메서드를 사용할 것

    Returns void

  • 서버에서 프로토 버퍼를 받았을 때 호출할 메서드를 지정

    만약 이미 있다면 삭제하고 인자로 받은 메서드를 사용 한다

    (주의) callback 은 비동기로 동작하므로 의도한 타이밍에 정확히 호출되지 않을 수 있음

    Type Parameters

    • TProtoBuffer extends IMessage

    Parameters

    Returns void