Eabei.GoBangGame/Eabei.GoBangService/Data/Manager/GiveupParse.cs
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Eabei.Model;
using Eabei.Model.EventParam;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
/********************************
* 命名空间: Eabei.GoBangService.Data.Manager
*
* 功 能: N/A
* 类 名: GiveupParse
*
* 作 者: EB
* 创建日期: 2022/6/30 13:45:43
*********************************/
namespace Eabei.GoBangService.Data
{
/// <summary>
/// 认输业务逻辑处理
/// </summary>
public class GiveupParse : DataThread<(string name, string data)>
{
public GiveupParse()
{
DataThreadCallback += GiveupParse_DataThreadCallback;
}
private void GiveupParse_DataThreadCallback((string name, string data) obj)
{
//命令协议----data 1:请求,发起 2: 询问对方 3:对方返回结果 true: 同意 false:不同意 4: 结果应答 true: 同意 false:不同意
if (string.IsNullOrEmpty(obj.data)) return;
if (Giveup(obj.name, out (PlayerInfo? self, PlayerInfo? rival) pairung, out string msg))
{
string code = obj.data[..1];
string rivalName = pairung.rival?.Name ?? "";
switch (code)
{
case "1":
//if (pairung.self.CurrCamp != pairung.self.Camp)
Global.Instance.EventManager.Publish(new EventServerDataResult() { DataHeader = DataHeaderInfo.Giveup, Data = new object[] { rivalName, "2" } });
//else
//Global.Instance.EventManager.Publish(new EventServerDataResult() { DataHeader = DataHeaderInfo.Message, Data = new object[] { obj.name, "你不能悔棋!" } });
break;
case "3":
string result = obj.data[1..];
if (bool.TryParse(result, out bool isOk))
{
if (isOk)
{
(pairung.self.State, pairung.rival.State) = (PlayerState.Free, PlayerState.Free);
//Global.Instance.EventManager.Publish(new EventServerDataResult() { DataHeader = DataHeaderInfo.Giveup, Data = new object[] { rivalName, $"4{result}" } });
Global.Instance.EventManager.Publish(new EventServerDataResult() { DataHeader = DataHeaderInfo.Message, Data = new object[] { obj.name, $"对方已认输!" } });
Global.Instance.EventManager.Publish(new EventServerDataResult() { DataHeader = DataHeaderInfo.Message, Data = new object[] { rivalName, $"对方同意你认输!" } });
}
else
后面还有 50 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。