比如我定义了这些接口,然后用一个数组存了几个宠物信息(类似最下方的pet1),不论是从playerModuleC用net_发送至playerModuleS还是反过来发送,
都有一定机率出现接收数据不完整的情况,概率较大,
用数据大小接口试过,发送数据大小为485,接收数据大小为485时数据没问题,过大过小时都有问题,可能其中一个值丢失
话说接收的数据为什么还会大于发送的数据大小?
/** 宠物品质 */
export enum IPetRatity {
/** 普通 */
common = '普通',
/** 罕见 */
uncommon = '罕见',
/** 稀有 */
rare = '稀有',
/** 史诗 */
epic = '史诗',
/** 传说 */
legendary = '传说',
/** 神话 */
mythic = '神话',
}
/** 宠物品质颜色 */
export const petColorMap: Map<IPetRatity, LinearColor> = new Map([
[IPetRatity.common, LinearColor.white],
[IPetRatity.uncommon, new LinearColor(0.74, 0.95, 0.74)],
[IPetRatity.rare, new LinearColor(0.58, 0.76, 0.95)],
[IPetRatity.epic, new LinearColor(1, 0.91, 0.47)],
[IPetRatity.legendary, new LinearColor(0.95, 0.7, 1)],
[IPetRatity.mythic, LinearColor.white],
])
/** 宠物接口 */
export interface IPetInfo {
/** GUID */
guid: string
/** 力量 */
strength: number
/** 概率 */
probability: number
/** 稀有度 */
rarity: IPetRatity
/** 宠物花费奖杯 */
wins: number
/** 宠物名字 */
name: string
/** 宠物图标 */
icon: string
/** 宠物星级 */
star: number
/** 是否上锁 */
lock: boolean
}
const pet1: IPetInfo = {
guid: '309102',
strength: 1.4,
probability: 0.5,
rarity: IPetRatity.common,
wins: 5,
name: '橙嘴小黄鸭',
icon: '309444',
star: 0,
lock: false
}
|