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

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;
}
}
}
*/
}