@iamzealotwang
2023-02-21T10:07:37.000000Z
字数 2885
阅读 274
public class WorkShopModMeta
{
public string UUID; //唯一ID 全局不重复
public int Type; //区分Mod类型 1:地图 2:脚本 3:模型...etc
public string UserID // KeyForGet AvartaImg,Name?
public string Title;
public string Desc;
public string CDN_FileKey_RawMod; //相应文件的Key. URL地址最终前端拼接.方便更换CDN
public string CDN_FileKey_PreviewImg;
public int Version; //Increass by server side
public int ReviewStatus; // 0 NotStart(Default) 1 During 2 Reject 3 Approve
public string RejectMsg; //审核不通过的理由
public string SecretKey; //加密Key !! 抓Rank时候不能带回来
public string Custom; //游戏内特定逻辑.比如标记当前地图适用的人数(单人,1-4人联机等) 用JSON?
}
public class WorkShopModExtData
{
public string UUID; //Mod的唯一ID 表关联
public int LikeNum;
public int DownloadNum;
public int HotScore;
public Date LastUpdateTime; //最后一次更新时间
//All Custom Data Increase By API Call, Game Specific
public int[] Custom;
}
//Data Type区分文件类型是不是图片,CDN对图片有压缩
void Common_UploadFileToCDN(byte[] _data,int _dataType);
void Common_BatchGetModInfo(string[] _modUUIDList);
void Result(List<WorkShopModMeta> _modMetaList,List<WorkShopModExtData> _modExtDataList);
void Mod_GetAllUUIDList(string _userID);
void Result(string[] _allModUUIDList);
先通过 API上传文件到CDN?
//Data Type区分文件类型是不是图片,CDN对图片有压缩
void Common_UploadFileToCDN(byte[] _data,int _dataType);
再发送给后端
void Mod_Create(string _userID,int _modType,string _title,
string _desc,string _modFileKey,string _preivewImgKey,
string _custom,string _secretKey);
void Mod_Update(string _userID,string _modUUID,string _title=null,
string _desc=null,string _modFileKey=null,string _previewImgKey=null,
string _custom=null,string _secretKey=null);
void Mod_Delete(string _userID, string _modUUID);
void User_GetRankList(int _rankType);
return Result(string[] _allModUUIDList);
public class UserModSocialInfo()
{
public string[] likedModList; //所有喜欢过的Mod UUID
... //后续有扩展再添加
}
void User_GetSocialInfo(string _userID);
return Result(UserModSocialInfo _result);
void User_LikeMod(string _userID ,string _modUUID);
void User_DownloadMod(string _userID, string _modUUID);
void User_IncreaseCustomValue(string _userID,string _modUUID,
int _customValueIndex,int _increaseValue);
User_IncreaseCustomValue
接口. 定义一个ID作为 举报统计进去Play以后如果确定有问题,在后台进行下架处理
Logic需要UUID对用户友好, 用ShotUUID ?
void Custom_GetModSecretKey(string _userID, string _modUUID);
return Result(string _key)
void Custom_GetModSecretKey(string _userID,string _loginKey, string _modUUID);
return Result(string _key)