72 lines
2.3 KiB
C#
72 lines
2.3 KiB
C#
using Assets.MyGame.Scripts.Net;
|
||
using Newtonsoft.Json;
|
||
using System;
|
||
|
||
/// <summary>
|
||
/// 机器人 (JQR = 机器人) WebSocket 发送方法
|
||
/// 对接 FishGameHub 的 BotFireCannon / BotKillFish
|
||
/// 机器人操作无需签名验证
|
||
/// </summary>
|
||
public partial class WebSocketSendList
|
||
{
|
||
/// <summary>
|
||
/// 机器人发炮(无需签名验证)
|
||
/// 对应服务端 FishGameHub.BotFireCannon(roomId, botUserId, gold, count)
|
||
/// 返回子弹ID列表由 RoomFireNotice 事件广播
|
||
/// </summary>
|
||
/// <param name="roomId">房间ID</param>
|
||
/// <param name="botUserId">机器人用户ID(格式: bot_xxxxxxxx)</param>
|
||
/// <param name="gold">单发金币数量</param>
|
||
/// <param name="count">发炮数量</param>
|
||
public static void BotFireCannon(
|
||
string roomId,
|
||
string botUserId,
|
||
long gold,
|
||
int count
|
||
)
|
||
{
|
||
var sendObj = new WebSocketSendList(
|
||
"BotFireCannon",
|
||
roomId,
|
||
botUserId,
|
||
gold,
|
||
count
|
||
);
|
||
|
||
WebSocketManager.Instance.Send(SocketType.game, JsonConvert.SerializeObject(sendObj));
|
||
}
|
||
|
||
/// <summary>
|
||
/// 机器人击杀鱼(无需签名验证,服务端概率判定)
|
||
/// 对应服务端 FishGameHub.BotKillFish(roomId, botUserId, fishNumber, fishId, gold, bulletId)
|
||
/// 击杀结果由 RoomKillNotice 事件广播
|
||
/// </summary>
|
||
/// <param name="roomId">房间ID</param>
|
||
/// <param name="botUserId">机器人用户ID</param>
|
||
/// <param name="fishNumber">鱼编号(种类,如 fish_01)</param>
|
||
/// <param name="fishId">鱼唯一 ID</param>
|
||
/// <param name="gold">金币数量</param>
|
||
/// <param name="bulletId">子弹 ID(必须从 BotFireCannon 返回的 bulletIds 中取用)</param>
|
||
public static void BotKillFish(
|
||
string roomId,
|
||
string botUserId,
|
||
string fishNumber,
|
||
string fishId,
|
||
long gold,
|
||
string bulletId
|
||
)
|
||
{
|
||
var sendObj = new WebSocketSendList(
|
||
"BotKillFish",
|
||
roomId,
|
||
botUserId,
|
||
fishNumber,
|
||
fishId,
|
||
gold,
|
||
bulletId
|
||
);
|
||
|
||
WebSocketManager.Instance.Send(SocketType.game, JsonConvert.SerializeObject(sendObj));
|
||
}
|
||
}
|