You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
135 lines
3.5 KiB
135 lines
3.5 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
|
|
using Google.Protobuf.WellKnownTypes;
|
|
|
|
namespace SogClient
|
|
{
|
|
/*
|
|
public enum DeskStatus
|
|
{
|
|
idle = 0,
|
|
send_search = 1,
|
|
search = 1,
|
|
in_desk = 2,
|
|
leave_desk = 3,
|
|
}
|
|
|
|
|
|
public class TestDesk : ITestHandler
|
|
{
|
|
private DeskStatus status;
|
|
private long lastSendMsgTime;
|
|
public long deskId;
|
|
|
|
public TestDesk(Player player)
|
|
{
|
|
SetPlayer(player);
|
|
status = DeskStatus.idle;
|
|
}
|
|
|
|
|
|
public override void Update(long nowSecond)
|
|
{
|
|
if (nowSecond - lastSendMsgTime >= 10)
|
|
{
|
|
if (status == DeskStatus.idle)
|
|
{
|
|
//SendSearchDeskReq();
|
|
}
|
|
else if (status == DeskStatus.in_desk)
|
|
{
|
|
// SendLeaveDeskReq();
|
|
}
|
|
|
|
lastSendMsgTime = nowSecond;
|
|
}
|
|
}
|
|
|
|
public override void HandlerMsg(RequestPacket packet)
|
|
{
|
|
TraceLog.Trace("recv message from server, message type {0}", packet.MsgID);
|
|
switch (packet.MsgID)
|
|
{
|
|
case (int)CSGameMsgID.SearchDeskRes:
|
|
OnSearchDeskRes((CSSearchDeskRes)packet.Packet);
|
|
break;
|
|
case (int)CSGameMsgID.EnterDeskRes:
|
|
OnEnterDeskRes((CSEnterDeskRes)packet.Packet);
|
|
break;
|
|
case (int)CSGameMsgID.LeaveDeskRes:
|
|
OnLeaveDeskRes((CSLeaveDeskRes)packet.Packet);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
public void SendSearchDeskReq()
|
|
{
|
|
CSSearchDeskReq req = new CSSearchDeskReq();
|
|
req.Uid = m_player.GetUid();
|
|
req.TeamType = TeamType.Single;
|
|
req.BreakIce = BreakIceType.Fix;
|
|
req.Chip = -1;
|
|
SendToServer(req, (int)CSGameMsgID.SearchDeskReq);
|
|
// status = DeskStatus.send_search;
|
|
}
|
|
|
|
public void SendEnterDeskReq()
|
|
{
|
|
CSEnterDeskReq enterDeskReq = new CSEnterDeskReq();
|
|
enterDeskReq.Uid = m_player.GetUid();
|
|
enterDeskReq.DeskId = 1;
|
|
|
|
SendToServer(enterDeskReq, (int)CSGameMsgID.EnterDeskReq);
|
|
}
|
|
|
|
public void SendLeaveDeskReq()
|
|
{
|
|
if (deskId > 0)
|
|
{
|
|
CSLeaveDeskReq leaveDeskReq = new CSLeaveDeskReq();
|
|
leaveDeskReq.Uid = m_player.GetUid();
|
|
leaveDeskReq.DeskId = deskId;
|
|
|
|
SendToServer(leaveDeskReq, (int) CSGameMsgID.LeaveDeskReq);
|
|
}
|
|
}
|
|
|
|
public void OnSearchDeskRes(CSSearchDeskRes res)
|
|
{
|
|
if (res.Ret == 0)
|
|
{
|
|
if (res.Cancel == 0)
|
|
{
|
|
status = DeskStatus.search;
|
|
}
|
|
else
|
|
{
|
|
status = DeskStatus.idle;
|
|
}
|
|
}
|
|
}
|
|
|
|
public void OnEnterDeskRes(CSEnterDeskRes res)
|
|
{
|
|
if (res.Ret == 0)
|
|
{
|
|
status = DeskStatus.in_desk;
|
|
deskId = res.DeskId;
|
|
}
|
|
}
|
|
|
|
public void OnLeaveDeskRes(CSLeaveDeskRes res)
|
|
{
|
|
if (res.Ret == 0)
|
|
{
|
|
status = DeskStatus.leave_desk;
|
|
}
|
|
}
|
|
}
|
|
*/
|
|
}
|
|
|