using System;
using TEngine;
using TEngine.Core;
using TEngine.Core.Network;
namespace GameLogic
{
///
/// 玩家信息网络模块。
///
public class PlayerNetSys:DataCenterModule
{
///
/// 网络模块初始化。
///
public override void Init()
{
base.Init();
//注册登录消息回调。
GameClient.Instance.RegisterMsgHandler(OuterOpcode.H_G2C_LoginResponse,OnLoginRes);
}
///
/// 登录消息回调。
///
/// 网络回复消息包。
public void OnLoginRes(IResponse response)
{
if (NetworkUtils.CheckError(response))
{
GameClient.Instance.Status = GameClientStatus.StatusConnected;
return;
}
H_G2C_LoginResponse ret = (H_G2C_LoginResponse)response;
Log.Debug(ret.ToJson());
GameClient.Instance.Status = GameClientStatus.StatusEnter;
}
///
/// 登录消息请求。
///
/// 用户名。
/// 用户密码。
public void DoLoginReq(string userName,string passWord)
{
if (GameClient.Instance.Status == GameClientStatus.StatusEnter)
{
Log.Info("当前已经登录成功。");
return;
}
H_C2G_LoginRequest loginRequest =new H_C2G_LoginRequest()
{
UserName = userName,
Password = passWord
};
GameClient.Instance.Send(loginRequest);
GameClient.Instance.Status = GameClientStatus.StatusLogin;
}
}
}