1804 lines
62 KiB
Python
1804 lines
62 KiB
Python
# -*- coding: utf-8 -*-
|
||
|
||
class ReqHead(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', '', '账号id'],
|
||
['session_id', '', '会话id'],
|
||
]
|
||
|
||
class RspHead(object):
|
||
|
||
def __init__(self, **kwargs):
|
||
self.fields = [
|
||
['errcode', 0, '错误码/0 成功;1 失败;2余额不足'],
|
||
['errmsg', '', '错误描述'],
|
||
]
|
||
for (key, value) in kwargs.items():
|
||
for i in range(0, len(self.fields)):
|
||
if self.fields[i][0] == key:
|
||
self.fields[i][0] = key
|
||
self.fields[i][1] = value
|
||
break
|
||
|
||
JwtHeader = [
|
||
'Authorization Bearer {JwtToken}'
|
||
]
|
||
|
||
LoginRequired = 'login required'
|
||
|
||
class Union(object):
|
||
|
||
def __init__(self, fields):
|
||
self.doc = 'Union 联合体的访问方式:.联合体内含结构的字段名'
|
||
self.fields = [['', f[0], f[1]] for f in fields]
|
||
|
||
class Attr(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['attr_id', 0, '属性id'],
|
||
['type', 0, '1: 绝对值 2:百分比 ---弃用字段'],
|
||
['val', 0, '属性值'],
|
||
]
|
||
|
||
class AttrDesc(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', '属性名'],
|
||
['attr_id', 0, '属性id'],
|
||
['type', 0, '1: 绝对值 2:百分比 ---弃用字段' ],
|
||
['val', 0, '属性值'],
|
||
]
|
||
|
||
class SystemCurrency(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', '货币名称'],
|
||
['original_price', 0, '原价'],
|
||
['discount_price', 0, '折后价'],
|
||
['discount_rate', 0, '折扣百分比(0-100)'],
|
||
['decimals', 0, '小数位数'],
|
||
['contract_address', 0, '合约地址'],
|
||
]
|
||
|
||
class Page(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['last_idx', '', '回传信息'],
|
||
['total', 0, '总记录数'],
|
||
['count', 0, '当前记录数'],
|
||
['per_page', 0, '每页多少条记录'],
|
||
['current_page', 0, '当前页'],
|
||
['total_pages', 0, '总页数'],
|
||
]
|
||
|
||
class Pagination(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['total', 0, '总记录数'],
|
||
['count', 0, '当前页查到的记录数'],
|
||
['current_page', 0, '当前第几页'],
|
||
['total_page', 0, '总页数'],
|
||
]
|
||
|
||
class Gun(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['token_id', '', 'token id'],
|
||
['gun_uniid', 0, '枪唯一id'],
|
||
['gun_id', 0, '枪id'],
|
||
['state', 0, '0:已购买 1:免费(GIFT标签)'],
|
||
['gun_lv', 0, '枪等级'],
|
||
['quality', 0, '品阶'],
|
||
['durability', 0, '耐久'],
|
||
['ceg_uplimit', 0, 'ceg今天获取上限'],
|
||
['!rand_attr', [Attr()], '枪械属性'],
|
||
['try_count', 0, '剩余体验次数 当state=1时才有意义'],
|
||
['lock_type', 0, '0:无锁 1:升级 2:升阶 3:派遣中'],
|
||
['unlock_time', 0, '使用解锁utc时间(升级或者升阶触发),锁定期间不可战斗和做其他操作,配合lock_type使用'],
|
||
['unlock_lefttime', 0, '解锁剩余时间(单位秒)'],
|
||
['trade_locktime', 0, '出售锁定时间(升级或者升阶完成后触发),单位秒,只锁交易,其他的操作仍可进行'],
|
||
['current_pvp_get_ceg', 0, '当前pvp获取的ceg数量'],
|
||
['current_pve_get_ceg', 0, '当前pve获取的ceg数量'],
|
||
['last_pvp_get_ceg_time', 0, '最后一次获取pvp获取ceg时间'],
|
||
['last_pve_get_ceg_time', 0, '最后一次获取pve获取ceg时间'],
|
||
['offer_reward_state', 0, '是否悬赏中'],
|
||
['tags', '', '1:Gen状态'],
|
||
['!hero_ids', [], '被使用英雄的item_id'],
|
||
]
|
||
|
||
class GunSkin(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['gun_id', 0, '枪支id'],
|
||
['skin_id', 0, '皮肤id'],
|
||
['try_expire_at', 0, '试用到期时间(utc时间)'],
|
||
]
|
||
|
||
class GunTalent(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['talent_id', 0, '天赋'],
|
||
['talent_lv', 0, '天赋等级'],
|
||
]
|
||
|
||
class UserInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['activated', 0, '是否已激活'],
|
||
['rename_count', 0, '改名次数'],
|
||
['account_id', '', '账号id'],
|
||
['address', '', '钱包地址(空或者null表示没钱包)'],
|
||
['name', '', '用户名字'],
|
||
['head_id', 0, '头像id'],
|
||
['head_frame', 0, '头像框id'],
|
||
['level', 0, '等级'],
|
||
['exp', 0, '经验'],
|
||
['max_exp', 0, '经验(上限)'],
|
||
['rank', 0, '当前段位'],
|
||
['history_best_rank', 0, '历史最高段位'],
|
||
['gold', 0, '金币'],
|
||
['diamond', 0, '钻石'],
|
||
['hero_uniid', 0, '当前使用的英雄唯一ID'],
|
||
['hero_id', 0, '当前使用的英雄ID'],
|
||
['first_fight', 0, '是否是第一次战斗'],
|
||
['already_guide', 0, '是否已经引导'],
|
||
['pve_instance_id', 0, '已过pve副本id 0:一关未过'],
|
||
['!head_list', [0], '拥有的头像列表'],
|
||
['!hero_list', [0], '拥有的立绘背景列表'],
|
||
['!head_frame_list', [0], '拥有的头像框列表'],
|
||
['is_gain_item', 0, '0 为获取,1 以获取'],
|
||
['guild_id', '', '工会id'],
|
||
['guild_job', 0, '工会职位'],
|
||
['guild_name', '', '工会名称'],
|
||
['parachute', '', '当前使用的降落伞id'],
|
||
['!parachute_list', [0], '拥有的降落伞列表'],
|
||
['ring_id', 0, '勋章(戒指)ID'],
|
||
['!ring_list', [0], '勋章(戒指)列表'],
|
||
['!honor_info', [HonorInfo()], '荣誉信息'],
|
||
]
|
||
|
||
class UserBattleInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['user_info', UserInfo(), '用户信息'],
|
||
['hero_info', Hero(), '上阵英雄信息'],
|
||
]
|
||
|
||
class HonorInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['token_type',0,'NFT 类型'],
|
||
['state',0,'1使用 0未使用'],
|
||
]
|
||
|
||
class UserSimple(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', '', '账号id'],
|
||
['address', '', '钱包地址'],
|
||
['name', '', '用户名字'],
|
||
['head_id', 0, '头像id'],
|
||
['head_frame', 0, '头像框id'],
|
||
['level', 0, '等级'],
|
||
['exp', 0, '经验'],
|
||
['gold', 0, '金币'],
|
||
['diamond', 0, '钻石'],
|
||
['hero_id', 0, '当前使用的英雄ID'],
|
||
['rank', 0, '段位'],
|
||
['score', 0, '积分'],
|
||
['pve_instance_id', 0, '已过pve副本id 0:一关未过'],
|
||
['hero_skin', 0, '出战英雄皮肤'],
|
||
]
|
||
|
||
class BcUserInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account', '', '账号'],
|
||
['gold', 0, '金币'],
|
||
['diamond', 0, '钻石'],
|
||
]
|
||
|
||
class UserDetailInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['activated', 0, '是否已激活'],
|
||
['account_id', '', '账号id'],
|
||
['name', '', '用户名字'],
|
||
['head_id', 0, '头像id'],
|
||
['head_frame', 0, '头像框id'],
|
||
['level', 0, '等级'],
|
||
['exp', 0, '经验'],
|
||
['max_exp', 0, '经验(上限)'],
|
||
['gold', 0, '金币'],
|
||
['diamond', 0, '钻石'],
|
||
['hero_uniid', 0, '当前使用的英雄唯一ID'],
|
||
['hero_id', 0, '当前使用的英雄ID'],
|
||
['current_rank', 0, '当前段位'],
|
||
['history_best_rank', 0, '历史最高段位'],
|
||
['current_rank_score', 0, '当前赛季排位分'],
|
||
['history_best_rank_score', 0, '历史最高赛季排位分'],
|
||
['like_count', 0, '点赞次数'],
|
||
['guild_id', '', '工会id'],
|
||
['guild_job', 0, '工会职位'],
|
||
['guild_name', '', '工会名称'],
|
||
]
|
||
|
||
class UserChartInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['total_kills', 0, '击杀总数(个人信息)'],
|
||
['game_times', 0, '游戏场次(个人信息)'],
|
||
['win_times', 0, '胜利场次(个人信息)'],
|
||
['kills_avg', 0, '场均击杀'],
|
||
['assist_avg', 0, '场均助攻'],
|
||
['damage_avg', 0, '场均伤害'],
|
||
['recover_avg', 0, '场均恢复'],
|
||
['alive_avg', 0, '场均生存(4v4模式下才有)'],
|
||
['level_avg', 0, '场均等级(moba模式下才有)'],
|
||
['star_kills', 0, '击败(5纬图-击败, 百分比数值整数部分)'],
|
||
['star_damage', 0, '伤害(5纬图-伤害, 百分比数值整数部分)'],
|
||
['star_assist', 0, '助攻(5纬图-生存, 百分比数值整数部分)'],
|
||
['star_recover', 0, '治疗(5纬图-治疗, 百分比数值整数部分)'],
|
||
['star_alive', 0, '生存(5纬图-胜利, 百分比数值整数部分,4v4模式下才有)'],
|
||
['star_level', 0, '等级(5纬图-胜利, 百分比数值整数部分,moba模式下才有)'],
|
||
]
|
||
|
||
class Hero(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['token_id', '', 'token id'],
|
||
['hero_uniid', 0, '英雄唯一id'],
|
||
['hero_id', 0, '英雄id'],
|
||
['hero_lv', 0, '英雄等级'],
|
||
['hero_tili', 0, '英雄体力'],
|
||
['state', 0, '0:已购买 1:免费(GIFT标签)'],
|
||
['skin_id', 0, '英雄皮肤id'],
|
||
['quality', 0, '品阶'],
|
||
['skill_lv1', 0, '主动技能等级'],
|
||
['skill_lv2', 0, '被动技能等级'],
|
||
['!rand_attr', [Attr()], '英雄属性'],
|
||
['try_count', 0, '剩余体验次数 当state=1时才有意义'],
|
||
['lock_type', 0, '0:无锁 1:升级 2:升阶 3:派遣中'],
|
||
['unlock_lefttime', 0, '解锁剩余时间(单位秒)'],
|
||
['unlock_time', 0, '使用解锁utc时间(升级或者升阶触发),锁定期间不可战斗和做其他操作,配合lock_type使用'],
|
||
['current_get_gold', 0, '当前获取的gold数量'],
|
||
['last_get_gold_time', 0, '最后一次获取gold时间'],
|
||
['gold_uplimit', 0, '每天gold上限'],
|
||
['unlock_trade_time', 0, '出售解锁utc时间(升级或者升阶完成后触发),只锁交易,其他的操作仍可进行,和lock_type无关是独立的锁!!!'],
|
||
['advanced_count', 0, '进阶次数'],
|
||
['offer_reward_state', 0, '是否悬赏中'],
|
||
['tags', '', '1:Gen状态'],
|
||
['!avatarInfo', [AvatarInfo()], '装饰信息'],
|
||
['ability', Ability(), '属性'],
|
||
['lucky', 0, '幸运值'],
|
||
['wealth', 0, '财富值'],
|
||
['seal_type', 0, '0:未封存 1:已封存'],
|
||
['unseal_time', 0, '解封时间'],
|
||
['valid_time', 0, '最大有效时间'],
|
||
['valid_lefttime', 0, '剩余有效时间'],
|
||
['is_old', 0, '0:展示红点 1:不用展示'],
|
||
]
|
||
|
||
class LevelingHero(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['info', Hero(), '英雄信息'],
|
||
['countdown', 0, '倒计时'],
|
||
]
|
||
|
||
class QualityingHero(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['trans_id', 0, 'transId'],
|
||
['state', 0, '0升阶中,1可领取'],
|
||
['heroInfo', Hero(), '升阶英雄信息'],
|
||
['costHeroInfo', Hero(), '材料英雄信息'],
|
||
]
|
||
|
||
class QualityingGun(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['trans_id', 0, 'transId'],
|
||
['state', 0, '0升阶中,1可领取'],
|
||
['gunInfo', Gun(), '升阶枪械信息'],
|
||
['costGunInfo', Gun(), '材料枪械信息'],
|
||
]
|
||
|
||
class HeroSkin(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['skin_id', 0, '英雄皮肤id'],
|
||
['is_have', 0, '是否拥有 1:拥有 0:未拥有'],
|
||
['use_state', 0, '选中状态 1:选中 0:未选中'],
|
||
]
|
||
|
||
class Item(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_uniid', 0, '道具唯一id'],
|
||
['item_id', 0, '道具id'],
|
||
['item_num', 0, '道具数量'],
|
||
['is_old', 0, '0:展示红点 1:不用展示'],
|
||
['!attr', [Attr()], '属性'],
|
||
]
|
||
|
||
class AwardItem(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '道具id'],
|
||
['item_num', 0, '道具数量'],
|
||
]
|
||
|
||
class Award(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['!items', [AwardItem()], '奖励物品列表'],
|
||
['!heros', [Hero()], '英雄信息']
|
||
]
|
||
|
||
class PropertyChg(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['user_info', UserInfo(), '用户信息变更(用来更新本地客户端字段(有则更新无则不变))'],
|
||
['!container_chg', [''], '容器类数据变更(bag、hero、heroSkin、gunSkin, gun,chip,fragment)']
|
||
]
|
||
|
||
class CostInfoItem(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '购买需要消耗的道具id'],
|
||
['item_num', 0, '购买需要消耗的道具数量'],
|
||
['discount', 0, '折扣百分比(0-100)'],
|
||
]
|
||
|
||
class CostInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['!cost_group', [CostInfoItem()], '一组扣费项目,(金币、钻石视为道具,可能有多种价格)'],
|
||
]
|
||
|
||
class PriceInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['!cost_list', [CostInfo()], '扣费方式列表'],
|
||
['discount_begin_time', 0, '折扣开始时间(utc时间)'],
|
||
['discount_end_time', 0, '折扣结束时间(utc时间)'],
|
||
]
|
||
|
||
class DiscountInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '道具id'],
|
||
['gold_discount', 0, '金币折扣百分比(0-100)'],
|
||
['diamond_discount', 0, '钻石折扣百分比(0-100)'],
|
||
]
|
||
|
||
class ItemPriceInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '道具id'],
|
||
['price_info', PriceInfo(), '价格信息'],
|
||
]
|
||
|
||
class Ability(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['hp', 0, '血量'],
|
||
['attack', 0, '攻击'],
|
||
['defence', 0, '防御'],
|
||
['block', 0, '格挡'],
|
||
['critical', 0, '暴击'],
|
||
]
|
||
|
||
class GoodsInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '商品id'],
|
||
['item_num', 0, '堆叠个数,例如:砖石数量'],
|
||
['max_amount', 0, '最高购买数量,单次购买'],
|
||
['shop_id', 0, '所属商店id'],
|
||
['shopstage', 0, '商店层级'],
|
||
['tag', 0, '标签'],
|
||
['recommend', 0, '推荐页位置'],
|
||
['token_type', '', '代币类型 参见shopGoods表格'],
|
||
['price', '', '价格 多种价格设置使用 | 隔开'],
|
||
['discount', '', '折扣 参见shopGoods表格'],
|
||
['limit_type', 0, '限购类型'],
|
||
['limit_num', 0, '限购数量'],
|
||
['buy_cond', '', '购买条件'],
|
||
['buy_gift', '', '购买次数赠品'],
|
||
['normal_gift', '', '普通狗赠品'],
|
||
['free_type', 0, '免费类型 0:不免费 1:日刷新'],
|
||
['shop_icon', 0, '商品图标'],
|
||
['gg_product_id', 0, '谷歌商品id'],
|
||
['gg_product_id', 0, 'ios商品id'],
|
||
['bonus', 0, 'bonus'],
|
||
['bonus_num', 0, 'bonus_num'],
|
||
]
|
||
|
||
class Goods(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['goods_id', 0, '商品唯一id'],
|
||
['goods_meta', GoodsInfo(), '商品元信息(配置表数据)'],
|
||
['bought_times', 0, '已购买次数'],
|
||
['free_num', 0, '免费次数'],
|
||
]
|
||
|
||
class NewGoods(object):
|
||
def __init__(self):
|
||
self.fields = [
|
||
['id', 0, '商品唯一id'],
|
||
['goods_id', 0, '商品id'],
|
||
['goods_num', 0, '堆叠个数,例如:砖石数量'],
|
||
['max_amount', 0, '最高购买数量,单次购买'],
|
||
['shop_id', 0, '所属商店id'],
|
||
['shopstage', 0, '商店层级'],
|
||
['tag', 0, '标签'],
|
||
['recommend', 0, '推荐页位置'],
|
||
['token_type', '', '代币类型 参见shopGoods表格'],
|
||
['price', '', '价格 多种价格设置使用 | 隔开'],
|
||
['discount', '', '折扣 参见shopGoods表格'],
|
||
['limit_type', 0, '限购类型'],
|
||
['limit_num', 0, '限购数量'],
|
||
['buy_cond', '', '购买条件'],
|
||
['buy_gift', '', '购买次数赠品'],
|
||
['normal_gift', '', '普通狗赠品'],
|
||
['bought_times', 0, '已购买次数'],
|
||
['free_type', 0, '免费类型 0:不免费 1:日刷新'],
|
||
['free_num', 0, '免费次数'],
|
||
['pending', 0, '购买中...'],
|
||
]
|
||
|
||
class Shop(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['shop_id', 0, '商店id'],
|
||
['!goods_list1', [Goods()], '商品列表1'],
|
||
['!goods_list2', [Goods()], '商品列表2'],
|
||
]
|
||
|
||
class PayMethod(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['id', 0, '支付方式id'],
|
||
['name', '', '支付方式名称'],
|
||
['icon', '', '支付方式图标'],
|
||
['shop_token_type', 0, '代币类型'],
|
||
['pay_way_code', 0, '支付方式code'],
|
||
]
|
||
|
||
class DailySelectionGoods(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['id', 0, '商品表唯一id'],
|
||
['slot', "", '商品槽位'],
|
||
['goods_id', 0, '商品id'],
|
||
['goods_num', 0, '商品堆叠数量'],
|
||
['shop_icon', "", '商品图标'],
|
||
['weight', 0, '权重'],
|
||
['token_type', '', '代币类型(4|0)'],
|
||
['discount', '', '折扣(95|80)'],
|
||
['price', '', '价格(100|100000)'],
|
||
]
|
||
|
||
class Mission(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['mission_id', 0, '任务id'],
|
||
['last_game', 0, '上局游戏完成的进度 -1:不用在战斗结束展示'],
|
||
['current', 0, '任务进度-当前'],
|
||
['target', 0, '任务进度-目标'],
|
||
['state', 0, '任务状态 0:任务已完成-可领取奖励 1:可接任务(send) 2:任务进行中-未完成(不可领取)'],
|
||
['show_progress', 0, '是否显示任务进度'],
|
||
['objects!',
|
||
[
|
||
['type', '', '类型 0:武器 1:英雄'],
|
||
['id', '', 'id'],
|
||
],
|
||
'悬赏任务对象列表'],
|
||
['lefttime', 0, '剩余时间(悬赏任务)'],
|
||
['ceg_num', 0, '奖励ceg数量(悬赏任务)'],
|
||
]
|
||
|
||
class SeasonCardGiftPackage(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['package_id', 0, '礼包id'],
|
||
['item_id', 0, '礼包道具表id(目前客户端没用到先不用管)'],
|
||
['state', 0, '0:未购买 1:已购买'],
|
||
['price_info', PriceInfo(), '价格信息'],
|
||
]
|
||
|
||
class SeasonCard(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['season_id', 0, '赛季id(客户端显示为Sxxx)'],
|
||
['season_begin_time', 0, '赛季开始时间(utc时间)'],
|
||
['season_end_time', 0, '赛季结束时间(utc时间)'],
|
||
['card_lv', 0, '手册等级'],
|
||
['card_exp', 0, '手册经验'],
|
||
['card_max_exp', 0, '手册经验上限'],
|
||
['buy_level_price', 0, '等级价格(钻石)'],
|
||
['!gift_packages', [SeasonCardGiftPackage()], '礼包列表'],
|
||
['!received_level_rewards1', [0], '等级解锁的奖励已领取等级列表(普通手册)'],
|
||
['!received_level_rewards2', [0], '等级解锁的奖励已领取等级列表(精英)'],
|
||
]
|
||
|
||
class SeasonMission(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['state', 0, '任务状态 0:可领取 1:已领取 2:未完成(不可领取)'],
|
||
['current', 0, '当前匹配场次'],
|
||
['target', 0, '目标匹配场次'],
|
||
['target_rank', 0, '目标段位'],
|
||
]
|
||
|
||
class Season(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['season', 0, '赛季'],
|
||
['season_name', 0, '赛季name'],
|
||
['rank', 0, '段位id'],
|
||
['rank_name', 0, '段位名称'],
|
||
['score', 0, '排位分'],
|
||
['next_score', 0, '下阶段排位分'],
|
||
['season_end_time', 0, '赛季结束时间'],
|
||
['season_reward',SeasonReward(), '赛季该获得的奖励'],
|
||
['current_point', 0, '当前赛季积分'],
|
||
['total_point', 0, '所有赛季总积分'],
|
||
]
|
||
|
||
class SeasonReward(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '奖励的item id'],
|
||
['item_num', 0, '奖励的数量'],
|
||
|
||
]
|
||
|
||
class SeasonRank(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['ranking', 0, '排名'],
|
||
['name', 0, '用户名称'],
|
||
['head_id', 0, '头像'],
|
||
['head_frame', 0, '头像框'],
|
||
['rank', 0, '段位'],
|
||
['score', 0, '积分'],
|
||
['point', 0, 'SV积分'],
|
||
]
|
||
|
||
|
||
class SeasonData(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['season_id', 0, '赛季id'],
|
||
['game_times', 0, '排位总场次'],
|
||
['win_times', 0, '吃鸡场次'],
|
||
['top_ten_times', 0, '挤进前十场次'],
|
||
['kill_killed', 0, '淘汰/被淘汰'],
|
||
]
|
||
|
||
class SeasonHero(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['season_id', 0, '赛季id'],
|
||
['hero', 0, '英雄 id'],
|
||
['weapon', 0, '枪械id 例:id 或 id1|id2 '],
|
||
['use_times', 0, '使用总场次'],
|
||
['win_times', 0, '吃鸡常常'],
|
||
['top_ten_times', 0, '前十场次'],
|
||
['win_rate', 0, '获胜率'],
|
||
['top_ten_rate', 0, '前十率'],
|
||
]
|
||
|
||
class RankingItem(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['ranked', 0, '排名'],
|
||
['user', UserSimple(), '用户信息'],
|
||
['value', 0, '击杀数/吃鸡数/战斗场数/mvp数/前三名数'],
|
||
]
|
||
|
||
class RankingList(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['type', 0, '排行榜类型 1:积分榜'],
|
||
['!ranking_list', [RankingItem()], '排行榜'],
|
||
['my_ranked', RankingItem(), '我的排名(如果ranked<1则表示自己未上榜)'],
|
||
]
|
||
class GuildEx(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['guild_id', 0, '工会id'],
|
||
['guild_name', '', '工会名称'],
|
||
['guild_badge', '', '工会头像'],
|
||
['owner_id', '', '会长id'],
|
||
['owner_name', '', '会长名称'],
|
||
]
|
||
|
||
class RankingItemEx(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['ranked', 0, '排名'],
|
||
['user', UserSimple(), '用户信息(type为4是空数组)'],
|
||
['guild', GuildEx(), '工会信息(无工会为空数组)'],
|
||
['value', 0, '击杀数/吃鸡数/战斗场数/工会总Test_CEG收益'],
|
||
['rewardNum', 0, '奖励'],
|
||
['extraRewardNum', 0, '额外奖励'],
|
||
]
|
||
|
||
class RankingListEx(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['type', 0, '排行榜类型 1:击杀榜 2:吃鸡榜 3:场次榜 4:工会榜'],
|
||
['pages', 0, '总页数 0表示无需分页'],
|
||
['!rows', [RankingItemEx()], '排行榜'],
|
||
['my_ranked', RankingItemEx(), '我的排名(如果ranked<1则表示自己未上榜)'],
|
||
]
|
||
|
||
class RedDot(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['type', 0, '红点类型'],
|
||
['state', 0, '红点状态 0:无 1:有'],
|
||
]
|
||
|
||
class TeamMember(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', '', '账号id'],
|
||
['address', '', 'openid'],
|
||
['name', '', '用户名字'],
|
||
['hero_uniId', 0, 'hero uniid'],
|
||
['hero_id', 0, 'hero itemId'],
|
||
['hero_skin', 0, '英雄皮肤 itemId'],
|
||
['head_id', 0, '头像id'],
|
||
['level', 0, '等级'],
|
||
['exp', 0, '经验'],
|
||
['rank', 0, '段位'],
|
||
['pve_instance_id', 0, 'pve难度id'],
|
||
['parachute', 0, '降落伞id'],
|
||
['presetInfo', HeroPreset(), '备战信息'],
|
||
['game_times', 0, '游戏次数'],
|
||
['win_times', 0, '胜利次数'],
|
||
['kills', 0, '击杀数'],
|
||
['is_leader', 0, '是否队长'],
|
||
['is_ready', 0, '是否准备'],
|
||
['permission', 0, '邀请许可'],
|
||
['createtime', 0, '账号创建时间'],
|
||
]
|
||
|
||
class TeamInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['map_id', '', '地图id'],
|
||
['node_id', '', 'node_id'],
|
||
['zid', '', 'zid'],
|
||
['team_uuid', '', '队伍唯一id'],
|
||
['payload', '', '透传给CMJoin'],
|
||
['match_mode', 0, '0: 匹配赛模式 1: 排位赛 3: pve'],
|
||
['pve_instance_id', 0, 'pve副本id'],
|
||
['slot_num', 0, '槽位数 >=1 && <= 4'],
|
||
['state', 0, '0:未开始 1:准备就绪(这时客户端进入长链接走组队逻辑)'],
|
||
['custom_room', CustomRoom(), '自定义房间'],
|
||
['!member_list', [TeamMember()], '队伍成员列表(包含自己)'],
|
||
]
|
||
|
||
class CustomRoom(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['custom_room_id', '', '自定义房间的ID'],
|
||
['custom_room_state', '', '自定义房间的状态'],
|
||
['custom_room_pwd', '', '自定义房间的密码'],
|
||
]
|
||
|
||
class BuyableBox(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['box_id', '', '箱子id'],
|
||
]
|
||
|
||
class PreSaleInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['batch_id', 0, '批次id(目前客户端没用到先不用管)'],
|
||
['countdown', 0, '预售倒计时'],
|
||
['sold_num', 0, '已售数'],
|
||
['total_num', 0, '总数'],
|
||
['state', 0, '0:预售未开始(tilte文字) 1:预售准备开始(有倒计时) 2:预售开始(title文字) 3:预售结束(title)'],
|
||
['title', '', '预售文字标题描述 '],
|
||
['hint', '', '预售文字描述'],
|
||
['buyable_list!', [BuyableBox()], '可购买商品列表'],
|
||
]
|
||
|
||
class PreSaleBox(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['box_id', '', '箱子id'],
|
||
['item_id', 0, '道具id(根据这个读取箱子的图片)'],
|
||
['name', '', '名字'],
|
||
['job', '', '职业'],
|
||
['avatar_url', '', '头像完整url'],
|
||
['!currency_list', [SystemCurrency()], '货币列表,(目前有且只有一个)'],
|
||
]
|
||
|
||
class NftHeroDetail(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', '英雄名'],
|
||
['job', '', '职业'],
|
||
['level', 0, '等级'],
|
||
['quality', 0, '星级'],
|
||
['hp', 0, '血量'],
|
||
['speed', 0, '速度'],
|
||
['atk', 0, '攻击'],
|
||
['def', 0, '防御'],
|
||
['advanced_count', 0, '升级次数'],
|
||
['lukcy', 0, '幸运'],
|
||
['success_rate', 0, '成功率'],
|
||
['!attr', [AttrDesc()], '属性'],
|
||
]
|
||
|
||
class NftGunDetail(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', '枪支名'],
|
||
['level', 0, '等级'],
|
||
['quality', 0, '星级'],
|
||
['lukcy', 0, '幸运'],
|
||
['clip_volume', 0, '弹夹数'],
|
||
['reload_time', 0, '装弹时间'],
|
||
['fire_rate', 0, '射击速度'],
|
||
['atk', 0, '攻击'],
|
||
['bullet_speed', 0, '子弹速度'],
|
||
['range', 0, '射程'],
|
||
['!attr', [AttrDesc()], '属性'],
|
||
]
|
||
|
||
class NftChipDetail(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', '芯片名'],
|
||
['!attr', [AttrDesc()], '属性'],
|
||
]
|
||
|
||
class TransactionRecrod(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['from', '', '来源钱包'],
|
||
['date', 0, '交易日期(utc时间)'],
|
||
]
|
||
|
||
class NftDetail(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['token_id', '', 'token id'],
|
||
['owner_address', '', '所有者地址'],
|
||
['owner_name', '', '所有名字'],
|
||
['item_id', 0, '道具id'],
|
||
['type', '', 'nft类型 1:英雄 2:枪支 3:芯片 4:盲盒'],
|
||
['image', '', 'nft图片地址'],
|
||
['state', 0, '0:正常状态 1:出售中 2:出租中'],
|
||
['lock_time', 0, '锁定时间(单位秒)'],
|
||
['hide_attr', 0, '是否隐藏属性'],
|
||
['is_genesis', 0, '是否创世nft'],
|
||
['info', Union([
|
||
[NftHeroDetail(), '英雄'],
|
||
[NftGunDetail(), '枪支'],
|
||
[NftChipDetail(), '芯片'],
|
||
]), 'nft详细信息'],
|
||
['!transaction_recrod', [TransactionRecrod()], '交易记录'],
|
||
['!currency_list', [SystemCurrency()], '货币列表,(目前有且只有一个)'],
|
||
['mint_time', 0, '铸造时间'],
|
||
]
|
||
|
||
class NftView(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', 'nft名字'],
|
||
['description', '', 'nft描述'],
|
||
['image', '', 'nft图片'],
|
||
]
|
||
|
||
class Phase3Box(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['box_id', '', '箱子id'],
|
||
]
|
||
|
||
class ChipAttr(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['attr_id', 0, '属性id'],
|
||
['val', 0, '综合属性值'],
|
||
]
|
||
|
||
class Chip(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['idx', 0, '主键id'],
|
||
['token_id', '', 'token id'],
|
||
['account_id', '', '账号id'],
|
||
['item_id', 0, '道具id'],
|
||
['item_num', 0, '道具数量'],
|
||
['chip_grade', 0, '芯片等级'],
|
||
['chip_type', 0, '芯片类型:1 攻击;2 防御;3 辅助'],
|
||
['state', 0, '0:已购买 1:免费(GIFT标签)'],
|
||
['supper_state', 0, '是否锁定:0 正常;1 锁住 ---弃用字段'],
|
||
['inlay_state', 0, '镶嵌状态:0 未镶嵌;1 镶嵌了 ---弃用字段'],
|
||
['!rand_attr', [ChipAttr()], '属性'],
|
||
['tags', '', '1:Gen状态'],
|
||
['quality', '', '品阶'],
|
||
['is_old', '', '0:展示红点 1:不用展示'],
|
||
]
|
||
|
||
class ChipPro(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['idx', 0, '主键id'],
|
||
['token_id', '', 'token id'],
|
||
['account_id', '', '账号id'],
|
||
['item_id', 0, '道具id'],
|
||
['item_num', 0, '道具数量'],
|
||
['chip_grade', 0, '芯片等级'],
|
||
['chip_type', 0, '芯片类型:1 攻击;2 防御;3 辅助'],
|
||
['state', 0, '状态:0 免费;1 常规'],
|
||
['supper_state', 0, '是否锁定:0 正常;1 锁住 ---弃用字段'],
|
||
['inlay_state', 0, '镶嵌状态:0 未镶嵌;1 镶嵌了 ---弃用字段'],
|
||
['!rand_attr', [ChipAttr()], '属性'],
|
||
['!rand_attr_after', [ChipAttr()], '芯片升级后的属性'],
|
||
['cost',[],'升级所需gold消耗']
|
||
]
|
||
|
||
class BattleMember(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', '', '账号id'],
|
||
['session_id', '', '会话id'],
|
||
['hero_uniid', '', '英雄唯一id'],
|
||
['weapon_uniid1', '', '武器1唯一id'],
|
||
['weapon_uniid2', '', '武器2唯一id'],
|
||
]
|
||
|
||
class Cost(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['CEG', '', '金币'],
|
||
['CEC', '', '钻石'],
|
||
['success_rate', '', '成功率(进阶有,升级没有)'],
|
||
]
|
||
|
||
class Fragment(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['idx', 0, '主键id'],
|
||
['token_id', '', 'token id'],
|
||
['item_id', '', '道具id'],
|
||
['balance', '', '数量'],
|
||
['createtime', 0, '创建时间'],
|
||
['modifytime', 0, '修改时间'],
|
||
]
|
||
|
||
class HisBattle(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['battle_uuid', '', '本次比赛唯一id'],
|
||
['victory', 0, '是否胜利'],
|
||
['room_mode', 0, '0:吃鸡模式 1:歼灭模式 2:生存模式'],
|
||
['match_mode', 0, '比赛模式 1:匹配赛 2:排位赛 3: pve'],
|
||
['team_mode', 0, '组队模式 1:单人 2::多人'],
|
||
['result', '', '比赛结果 当pve模式时: 1:通关 2:通关失败 其他模式:排名'],
|
||
['kills', '', '击杀数'],
|
||
['hero_id', '', '英雄id'],
|
||
['weapon1_id', '', '武器1 id'],
|
||
['weapon2_id', '', '武器2 id'],
|
||
['level_class', 0, '段位'],
|
||
['score', 0, '段位-积分'],
|
||
['score_change', 0, '段位-积分变更'],
|
||
['pve_score', 0, 'pve积分 pve模式'],
|
||
['map_id', 0, '地图id'],
|
||
['pve_instance_id', 0, '副本id'],
|
||
['end_time', 0, '战斗时间 utc时间 客户端自己处理时区问题'],
|
||
]
|
||
|
||
class BattleReport(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['battle_uuid', '', '本次比赛唯一id'],
|
||
['match_mode', 0, '比赛模式 1:匹配赛 2:排位赛 3: pve'],
|
||
['team_mode', 0, '组队模式 1:单人 2::多人'],
|
||
]
|
||
|
||
class BattleCegReward(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['hero_uniid', '', '唯一id'],
|
||
['id', '', 'id'],
|
||
['gold_uplimit', 0, '当前ceg数量'],
|
||
['obtain_gold', 0, '实际获得ceg数量'],
|
||
['curr_gold', 0, 'ceg数量上限'],
|
||
]
|
||
|
||
class BattleItemReward(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '道具id'],
|
||
['item_num', 0, '道具数量'],
|
||
]
|
||
|
||
|
||
class BattleRankScore(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['old_rank', 0, '战斗前段位'],
|
||
['old_score', 0, '战斗前排位分'],
|
||
['new_rank', 0, '战斗后段位'],
|
||
['new_score', 0, '战斗后排位分'],
|
||
]
|
||
|
||
class BattleHistory(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['idx', 0, '唯一id'],
|
||
['battle_uniid', 0, '战斗记录唯一id'],
|
||
['account_id', '', '用户 account_id'],
|
||
['room_mode', 0, '0: pvp 1: pve'],
|
||
['pvp_mode', 0, '0: 匹配 1: 排位'],
|
||
['team_mode',0, '0:单人 1:组队'],
|
||
['battle_rank', 0, '战斗排名'],
|
||
['team_rank',0, '团队排名'],
|
||
['is_win', 0, 'pve冒险是否胜利'],
|
||
['kills',0, '击杀数'],
|
||
['hero_id',0, '英雄 id'],
|
||
['weapon1', 0, '枪械1 id'],
|
||
['weapon2', 0, '枪械2 id'],
|
||
['damage', 0, '伤害'],
|
||
['battle_end_time', 0, '战斗结束时间'],
|
||
['current_level_class', '', '当前用户段位'],
|
||
['current_level_class_score', 0, '当前用户排位分'],
|
||
['level_class_score_chg', 0, '排位分改变'],
|
||
['pve_rank_score', 0, 'pve冒险积分'],
|
||
['pve_kill_boss', 0, 'pve冒险是否击杀BOSS'],
|
||
['battle_foreign_key', 0, '结算外键'],
|
||
['pve_instance_id', 0, 'pve副本难度id'],
|
||
['pve_instance_mode', 0, 'pve副本mode'],
|
||
]
|
||
|
||
class NftTransaction(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['trans_id', 0, 'trans_id'],
|
||
['item_id', 0, '道具id'],
|
||
['action', 0, '动作'],
|
||
['time', 0, '时间'],
|
||
['status', 0, '1:已完成 2:等待中'],
|
||
]
|
||
|
||
class EventRankingList(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['id', 0, 'id'],
|
||
['wave', 0, '活动轮数'],
|
||
['themeType', 0, '1 击杀榜,2 吃鸡榜,3 场次榜,4 工会榜'],
|
||
['themeName', '', '活动名称'],
|
||
['startTime', '', '开始时间'],
|
||
['endTime', '', '结束时间'],
|
||
['status', 0, '0:已结束 1:进行中 2:等待中'],
|
||
]
|
||
|
||
class Currency(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', '', 'account_id'],
|
||
['net_id', 0, '链id'],
|
||
['address', '', '货币地址'],
|
||
['symbol', '', '符号'],
|
||
['precision', 0, '精度'],
|
||
['type', 0, '1:ERC721 2:ERC1155 3:ERC20'],
|
||
]
|
||
|
||
class Emoji(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, 'item_id'],
|
||
['state', 0, '1:使用 0:未使用'],
|
||
]
|
||
|
||
class ChipPage(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['idx', 0, 'idx'],
|
||
['hero_uniid', 0, '英雄唯一id'],
|
||
['!data', [ChipPageSlot()], '卡槽信息'],
|
||
['!attr', [Attr()], '属性信息'],
|
||
]
|
||
|
||
class ChipPageSlot(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['slot_id', 0, '卡槽id'],
|
||
['state', 0, '0:未解锁 1:已解锁'],
|
||
['chip_id', '', '芯片唯一id'],
|
||
['item_id', '', '芯片itemId'],
|
||
]
|
||
|
||
class HeroPreset(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['skill_id', 0, '技能item id'],
|
||
['weapon_uid1', 0, '武器1唯一id'],
|
||
['weapon_uid2', 0, '武器2唯一id'],
|
||
['gun_id1', 0, '武器1 item id'],
|
||
['gun_id2', 0, '武器2 item id'],
|
||
['chip_page', 0, '芯片页id'],
|
||
]
|
||
|
||
class TeamReportMember(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', '', '账号id'],
|
||
['name', '', '名字'],
|
||
['head', 0, '头像id'],
|
||
['head_frame', 0, '头像框'],
|
||
['sex', 0, '性别'],
|
||
['dead', 0, '是否已死亡'],
|
||
['dead_times', 0, '死亡次数'],
|
||
['is_mvp', 0, '是否mvp'],
|
||
|
||
['hero_id', 0, '英雄id'],
|
||
['hero_uniid', 0, '英雄uniid'],
|
||
['hero_quality', 0, '英雄quality'],
|
||
['game_time', 0, '游戏截止时间(utc时间)'],
|
||
['game_duration', 0, '游戏时长(单位秒)'],
|
||
['alive_time', 0, '存活时间'],
|
||
['ranked', 0, '排名'],
|
||
['kills', 0, '击杀数'],
|
||
['damage_out', 0, '伤害输出'],
|
||
['weapon_uuid1', '', 'weapon_uuid1'],
|
||
['weapon_uuid2', '', 'weapon_uuid2'],
|
||
['rescue_teammate_times', 0, '救起队友次数'],
|
||
['diving_times', 0, '潜水次数'],
|
||
['damage_in', 0, '伤害输入'],
|
||
['recover_hp', 0, '治疗量'],
|
||
['open_airdrop_times', 0, '开启空投补给次数'],
|
||
['use_medicine_times', 0, '使用药物次数'],
|
||
['destory_car_times', 0, '破坏载具次数'],
|
||
['use_camouflage_times', 0, '使用伪装物'],
|
||
['use_skill_times', 0, '使用技能次数'],
|
||
['ride_car_move_distance', 0, '驾驶或乘坐载具累计移动X米'],
|
||
['ride_car_kills', 0, '驾驶或乘坐载具累计击杀X个敌人'],
|
||
['max_hero_skill_lv', 0, '单局内英雄技能升级到X级'],
|
||
['weapons_type', '', '武器信息 weapon_id:kills:damage_out:obtain_count|'],
|
||
['weapons_slot', '', '武器信息 weapon_id:use_times|'],
|
||
['heros', '', '武器信息 hero_id:skill_lv:weapon_lv|'],
|
||
|
||
['is_run_away', 0, '是否逃跑(在没结算前主动退出也算逃跑还)'],
|
||
['skin_id', 0, '皮肤id'],
|
||
['move_distance', 0, '行走距离'],
|
||
['full_level_idx', 0, '第几个满级索引(0:未满级 1:第一个 2:第二个等等)'],
|
||
['hero_lv', 0, '游戏内英雄等级'],
|
||
|
||
['pvp_kill', 0, 'pvp击杀敌人数'],
|
||
['pvp_damage', 0, 'pvp伤害总量'],
|
||
['pvp_assist', 0, 'pvp助攻'],
|
||
['pvp_survia_time', 0, 'pvp存活时间(毫秒)'],
|
||
['pvp_recover', 0, 'pvp治疗总量'],
|
||
['pvp_rescue', 0, 'pvp救援'],
|
||
['pvp_personal_rank', 0, 'pvp个人排名'],
|
||
|
||
['pve_order', 0, 'pve波次'],
|
||
['pve_score', 0, 'pve分数'],
|
||
['pve_star', 0, 'pve星'],
|
||
['pve_damage', 0, 'pve伤害总量'],
|
||
['pve_revive', 0, 'pve复活次数'],
|
||
['pve_survia_time', 0, 'pve存活时间(毫秒)'],
|
||
['pve_wave', 0, 'pve波次'],
|
||
['pve_max_wave', 0, 'pve最大波次'],
|
||
['pve_boss_killed', 0, 'pve副本boss是否被击杀'],
|
||
['pve_rank_score', 0, 'pve积分'],
|
||
]
|
||
|
||
class TeamReportTeam(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['team_id', 0, '队伍id'],
|
||
['!members', [['account_id', '', '账号id']], '枪械属性'],
|
||
]
|
||
|
||
class BattleSettlement(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['version', 0, '版本'],
|
||
['battle_uuid', 0, '本次战斗唯一id'],
|
||
['team_id', 0, '队伍id'],
|
||
['room_uuid', 0, '房间唯一id'],
|
||
['room_mode', 0, '0:pvp 1: pve'],
|
||
['team_mode', 0, '0:个人 1:组队(保留)'],
|
||
['game_over', 0, '游戏是否结束'],
|
||
['victory', 0, '是否胜利(pvp:吃鸡 pve:是否通关)'],
|
||
['watchable', 0, '是否可观战,小胡那的接口写死0(看历史不可观战)'],
|
||
['map_id', 0, '地图id'],
|
||
['settlement_status', 0, '0: 结算中(读取个人结算数据) 1:已结算(请求小胡接口)'],
|
||
['pvp_settlement_type', 0, '結算類型0:個人 1:組隊(保留)'],
|
||
['pvp_settlement_color', 0, '0:灰 1:黃'],
|
||
['pvp_team_rank', 0, '队伍排名'],
|
||
['pvp_total_human_num', 0, '房间总人数'],
|
||
['pvp_alive_human_num', 0, '房间剩余存活人数'],
|
||
['pvp_total_team_num', 0, '本次战斗队伍总数'],
|
||
['pvp_match_mode', 0, '比赛模式 0: pvp 1:排位赛'],
|
||
['pve_settlement_color', 0, '0:灰 1:黃'],
|
||
['pve_wave', 0, 'pve波次'],
|
||
['pve_max_wave', 0, 'pve总波次'],
|
||
['pve_instance_id', 0, 'pve副本id'],
|
||
['!members', [BattleSettlementMembersInfo()], '队伍成员信息'],
|
||
]
|
||
|
||
class BattleSettlementMembersInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', 0, '账号id(真人才有account_id)'],
|
||
['name', '', '玩家名字'],
|
||
['head', 0, '头像id'],
|
||
['head_frame', 0, '头像框'],
|
||
['sex', 0, '性别'],
|
||
['hero_uniid', 0, '英雄uniid'],
|
||
['hero_id', 0, '英雄itemId'],
|
||
['dead', 0, '是否已死亡'],
|
||
['dead_times', 0, '死亡次数'],
|
||
['is_mvp', 0, '是否mvp'],
|
||
['old_rank', 0, '老段位'],
|
||
['new_rank', 0, '新段位'],
|
||
['old_score', 0, '老段位积分'],
|
||
['new_score', 0, '新段位积分'],
|
||
['pvp_kill', 0, 'pvp击杀敌人数'],
|
||
['pvp_damage', 0, 'pvp伤害总量'],
|
||
['pvp_assist', 0, 'pvp助攻'],
|
||
['pvp_survia_time', 0, 'pvp存活时间(毫秒)'],
|
||
['pvp_recover', 0, 'pvp治疗总量'],
|
||
['pvp_rescue', 0, 'pvp救援'],
|
||
['pvp_personal_rank', 0, '个人排名'],
|
||
['pve_order', 0, 'pve波次'],
|
||
['pve_score', 0, 'pve分数'],
|
||
['pve_star', 0, 'pve星'],
|
||
['pve_damage', 0, 'pve伤害总量'],
|
||
['pve_revive', 0, 'pve复活次数'],
|
||
['pve_survia_time', 0, 'pvp存活时间(毫秒)'],
|
||
['pve_wave', 0, 'pve波次'],
|
||
['pve_max_wave', 0, 'pve总波次'],
|
||
['pve_boss_killed', 0, 'pve副本boos是否被击杀'],
|
||
['battle_score', 0, '表现分'],
|
||
['!reward', [BattleItemReward()], 'reward'],
|
||
]
|
||
|
||
|
||
|
||
class Reward(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['id', 0, 'id'],
|
||
['group', '', 'group'],
|
||
['goods_id', 0, 'goods_id'],
|
||
['goods_num', 0, '堆叠数量'],
|
||
['shop_icon', 0, '商店图标'],
|
||
]
|
||
|
||
|
||
class Sign(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['sign_id', 0, '签到id'],
|
||
['days', 0, '累计天数'],
|
||
['condition', 0, '签到条件(天数)'],
|
||
['is_receive', 0, '领取状态 0:可领取 1:已领取 -1:未达到'],
|
||
['!award', [AwardItem()], '奖励信息'],
|
||
]
|
||
|
||
class ShopTrans(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['trans_id', '', 'trans_id'],
|
||
['!params', [''], 'params'],
|
||
['item_id', 0, 'item_id'],
|
||
['item_num', 0, 'item_num'],
|
||
]
|
||
|
||
class BlindBoxResult(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, 'item_id'],
|
||
['item_num', 0, 'item_num'],
|
||
]
|
||
|
||
class InappPurchaseRecord(object):
|
||
def __init__(self):
|
||
self.fields = [
|
||
['productId', '', '商品id'],
|
||
['gameOrderId', '', '游戏订单id'],
|
||
['orderId', '', 'google订单id'],
|
||
['status', 0, '订单状态'],
|
||
]
|
||
|
||
class TransactionRecordNew(object):
|
||
def __init__(self):
|
||
self.fields = [
|
||
['idx', '', 'idx'],
|
||
['createtime', 0, '交易成功时间'],
|
||
['order_id', 0, 'market订单id'],
|
||
['o_link', '', '合约订单id'],
|
||
['seller', '', '卖家'],
|
||
['buyer', '', '买家'],
|
||
['tokenid', '', 'tokenid'],
|
||
['amount', 0, '商品数量'],
|
||
['name', '', '商品名称'],
|
||
['type', 0, '商品类型'],
|
||
]
|
||
|
||
class CurrencyType(object):
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', '货币名称'],
|
||
['address', '', '货币地址'],
|
||
]
|
||
|
||
class MarketGoods(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['order_id', '', '订单id'],
|
||
['token_id', '', 'token_id'],
|
||
['nft_token', '', 'nft_token'],
|
||
['amount', '', 'amount'],
|
||
['seller', '', '售卖方'],
|
||
['currency', '', '货币'],
|
||
['price', '', '出售价格'],
|
||
['selltime', 0, '上架时间'],
|
||
['updatetime', 0, '修改时间(更新价格等)'],
|
||
['details', NftDetail(), 'nft列表'],
|
||
]
|
||
|
||
class MallGoods(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['goods_uuid', '', '商品唯一id'],
|
||
['seller', '', '出售方账号'],
|
||
['seller_address', '', '出售方钱包地址'],
|
||
['item_id', '', '商品道具id'],
|
||
['item_num', '', '道具数量'],
|
||
['currency', '', "选用币种 目前只支持CEG USDC USDT"],
|
||
['price', '', '出售价格'],
|
||
['selltime', 0, '上架时间'],
|
||
['updatetime', 0, '修改时间(更新价格等)'],
|
||
['cancel_countdown', 0, '可下架时间倒计时:-1不可下架'],
|
||
['modify_countdown', 0, '可修改价格倒计时:-1不可修改价格'],
|
||
]
|
||
|
||
class InGameMallGoods(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['seller', '', '出售方账号'],
|
||
['seller_address', '', '出售方钱包地址'],
|
||
['goods_uniid', '', '商品唯一id'],
|
||
['item_id', '', '商品道具id'],
|
||
['item_num', '', '道具数量'],
|
||
['price', '', '出售价格'],
|
||
['status', '', '0:出售中 1:已购买 2:已取消'],
|
||
['createtime', 0, '上架时间'],
|
||
['last_modify_price_time', 0, '修改时间(更新价格等)'],
|
||
]
|
||
|
||
class ComputingPowerCurr(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
# ['current_state', '', '周期状态 -1:算力周期未开始 0:正常周期 1:等待周期 2:维护周期'],
|
||
['period_begin', '', '本期开始时间(0 不显示)'],
|
||
['period_end', '', '本期结束时间(0 不显示)'],
|
||
['await_time', '', '结算等待时间'],
|
||
['assignable_cec', '', '可分配的总cec奖励'],
|
||
['cec_pool', '', '总cec奖励池'],
|
||
# ['total_target', '', '全服算力总目标'],
|
||
|
||
# ['refresh_remain_time', '', '刷新剩余时间'],
|
||
['total_hash_rate', '', '全服总兑换算力'],
|
||
['total_exchange_hash_rate', '', "玩家已兑换算力"],
|
||
]
|
||
|
||
class ComputingPowerReward(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['cec', 0, 'cec奖励'],
|
||
['point', 0, '科技值'],
|
||
]
|
||
|
||
class ComputingPower(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['period_state', 0, '周期状态 -1:算力周期未开始 0:正常周期 1:等待周期 2:维护周期'],
|
||
['curr_period', ComputingPowerCurr(), '本期相关信息'],
|
||
['curr_reward', ComputingPowerReward(), '本期奖励信息'],
|
||
['listing_state', 0, 'listing状态 0:之前 1:之后'],
|
||
['owned_cec', 0, '拥有的cec数量'],
|
||
['owned_total_hash_rate', 0, '用户总科技值'],
|
||
['owned_total_crystal', 0, '用户总晶体数'],
|
||
]
|
||
|
||
class CrystalUI(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, 'item_id'],
|
||
['pending', 0, 'pending'],
|
||
['total', CrystalUIParam(), '统计信息'],
|
||
['claimed', 0, '已领取的数量'],
|
||
['state', 0, '是否能领取 1:可领取 0:反之'],
|
||
]
|
||
|
||
class CrystalUIParam(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['param1', 0, '击杀数/其它晶体的价值数'],
|
||
['param2', 0, '星星数'],
|
||
['param3', 0, '升段数'],
|
||
]
|
||
|
||
class ExchangeCrystalRecord(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['item_id', 0, '晶体item'],
|
||
['item_num', 0, '晶体数'],
|
||
['createtime', 0, '领取时间'],
|
||
]
|
||
|
||
class ExchangeCrystalNum(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['num1', 0, '本期晶体260001兑换数'],
|
||
['num2', 0, '本期晶体260002兑换数'],
|
||
['num3', 0, '本期晶体260003兑换数'],
|
||
['num4', 0, '本期晶体260004兑换数'],
|
||
]
|
||
|
||
class CECRewardHistory(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['hash_rate', 0, '算力数量'],
|
||
['cec_num', 0, 'cec数量'],
|
||
['state', 0, '领取状态 1:全部领取 0:反之'],
|
||
['week1', 0, '1:已领取 反之则是发放的时间戳'],
|
||
['week2', 0, '1:已领取 反之则是发放的时间戳'],
|
||
['week3', 0, '1:已领取 反之则是发放的时间戳'],
|
||
['week4', 0, '1:已领取 反之则是发放的时间戳'],
|
||
['txHash1', 0, '第一周地址'],
|
||
['txHash2', 0, '第二周地址'],
|
||
['txHash3', 0, '第三周地址'],
|
||
['txHash4', 0, '第四周地址'],
|
||
['create_time', 0, '结算时间'],
|
||
['pending_num', 0, '剩余未领取的cec数量'],
|
||
]
|
||
|
||
class Staking(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['type', 0, '1: planet 2: badge 3:cec'],
|
||
['is_open', 0, '功能是否开启'],
|
||
['staked_quant', 0, '质押数量'],
|
||
['claim_rewards', 0, '当前类型自从已产出利息累计'],
|
||
['daily_rewards', 0, '每天产出的利息总和'],
|
||
['staking_value', 0, '在质押状态的价值总和'],
|
||
['maturity_quant', 0, '已到期资产的数量'],
|
||
]
|
||
|
||
class StakingDetail(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['trans_id', '', '本次质押交易唯一id'],
|
||
['token_id', '', 'token id'],
|
||
['token_type', '', 'token type'],
|
||
['contract_address', '', 'contract address'],
|
||
['net_id', '', 'net_id'],
|
||
['order_id', '', 'order_id'],
|
||
['start_time', '', '质押开始时间'],
|
||
['stake_time', '', '质押时间'],
|
||
['redeem_time', '', '赎回时间'],
|
||
['txhash', '', 'txhash'],
|
||
|
||
['item_id', 0, '道具id'],
|
||
['stacked_num', 0, '质押数量'],
|
||
['total_rewards', 0, '该nft已产生的利息'],
|
||
['daily_rewards', 0, '该nft每天可以产生多少利息'],
|
||
['cec_value', 0, '该nft的价值'],
|
||
['cec_rewards', 0, '该nft结算得到的ceg数量'],
|
||
['stacked_days', 0, '该nft质押的总天数'],
|
||
['remain_days', 0, '该nft剩余质押天数'],
|
||
]
|
||
|
||
class StakingPreview(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['time', 0, '天数'],
|
||
['interest', 0, '利息'],
|
||
]
|
||
|
||
class AvatarInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['avatar_uniid', '', '装饰唯一id'],
|
||
['account_id', '', 'account_id'],
|
||
['token_id', '', 'token_id'],
|
||
['item_id', 0, 'item_id'],
|
||
['item_type', 0, '1:翅膀'],
|
||
['status', 0, '0:为穿戴 1:已穿戴'],
|
||
['hero_uniid', 0, '穿戴的英雄唯一id'],
|
||
]
|
||
|
||
class BattleData(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id','','account_id'],
|
||
['session_id','','session_id'],
|
||
['battle_uuid','','battle_uuid'],
|
||
['match_mode',0,'0:匹配 1:排位 2:pve'],
|
||
['rank', 0, '当前段位'],
|
||
['name','','用户名字'],
|
||
['level',0,'用户等级'],
|
||
['revive_coin',0,'复活币'],
|
||
['hero_uniid',0,'英雄 uniid'],
|
||
['hero_id',0,'英雄 item id'],
|
||
['weapon_uuid1',0,'武器1 uniid'],
|
||
['weapon_uuid2',0,'武器2 uniid'],
|
||
['parachute',0,'降落伞 item id'],
|
||
['hero_skin',0,'英雄皮肤 item id'],
|
||
['skill_id',0,'备战技能 item id'],
|
||
['battle_times',0,'战斗次数'],
|
||
['chip_page', Attr(),'铭文页属性'],
|
||
['hero_dto','','英雄详情'],
|
||
['weapon_dto1','','武器1详情'],
|
||
['weapon_dto2','','武器2详情'],
|
||
]
|
||
|
||
class BattleTeam(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['team_uuid','','队伍唯一id'],
|
||
['!members', BattleData(), '成员数据'],
|
||
]
|
||
|
||
class MatchMember(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['account_id', '', '账号id'],
|
||
['address', '', 'openid'],
|
||
['name', '', '用户名字'],
|
||
['hero_uniId', 0, 'hero uniid'],
|
||
['hero_id', 0, 'hero itemId'],
|
||
['hero_skin', 0, '英雄皮肤 itemId'],
|
||
['head_id', 0, '头像id'],
|
||
['level', 0, '等级'],
|
||
['exp', 0, '经验'],
|
||
['rank', 0, '段位'],
|
||
['pve_instance_id', 0, 'pve难度id'],
|
||
['parachute', 0, '降落伞id'],
|
||
['presetInfo', HeroPreset(), '备战信息'],
|
||
['game_times', 0, '游戏次数'],
|
||
['win_times', 0, '胜利次数'],
|
||
['kills', 0, '击杀数'],
|
||
['is_leader', 0, '是否队长'],
|
||
['is_ready', 0, '是否准备'],
|
||
['permission', 0, '邀请许可'],
|
||
['createtime', 0, '账号创建时间'],
|
||
]
|
||
|
||
class MatchTeam(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['team_uuid','','队伍唯一id'],
|
||
['!members', BattleData(), '成员数据'],
|
||
]
|
||
|
||
class MatchInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['state',0,'状态 0:匹配中 1:匹配成功'],
|
||
['!team_list', MatchTeam(), '队伍列表(客户端自行判断所属哪个队伍)'],
|
||
['join_msg', SpecJoin(), '匹配成功后改字段才有意义,传给CMJoin里的参数(team_uuid、payload)'],
|
||
]
|
||
|
||
class SpecJoin(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['team_uuid', '', '自定义房间、moba房间会修改玩家原始team_uuid,所以用这个新的team_uuid替换之前CMJoin里的team_uuid'],
|
||
['payload', '', '透传数据'],
|
||
]
|
||
|
||
class MFRoomReportTeam(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['battle_uuid', '', 'battle_uuid'],
|
||
['team_id', 0, '队伍id'],
|
||
['victory', 0, '是否胜利(pvp:吃鸡 pve:通关 moba:胜利)'],
|
||
|
||
['pvp_settelement_type', 0, 'pvp结算类型 0:个人 1:组队'],
|
||
['pvp_settelement_color', 0, ''],
|
||
['pvp_team_rank', 0, 'pvp队伍排名'],
|
||
['pvp_total_human_num', 0, 'pvp房间总人数'],
|
||
['pvp_alive_human_num', 0, 'pvp房间剩余存活数'],
|
||
['pvp_total_team_num', 0, 'pvp战斗队伍总数'],
|
||
['pvp_match_mode', 0, '0: pvp 1:排位赛'],
|
||
['pvp_team_kills', 0, 'pvp队伍击杀数'],
|
||
|
||
['pve_settelement_type', 0, 'pve结算类型 0:个人 1:组队'],
|
||
['pve_instance_id', 0, 'pve副本id'],
|
||
['pve_wave', 0, 'pve波次'],
|
||
['pve_max_wave', 0, 'pve最大波次'],
|
||
|
||
['!members', [TeamReportMember()], '成员数据'],
|
||
]
|
||
|
||
class MFAttachment(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['itemid', 0, '道具id'],
|
||
['itemnum', 0, '道具数量'],
|
||
]
|
||
|
||
class MFGameMail(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['mailid', '', '邮件id'],
|
||
['subject', '', '邮件主题'],
|
||
['content', '', '邮件正文'],
|
||
['flags', 0, '邮件标志 1<<0:已读'],
|
||
['sendtime', 0, '发送时间'],
|
||
['expiretime', 0, '过期时间'],
|
||
['!attachments', [MFAttachment()], ''],
|
||
]
|
||
|
||
class MFTransactionRequest(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['to', '', '调用的目标合约地址'],
|
||
['data', '', '包含报文相关的字节字符串'],
|
||
]
|
||
|
||
class NftHomeMeta(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', 'nft名字'],
|
||
['symbol', '', 'symbol'],
|
||
['description', '', 'nft描述'],
|
||
['image', '', 'nft图片地址'],
|
||
['external_link', '', 'nft链接'],
|
||
]
|
||
|
||
class NftAttribute(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['trait_type', '', '属性名'],
|
||
['value', '', '属性值'],
|
||
]
|
||
|
||
class NftHeroMeta(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', 'nft名字'],
|
||
['description', '', 'nft描述'],
|
||
['image', '', 'nft图片地址'],
|
||
['!attrigutes', [NftAttribute()], 'nft属性'],
|
||
]
|
||
|
||
class NftGoldBullionMeta(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['name', '', 'nft名字'],
|
||
['description', '', 'nft描述'],
|
||
['image', '', 'nft图片地址'],
|
||
['!attrigutes', [NftAttribute()], 'nft属性'],
|
||
]
|
||
|
||
class StreamPage(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['next_cursor', '', '下一页游标'],
|
||
['previous_cursor', '', '前一页游标'],
|
||
['remaining', 0, '是否有更多数据'],
|
||
]
|
||
|
||
class NftHeroDetailNew(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['quality', 0, '星级'],
|
||
['max_mining_days', 0, '打金天数(最大)'],
|
||
['wealth', 0, '财富值'],
|
||
['lucky', 0, '幸运值'],
|
||
['hp', 0, '血量'],
|
||
['atk', 0, '攻击'],
|
||
['def', 0, '攻击'],
|
||
['block', 0, '格挡'],
|
||
['crit', 0, '暴击'],
|
||
]
|
||
|
||
class NftGoldBullionDetail(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['gold_coins', 0, '金币数'],
|
||
]
|
||
|
||
class NftInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['net_id', 0, '链id'],
|
||
['contract_address', 0, '合约地址'],
|
||
['token_id', '', 'token id'],
|
||
['owner_address', '', '所有者地址'],
|
||
['meta_url', '', '元数据url'],
|
||
['name', '', 'nft名字'],
|
||
['item_id', 0, '道具id'],
|
||
['type', '', 'nft类型 1:英雄 11:金砖'],
|
||
['image', '', 'nft图片地址'],
|
||
['detail', Union([
|
||
[NftHeroDetailNew(), '英雄'],
|
||
[NftGoldBullionDetail(), '英雄'],
|
||
]), 'nft详细信息'],
|
||
]
|
||
|
||
class MarketGoods(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['event', '', 'json格式订单webhooks事件信息imtbl_zkevm_order_updated https://docs.immutable.com/docs/zkEVM/products/blockchain-data/webhooks/webhooks-orders'],
|
||
['nft', NftInfo(), 'nft信息'],
|
||
['in_shopcart', 0, '商品是否已在购物车里'],
|
||
]
|
||
|
||
class SaleGoods(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['event', '', 'json格式订单webhooks事件信息imtbl_zkevm_activity_sale https://docs.immutable.com/docs/zkEVM/products/blockchain-data/webhooks/webhooks-orders'],
|
||
['nft', NftInfo(), 'nft信息']
|
||
]
|
||
|
||
class AssetNftInfo(object):
|
||
|
||
def __init__(self):
|
||
self.fields = [
|
||
['net_id', 0, '链id'],
|
||
['contract_address', 0, '合约地址'],
|
||
['token_id', '', 'token id'],
|
||
['owner_address', '', '所有者地址'],
|
||
['meta_url', '', '元数据url'],
|
||
['name', '', 'nft名字'],
|
||
['item_id', 0, '道具id'],
|
||
['on_sale', 0, '是否出售中'],
|
||
['type', '', 'nft类型 1:英雄 11:金砖'],
|
||
['image', '', 'nft图片地址'],
|
||
['detail', Union([
|
||
[NftHeroDetailNew(), '英雄'],
|
||
[NftGoldBullionDetail(), '英雄'],
|
||
]), 'nft详细信息'],
|
||
]
|