Files
5.24BuYu/Assets/MyGame/Scripts/Net/APIResponses/HallResponses.cs
T
2026-08-09 17:57:46 +08:00

321 lines
9.1 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System;
using System.Collections.Generic;
using Assets.MyGame.Scripts.Net.API.GameConfig_SubClass;
namespace Assets.MyGame.Scripts.Net.APIResponses
{
/// <summary>
/// 保险箱信息(存取款通用)
/// </summary>
[Serializable]
public class SafeBoxInfo
{
public int code;
public string info;
public string data;
}
/// <summary>
/// 通用字符串响应(设置密码、重置密码等)
/// </summary>
[Serializable]
public class StringBaseResponse
{
public int code; // 状态码
public string message; // 提示信息
}
/// <summary>
/// 救济金领取响应
/// </summary>
[Serializable]
public class GetReliefResponse
{
public long reliefAmount; // 领取的救济金数量(改用long防溢出)
public int leftTimes; // 剩余可领取次数
public string message; // 提示信息
}
/// <summary>
/// 道具信息(购买道具、合成碎片)
/// </summary>
[Serializable]
public class PropInfo
{
public int propId; // 道具ID
public string name; // 道具名称
public string desc; // 描述
public string icon; // 图标地址
public int type; // 类型
public int level; // 等级
public int count; // 数量
}
/// <summary>
/// 月卡信息(购买月卡)
/// </summary>
[Serializable]
public class MonthCardInfo
{
public int cardId; // 月卡ID
public string name; // 月卡名称
public int days; // 有效天数
public DateTime expireTime; // 到期时间
}
/// <summary>
/// 金币购买响应
/// </summary>
[Serializable]
public class GoldInfo
{
public int userId; // 用户ID
public long gold; // 当前金币
public long addGold; // 本次增加金币(改用long防溢出)
}
/// <summary>
/// 钻石购买响应
/// </summary>
[Serializable]
public class DiamondInfo
{
public int userId; // 用户ID
public int diamond; // 当前钻石
public int addDiamond; // 本次增加钻石
}
/// <summary>
/// 签到响应
/// </summary>
[Serializable]
public class SignInfo
{
public int day; // 第几天签到
public bool isToday; // 今日是否已签到
public long rewardGold; // 奖励金币(改用long防溢出)
public long rewardDiamond;// 奖励钻石(改用long防溢出)
}
/// <summary>
/// 用户信息(切换炮台、翅膀、战神)
/// </summary>
[Serializable]
public class UserInfo
{
public int userId; // 用户ID
public string nickname; // 昵称
public int level; // 等级
public int cannonId; // 当前炮台
public int wingId; // 当前翅膀
public int godWarId; // 当前战神
}
/// <summary>
/// 礼包信息(Vip礼包、月卡礼包)
/// </summary>
[Serializable]
public class GiftInfo
{
public int giftId; // 礼包ID
public string name; // 礼包名称
public string desc; // 礼包描述
public PropInfo[] items; // 礼包内物品
}
/// <summary>
/// 用户任务列表响应
/// </summary>
[Serializable]
public class UserTaskListResponse
{
public int userId; // 用户ID
public TaskInfo[] tasks; // 任务列表
}
/// <summary>
/// 单个任务信息
/// </summary>
[Serializable]
public class TaskInfo
{
public int taskId; // 任务ID
public string name; // 任务名称
public string desc; // 描述
public int progress; // 当前进度
public int target; // 完成目标
public bool isCompleted; // 是否完成
public bool isReceived; // 是否领取奖励
}
/// <summary>
/// 发放奖励响应
/// </summary>
[Serializable]
public class RewardInfo
{
public int rewardId; // 奖励ID
public string name; // 奖励名称
public PropInfo[] items; // 奖励物品
}
/// <summary>
/// 刮刮卡抽奖结果(接口:/api/ScratchCard/draw)
/// </summary>
[Serializable]
public class ScratchCardResult
{
/// <summary>奖品类型 1=金币 2=钻石 3=道具</summary>
public int prizeType;
/// <summary>奖品名称</summary>
public string prizeName;
/// <summary>奖励数量</summary>
public int count;
/// <summary>道具信息(prizeType=3 时有值)</summary>
public BaseProduct baseProduct;
}
/// <summary>
/// 用户资产变动DTO(接口:/api/Hall/GetUserRewardList)
/// </summary>
[Serializable]
public class UserRewardDto
{
public string id;
public string userId;
public int type;
public int source;
public int currencyType;
public long beforeCount;
public long changeCount;
public long afterCount;
public string otherId;
public string otherUserId;
public string remark;
public string roomName;
public string roomInfo;
public int tax;
public long createTime;
}
/// <summary>
/// 公告DTO(接口:/api/Notice)
/// </summary>
[Serializable]
public class NoticeDto
{
public string id;
public string title;
public string content;
public string recommend;
public string topImage; // 顶部图片 URL
public List<string> contentImages; // 内容图片列表
public long createTime;
}
// ==================== 战令 ====================
/// <summary>获取战令信息响应(/api/Hall/GetBattleOrder)</summary>
[Serializable]
public class BattleOrderResponse
{
public bool isOpen;
public string message;
public UserBattleOrderInfo userBattleOrder;
public BattleOrderConfigInfo config;
}
[Serializable]
public class UserBattleOrderInfo
{
public string userId;
public int level;
public long exp;
public bool isLuxury;
public bool isSupreme;
public List<int> receivedLevels;
public List<int> purchasedAdvances;
}
[Serializable]
public class BattleOrderConfigInfo
{
public long endTime;
public string ruleDesc;
public string buyDesc;
public string advanceGiftDesc;
public List<BattleOrderLevelInfo> levelConfig;
public List<BattleOrderAdvanceInfo> advanceGift;
}
[Serializable]
public class BattleOrderLevelInfo
{
public int level;
public long exp;
public List<GiftConfig> normalGiftList;
public List<GiftConfig> luxuryGiftList;
public List<GiftConfig> supremeGiftList;
}
[Serializable]
public class BattleOrderAdvanceInfo
{
public int type;
public string name;
public int count;
public int payType;
public int payCount;
}
/// <summary>购买战令等级响应(/api/Hall/BuyBattleOrderLevel)</summary>
[Serializable]
public class BuyBattleOrderLevelResponse
{
public int newLevel;
public int cost;
}
/// <summary>购买战令进阶响应(/api/Hall/BuyBattleOrderAdvance)</summary>
[Serializable]
public class BuyBattleOrderAdvanceResponse
{
public bool success;
public string message;
public List<int> purchasedAdvances;
}
/// <summary>用户任务 DTO(/api/Hall/GetUserTaskList?taskType=-1)</summary>
[Serializable]
public class UserTaskDto
{
public string id;
public string userId;
public string number;
public string remark; // 任务描述
public int taskType; // 任务类型
public int taskEvent; // 任务事件
public int taskCount; // 任务次数要求
public double count; // 当前完成次数(number 类型)
public bool isFinish; // 是否完成
public string otherId;
public bool isGet; // 是否已领取
public int taskAddTime;
public long taskEndTime;
public long taskFinishTime;
public long exp; // 奖励经验
}
/// <summary>
/// 快速加入房间返回数据
/// /api/Room/QuickJoin?gameType=&level=
/// 示例: {"data":{"roomId":"11107","webSocketUrl":"ws://8.137.163.153/fishinghub?instance=1"},"code":0,"info":null}
/// </summary>
[Serializable]
public class QuickJoinResponse
{
/// <summary>房间ID</summary>
public string roomId;
/// <summary>房间专属 socket 地址(如 ws://xxx/fishinghub?instance=1)</summary>
public string webSocketUrl;
}
}