-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
15분 근처부터 Session을 매개변수로 받는 부분
21.01.30 12:04 작성 조회수 172
1
class PacketHandler
{
public static void PlayerInfoReqHandler(PacketSession session, IPacket packet)
{
PlayerInfoReq p = packet as PlayerInfoReq;
Console.WriteLine($"PlayerInfoReq : {p.playerId} : {p.name}");
foreach (PlayerInfoReq.Skill skill in p.skills)
Console.WriteLine($"Skill({skill.id})({skill.level})({skill.duration})");
}
}
위 함수에서 Session을 받아오지만 직접 사용은 하지 않는 이유가 뭔가요? 그냥 공통 인터페이스를 만들어놓은건가요? 그리고 굳이 IPacket으로 받아와서 PlayerInfoReq로 캐스팅하는 부분이 잘 이해가 안가는데 캐스팅 해주는 이유를 알고싶습니다.
답변을 작성해보세요.
0
0
Rookiss
지식공유자2021.01.30
Session은 경우에 따라 요청을 보낸 쪽으로 응답을 보낼 때 필요합니다.
IPacket으로 받지 않고 각각 패킷으로 받게
자동화 코드를 만드는게 까다롭기 때문에 그렇게 만든 것이지만 다른 방식도 상관없습니다.
답변 2