上传新物管和每日一练

This commit is contained in:
liwei1dao 2023-02-23 18:32:45 +08:00
parent 9a6f6b8d3d
commit b4b4859458
37 changed files with 3797 additions and 89 deletions

View File

@ -0,0 +1,86 @@
[
{
"id": 1001,
"buff_group": 1000001,
"duration": "",
"camp_restriction": 1,
"occupational_restrictions": 1,
"star_limit": 6,
"buffid": 200000001,
"p": 1667,
"name": {
"key": "wuguanbuff200000001",
"text": "攻击力增加2%"
}
},
{
"id": 1002,
"buff_group": 1000001,
"duration": "",
"camp_restriction": 2,
"occupational_restrictions": 2,
"star_limit": 6,
"buffid": 200000002,
"p": 1667,
"name": {
"key": "wuguanbuff200000002",
"text": "防御力增加2%"
}
},
{
"id": 1003,
"buff_group": 1000001,
"duration": "",
"camp_restriction": 3,
"occupational_restrictions": 3,
"star_limit": 6,
"buffid": 200000003,
"p": 1667,
"name": {
"key": "wuguanbuff200000003",
"text": "暴击率增加2%"
}
},
{
"id": 1004,
"buff_group": 1000001,
"duration": "",
"camp_restriction": 4,
"occupational_restrictions": 4,
"star_limit": 6,
"buffid": 200000004,
"p": 1667,
"name": {
"key": "wuguanbuff200000004",
"text": "暴击抵抗增加2%"
}
},
{
"id": 1005,
"buff_group": 1000001,
"duration": "",
"camp_restriction": 0,
"occupational_restrictions": 0,
"star_limit": 0,
"buffid": 200000005,
"p": 1667,
"name": {
"key": "wuguanbuff200000005",
"text": "效果命中增加2%"
}
},
{
"id": 1006,
"buff_group": 1000001,
"duration": "",
"camp_restriction": 0,
"occupational_restrictions": 0,
"star_limit": 0,
"buffid": 200000006,
"p": 1667,
"name": {
"key": "wuguanbuff200000006",
"text": "效果抵抗增加2%"
}
}
]

View File

@ -0,0 +1,14 @@
[
{
"id": 1,
"unlock_condition": "6000001"
},
{
"id": 2,
"unlock_condition": "6000002"
},
{
"id": 3,
"unlock_condition": "6000003"
}
]

View File

@ -0,0 +1,833 @@
[
{
"id": "10001",
"type": 1,
"name": "shirenyu",
"color": 3,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "食人鱼",
"description": {
"key": "wuguanshirenyu",
"text": "提升每分钟的经验值获取{0}%"
},
"duration": 0,
"exp": 10,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "10002",
"type": 1,
"name": "shanshan",
"color": 3,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "闪闪",
"description": {
"key": "wuguanshanshan",
"text": "提升每分钟的经验值获取{0}%"
},
"duration": 0,
"exp": 15,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "10003",
"type": 1,
"name": "shexiansheng",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "蛇先生",
"description": {
"key": "wuguanshexiansheng",
"text": "提升每分钟的经验值获取{0}%"
},
"duration": 0,
"exp": 20,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "10004",
"type": 1,
"name": "jinhou",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "金猴",
"description": {
"key": "wuguanjinhou",
"text": "提升每分钟的经验值获取{0}%,提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 10,
"probability": 100,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
12
]
},
{
"id": "10005",
"type": 1,
"name": "hedashi",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "鹤大师",
"description": {
"key": "wuguanhedashi",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1000,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "10006",
"type": 1,
"name": "hanjiaohu",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "悍娇虎",
"description": {
"key": "wuguanhanjiaohu",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1200,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "10007",
"type": 1,
"name": "gai",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "盖",
"description": {
"key": "wuguangai",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1500,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "10008",
"type": 1,
"name": "xikapu",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "希卡普",
"description": {
"key": "wuguanxikapu",
"text": "提升可挂机的时间{0}秒,提升每分钟的经验值获取{0}%"
},
"duration": 1000,
"exp": 10,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "10009",
"type": 1,
"name": "mao",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "穿靴猫",
"description": {
"key": "wuguanmao",
"text": "提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 0,
"probability": 100,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
15
]
},
{
"id": "10010",
"type": 1,
"name": "shifu",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "师父",
"description": {
"key": "wuguanshifu",
"text": "提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 0,
"probability": 100,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
20
]
},
{
"id": "10011",
"type": 1,
"name": "abao",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "阿宝",
"description": {
"key": "wuguanabao",
"text": "{0}%概率获得1个3级升星精灵"
},
"duration": 0,
"exp": 0,
"probability": 60,
"ants": [
{
"a": "item",
"t": "30002",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
3
]
},
{
"id": "10012",
"type": 1,
"name": "wuguidashi",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "乌龟大师",
"description": {
"key": "wuguanwuguidashi",
"text": "{0}%概率获得1个3级升星精灵"
},
"duration": 0,
"exp": 0,
"probability": 80,
"ants": [
{
"a": "item",
"t": "30002",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
5
]
},
{
"id": "20001",
"type": 2,
"name": "shisuo",
"color": 3,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "石锁",
"description": {
"key": "wuguanshisuo",
"text": "提升每分钟的经验值获取{0}%,提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 10,
"probability": 100,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
15
]
},
{
"id": "20002",
"type": 2,
"name": "kongzu",
"color": 3,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "双头空竹",
"description": {
"key": "wuguankongzu",
"text": "提升每分钟的经验值获取{0}%"
},
"duration": 0,
"exp": 10,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20003",
"type": 2,
"name": "mupajia",
"color": 3,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "木爬架",
"description": {
"key": "wuguanmupajia",
"text": "提升每分钟的经验值获取{0}%"
},
"duration": 0,
"exp": 15,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20004",
"type": 2,
"name": "budaoweng",
"color": 3,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "不倒翁",
"description": {
"key": "wuguanbudaoweng",
"text": "提升每分钟的经验值获取{0}%"
},
"duration": 0,
"exp": 20,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20005",
"type": 2,
"name": "bangchui",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "棒槌",
"description": {
"key": "wuguanbangchui",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1000,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20006",
"type": 2,
"name": "tongling",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "铜铃",
"description": {
"key": "wuguantongling",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1200,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20007",
"type": 2,
"name": "diaohuan",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "尖刺吊环",
"description": {
"key": "wuguandiaohuan",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1500,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20008",
"type": 2,
"name": "tuoluo",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "陀螺",
"description": {
"key": "wuguantuoluo",
"text": "提升可挂机的时间{0}秒,提升每分钟的经验值获取{0}%"
},
"duration": 1000,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20009",
"type": 2,
"name": "dazhuanlun",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "大转轮",
"description": {
"key": "wuguandazhuanlun",
"text": "提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 0,
"probability": 60,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
15
]
},
{
"id": "20010",
"type": 2,
"name": "mutoupai",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "木头牌",
"description": {
"key": "wuguanmutoupai",
"text": "提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 0,
"probability": 60,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
20
]
},
{
"id": "20011",
"type": 2,
"name": "shuangjiegun",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "双节棍",
"description": {
"key": "wuguanshuangjiegun",
"text": "{0}%概率获得1个3级升星精灵"
},
"duration": 0,
"exp": 0,
"probability": 50,
"ants": [
{
"a": "item",
"t": "30002",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
3
]
},
{
"id": "20012",
"type": 2,
"name": "liangongdai",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "练功带",
"description": {
"key": "wuguanliangongdai",
"text": "{0}%概率获得1个3级升星精灵"
},
"duration": 0,
"exp": 0,
"probability": 50,
"ants": [
{
"a": "item",
"t": "30002",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
5
]
},
{
"id": "20013",
"type": 2,
"name": "qicaihuagun",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "七彩花棍",
"description": {
"key": "wuguanqicaihuagun",
"text": "{0}%概率获得1个3级升星精灵"
},
"duration": 0,
"exp": 0,
"probability": 50,
"ants": [
{
"a": "item",
"t": "30002",
"n": 1
}
],
"wget": [
100
],
"num": [
1,
2
]
},
{
"id": "20014",
"type": 2,
"name": "liuxingfeibiao",
"color": 4,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "流星飞镖",
"description": {
"key": "wuguanliuxingfeibiao",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1000,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20015",
"type": 2,
"name": "mingxiangluo",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "冥想锣",
"description": {
"key": "wuguanmingxiangluo",
"text": "提升可挂机的时间{0}秒"
},
"duration": 1200,
"exp": 0,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20016",
"type": 2,
"name": "caitiaolong",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "彩条龙",
"description": {
"key": "wuguancaitiaolong",
"text": "提升可挂机的时间{0}秒,提升每分钟的经验值获取{0}%"
},
"duration": 1500,
"exp": 10,
"probability": 0,
"ants": [],
"wget": [],
"num": []
},
{
"id": "20017",
"type": 2,
"name": "kongquemaosan",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "孔雀毛扇",
"description": {
"key": "wuguankongquemaosan",
"text": "提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 0,
"probability": 100,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [],
"num": [
1,
12
]
},
{
"id": "20018",
"type": 2,
"name": "pinghengmu",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "平衡木",
"description": {
"key": "wuguanpinghengmu",
"text": "提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 0,
"probability": 100,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [],
"num": [
1,
12
]
},
{
"id": "20019",
"type": 2,
"name": "tiehuan",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "铁环",
"description": {
"key": "wuguantiehuan",
"text": "{0}%概率获得1个3级升星精灵"
},
"duration": 0,
"exp": 0,
"probability": 100,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [],
"num": [
1,
3
]
},
{
"id": "20020",
"type": 2,
"name": "taijiqiu",
"color": 5,
"effects": "",
"access": 0,
"img": "",
"ico": "",
"intr": "太极球",
"description": {
"key": "wuguantaijiqiu",
"text": "{0}%概率获得1个3级升星精灵,提升低级觉醒材料的获取数量{0}"
},
"duration": 0,
"exp": 0,
"probability": 30,
"ants": [
{
"a": "item",
"t": "30001",
"n": 1
}
],
"wget": [
100200
],
"num": [
1,
5
]
}
]

View File

@ -0,0 +1,98 @@
[
{
"id": 101,
"name": {
"key": "wuguandongzuo_101",
"text": "开合跳"
},
"buff_group": 1000001
},
{
"id": 102,
"name": {
"key": "wuguandongzuo_102",
"text": "手臂环绕"
},
"buff_group": 1000001
},
{
"id": 103,
"name": {
"key": "wuguandongzuo_103",
"text": "肩部拉伸"
},
"buff_group": 1000001
},
{
"id": 104,
"name": {
"key": "wuguandongzuo_104",
"text": "波比"
},
"buff_group": 1000001
},
{
"id": 105,
"name": {
"key": "wuguandongzuo_105",
"text": "交错俯卧撑"
},
"buff_group": 1000001
},
{
"id": 106,
"name": {
"key": "wuguandongzuo_106",
"text": "钻石俯卧撑"
},
"buff_group": 1000001
},
{
"id": 107,
"name": {
"key": "wuguandongzuo_107",
"text": "掌上压后转身"
},
"buff_group": 1000001
},
{
"id": 108,
"name": {
"key": "wuguandongzuo_108",
"text": "眼镜蛇式拉伸"
},
"buff_group": 1000001
},
{
"id": 109,
"name": {
"key": "wuguandongzuo_109",
"text": "胸部拉伸"
},
"buff_group": 1000001
},
{
"id": 110,
"name": {
"key": "wuguandongzuo_110",
"text": "原地跑"
},
"buff_group": 1000001
},
{
"id": 111,
"name": {
"key": "wuguandongzuo_111",
"text": "深蹲"
},
"buff_group": 1000001
},
{
"id": 112,
"name": {
"key": "wuguandongzuo_112",
"text": "仰卧起坐"
},
"buff_group": 1000001
}
]

View File

@ -0,0 +1,151 @@
[
{
"lv": 1,
"name": {
"key": "muzhuang_1",
"text": "1级木人桩"
},
"pile_appearance": "",
"effect": {
"key": "muzhuang_xiaoguo_1",
"text": "每分钟提升经验{0}"
},
"up_lv_consume": [
{
"a": "item",
"t": "30001",
"n": 1
},
{
"a": "item",
"t": "30002",
"n": 1
},
{
"a": "attr",
"t": "30001",
"n": 5000
}
],
"min_exp": 10,
"placement_duration": 14400,
"prop_position": 0,
"photo_guide_unlocking": []
},
{
"lv": 2,
"name": {
"key": "muzhuang_2",
"text": "2级木人桩"
},
"pile_appearance": "",
"effect": {
"key": "muzhuang_xiaoguo_2",
"text": "每分钟提升经验{0}"
},
"up_lv_consume": [
{
"a": "item",
"t": "30001",
"n": 1
},
{
"a": "item",
"t": "30002",
"n": 1
},
{
"a": "attr",
"t": "30001",
"n": 5000
}
],
"min_exp": 15,
"placement_duration": 18000,
"prop_position": 1,
"photo_guide_unlocking": []
},
{
"lv": 3,
"name": {
"key": "muzhuang_3",
"text": "3级木人桩"
},
"pile_appearance": "",
"effect": {
"key": "muzhuang_xiaoguo_3",
"text": "每分钟提升经验{0}"
},
"up_lv_consume": [
{
"a": "item",
"t": "30001",
"n": 1
},
{
"a": "item",
"t": "30002",
"n": 1
},
{
"a": "attr",
"t": "30001",
"n": 5000
}
],
"min_exp": 20,
"placement_duration": 21600,
"prop_position": 1,
"photo_guide_unlocking": []
},
{
"lv": 4,
"name": {
"key": "muzhuang_4",
"text": "4级木人桩"
},
"pile_appearance": "",
"effect": {
"key": "muzhuang_xiaoguo_4",
"text": "每分钟提升经验{0}"
},
"up_lv_consume": [
{
"a": "item",
"t": "30001",
"n": 1
},
{
"a": "item",
"t": "30002",
"n": 1
},
{
"a": "attr",
"t": "30001",
"n": 5000
}
],
"min_exp": 25,
"placement_duration": 25200,
"prop_position": 1,
"photo_guide_unlocking": []
},
{
"lv": 5,
"name": {
"key": "muzhuang_5",
"text": "5级木人桩"
},
"pile_appearance": "",
"effect": {
"key": "muzhuang_xiaoguo_5",
"text": "每分钟提升经验{0}"
},
"up_lv_consume": [],
"min_exp": 30,
"placement_duration": 28800,
"prop_position": 1,
"photo_guide_unlocking": []
}
]

View File

@ -0,0 +1,274 @@
[
{
"id": "10110",
"tab_id": 1,
"name_text": {
"key": "1",
"text": "神龙卷轴残卷一"
},
"effect_text": {
"key": "1",
"text": "神龙卷轴残卷一"
},
"content_text": {
"key": "1",
"text": "神龙卷轴来历描述"
},
"atlas_score": 30
},
{
"id": "10111",
"tab_id": 1,
"name_text": {
"key": "2",
"text": "神龙卷轴残卷二"
},
"effect_text": {
"key": "2",
"text": "神龙卷轴残卷二"
},
"content_text": {
"key": "2",
"text": "神龙卷轴来历描述"
},
"atlas_score": 45
},
{
"id": "10112",
"tab_id": 1,
"name_text": {
"key": "3",
"text": "神龙卷轴残卷三"
},
"effect_text": {
"key": "3",
"text": "神龙卷轴残卷三"
},
"content_text": {
"key": "3",
"text": "神龙卷轴来历描述"
},
"atlas_score": 60
},
{
"id": "10113",
"tab_id": 1,
"name_text": {
"key": "4",
"text": "神龙卷轴残卷四"
},
"effect_text": {
"key": "4",
"text": "神龙卷轴残卷四"
},
"content_text": {
"key": "4",
"text": "神龙卷轴来历描述"
},
"atlas_score": 75
},
{
"id": "10210",
"tab_id": 2,
"name_text": {
"key": "5",
"text": "魔法大师卷一"
},
"effect_text": {
"key": "5",
"text": "魔法大师卷一"
},
"content_text": {
"key": "5",
"text": "魔法大师来历描述"
},
"atlas_score": 90
},
{
"id": "10211",
"tab_id": 2,
"name_text": {
"key": "6",
"text": "魔法大师卷二"
},
"effect_text": {
"key": "6",
"text": "魔法大师卷二"
},
"content_text": {
"key": "6",
"text": "魔法大师来历描述"
},
"atlas_score": 105
},
{
"id": "10212",
"tab_id": 2,
"name_text": {
"key": "7",
"text": "魔法大师卷三"
},
"effect_text": {
"key": "7",
"text": "魔法大师卷三"
},
"content_text": {
"key": "7",
"text": "魔法大师来历描述"
},
"atlas_score": 120
},
{
"id": "10213",
"tab_id": 2,
"name_text": {
"key": "8",
"text": "魔法大师卷四"
},
"effect_text": {
"key": "8",
"text": "魔法大师卷四"
},
"content_text": {
"key": "8",
"text": "魔法大师来历描述"
},
"atlas_score": 135
},
{
"id": "10310",
"tab_id": 3,
"name_text": {
"key": "1",
"text": "神龙卷轴残卷一"
},
"effect_text": {
"key": "1",
"text": "神龙卷轴残卷一"
},
"content_text": {
"key": "1",
"text": "神龙卷轴来历描述"
},
"atlas_score": 150
},
{
"id": "10311",
"tab_id": 3,
"name_text": {
"key": "2",
"text": "神龙卷轴残卷二"
},
"effect_text": {
"key": "2",
"text": "神龙卷轴残卷二"
},
"content_text": {
"key": "2",
"text": "神龙卷轴来历描述"
},
"atlas_score": 165
},
{
"id": "10312",
"tab_id": 3,
"name_text": {
"key": "3",
"text": "神龙卷轴残卷三"
},
"effect_text": {
"key": "3",
"text": "神龙卷轴残卷三"
},
"content_text": {
"key": "3",
"text": "神龙卷轴来历描述"
},
"atlas_score": 180
},
{
"id": "10313",
"tab_id": 3,
"name_text": {
"key": "4",
"text": "神龙卷轴残卷四"
},
"effect_text": {
"key": "4",
"text": "神龙卷轴残卷四"
},
"content_text": {
"key": "4",
"text": "神龙卷轴来历描述"
},
"atlas_score": 195
},
{
"id": "10013",
"tab_id": 4,
"name_text": {
"key": "5",
"text": "魔法大师卷一"
},
"effect_text": {
"key": "5",
"text": "魔法大师卷一"
},
"content_text": {
"key": "5",
"text": "魔法大师来历描述"
},
"atlas_score": 210
},
{
"id": "10014",
"tab_id": 4,
"name_text": {
"key": "6",
"text": "魔法大师卷二"
},
"effect_text": {
"key": "6",
"text": "魔法大师卷二"
},
"content_text": {
"key": "6",
"text": "魔法大师来历描述"
},
"atlas_score": 225
},
{
"id": "10015",
"tab_id": 4,
"name_text": {
"key": "7",
"text": "魔法大师卷三"
},
"effect_text": {
"key": "7",
"text": "魔法大师卷三"
},
"content_text": {
"key": "7",
"text": "魔法大师来历描述"
},
"atlas_score": 240
},
{
"id": "10016",
"tab_id": 4,
"name_text": {
"key": "8",
"text": "魔法大师卷四"
},
"effect_text": {
"key": "8",
"text": "魔法大师卷四"
},
"content_text": {
"key": "8",
"text": "魔法大师来历描述"
},
"atlas_score": 255
}
]

View File

@ -0,0 +1,178 @@
[
{
"atlas_lv": 1,
"atlas_score": 0,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 2,
"atlas_score": 50,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 3,
"atlas_score": 100,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 4,
"atlas_score": 150,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 5,
"atlas_score": 200,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 6,
"atlas_score": 250,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 7,
"atlas_score": 300,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 8,
"atlas_score": 350,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 9,
"atlas_score": 400,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 10,
"atlas_score": 450,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 11,
"atlas_score": 500,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 12,
"atlas_score": 550,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 13,
"atlas_score": 600,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 14,
"atlas_score": 650,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 15,
"atlas_score": 700,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
},
{
"atlas_lv": 16,
"atlas_score": 750,
"item_id": [
{
"a": "item",
"t": "10002",
"n": 1
}
]
}
]

View File

@ -6,7 +6,6 @@
"key": "viking_boss_1001",
"text": "火焰泰坦"
},
"ReadyID": 104,
"difficulty": 1,
"Numrounds": 10,
"BattleReadyID": 104,
@ -85,7 +84,6 @@
"key": "viking_boss_1001",
"text": "火焰泰坦"
},
"ReadyID": 104,
"difficulty": 2,
"Numrounds": 10,
"BattleReadyID": 104,
@ -164,7 +162,6 @@
"key": "viking_boss_1001",
"text": "火焰泰坦"
},
"ReadyID": 104,
"difficulty": 3,
"Numrounds": 10,
"BattleReadyID": 104,
@ -243,7 +240,6 @@
"key": "viking_boss_1001",
"text": "火焰泰坦"
},
"ReadyID": 104,
"difficulty": 4,
"Numrounds": 10,
"BattleReadyID": 104,
@ -322,7 +318,6 @@
"key": "viking_boss_1002",
"text": "冰之泰坦"
},
"ReadyID": 104,
"difficulty": 1,
"Numrounds": 10,
"BattleReadyID": 104,
@ -401,7 +396,6 @@
"key": "viking_boss_1002",
"text": "冰之泰坦"
},
"ReadyID": 104,
"difficulty": 2,
"Numrounds": 10,
"BattleReadyID": 104,
@ -480,7 +474,6 @@
"key": "viking_boss_1002",
"text": "冰之泰坦"
},
"ReadyID": 104,
"difficulty": 3,
"Numrounds": 10,
"BattleReadyID": 104,
@ -559,7 +552,6 @@
"key": "viking_boss_1002",
"text": "冰之泰坦"
},
"ReadyID": 104,
"difficulty": 4,
"Numrounds": 10,
"BattleReadyID": 104,
@ -638,7 +630,6 @@
"key": "viking_boss_1003",
"text": "森林泰坦"
},
"ReadyID": 104,
"difficulty": 1,
"Numrounds": 10,
"BattleReadyID": 104,
@ -717,7 +708,6 @@
"key": "viking_boss_1003",
"text": "森林泰坦"
},
"ReadyID": 104,
"difficulty": 2,
"Numrounds": 10,
"BattleReadyID": 104,
@ -796,7 +786,6 @@
"key": "viking_boss_1003",
"text": "森林泰坦"
},
"ReadyID": 104,
"difficulty": 3,
"Numrounds": 10,
"BattleReadyID": 104,
@ -875,7 +864,6 @@
"key": "viking_boss_1003",
"text": "森林泰坦"
},
"ReadyID": 104,
"difficulty": 4,
"Numrounds": 10,
"BattleReadyID": 104,
@ -954,7 +942,6 @@
"key": "viking_boss_1001",
"text": "武器BOSS"
},
"ReadyID": 104,
"difficulty": 1,
"Numrounds": 10,
"BattleReadyID": 104,

View File

@ -0,0 +1,21 @@
package fitness
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) ConfirmCheck(session comm.IUserSession, req *pb.FitnessConfirmReq) (code pb.ErrorCode) {
return
}
///练功请求
func (this *apiComp) Confirm(session comm.IUserSession, req *pb.FitnessConfirmReq) (code pb.ErrorCode, data proto.Message) {
session.SendMsg(string(this.module.GetType()), "info", &pb.FitnessConfirmResp{})
return
}

View File

@ -0,0 +1,21 @@
package fitness
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) GetBuffCheck(session comm.IUserSession, req *pb.FitnessGetBuffReq) (code pb.ErrorCode) {
return
}
///练功请求
func (this *apiComp) GetBuff(session comm.IUserSession, req *pb.FitnessGetBuffReq) (code pb.ErrorCode, data proto.Message) {
session.SendMsg(string(this.module.GetType()), "info", &pb.FitnessGetBuffResp{})
return
}

View File

@ -0,0 +1,21 @@
package practice
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) ExpulsionCheck(session comm.IUserSession, req *pb.PracticeExpulsionReq) (code pb.ErrorCode) {
return
}
///练功请求 驱逐
func (this *apiComp) Expulsion(session comm.IUserSession, req *pb.PracticeExpulsionReq) (code pb.ErrorCode, data proto.Message) {
session.SendMsg(string(this.module.GetType()), "loot", &pb.PracticeExpulsionResp{})
return
}

View File

@ -0,0 +1,28 @@
package practice
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.PracticeInfoReq) (code pb.ErrorCode) {
return
}
///练功请求
func (this *apiComp) Info(session comm.IUserSession, req *pb.PracticeInfoReq) (code pb.ErrorCode, data proto.Message) {
var (
err error
room *pb.DBPracticeRoom
)
if room, err = this.module.modelPandata.queryUserMartialhall(session.GetUserId()); err != nil {
code = pb.ErrorCode_DBError
return
}
session.SendMsg(string(this.module.GetType()), "info", &pb.PracticeInfoResp{Info: room})
return
}

View File

@ -0,0 +1,83 @@
package practice
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
"time"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) LootCheck(session comm.IUserSession, req *pb.PracticeLootReq) (code pb.ErrorCode) {
return
}
///练功请求 蹭馆
func (this *apiComp) Loot(session comm.IUserSession, req *pb.PracticeLootReq) (code pb.ErrorCode, data proto.Message) {
var (
err error
froom *pb.DBPracticeRoom
room *pb.DBPracticeRoom
pillarconfigure *cfg.GamePandamasMzData
tconfigure *cfg.GamePandamasJxData
pconfigure *cfg.GamePandamasJxData
extra int32 = 0
)
if froom, err = this.module.modelPandata.queryUserMartialhall(req.Friend); err != nil {
code = pb.ErrorCode_DBError
return
}
if room, err = this.module.modelPandata.queryUserMartialhall(session.GetUserId()); err != nil {
code = pb.ErrorCode_DBError
return
}
if froom.Pillarf.Hero != "" {
code = pb.ErrorCode_ReqParameterError
}
if pillarconfigure, err = this.module.configure.getGamePandamasMz(froom.Pillarf.Lv); err != nil {
code = pb.ErrorCode_ConfigNoFound
return
}
if code = this.module.ModuleHero.KungFuHero(session, req.Hero, true); code != pb.ErrorCode_Success {
return
}
if req.Teacher != "" {
if room.Knapsack[req.Teacher] == 1 { //已经被使用
code = pb.ErrorCode_ReqParameterError
return
}
room.Knapsack[req.Teacher] = 1
if tconfigure, err = this.module.configure.getGamePandamasJx(req.Teacher); err != nil {
code = pb.ErrorCode_ConfigNoFound
return
}
extra += tconfigure.Duration
}
if req.Prop != "" {
if room.Knapsack[req.Prop] == 1 { //已经被使用
code = pb.ErrorCode_ReqParameterError
return
}
room.Knapsack[req.Prop] = 1
if pconfigure, err = this.module.configure.getGamePandamasJx(req.Teacher); err != nil {
code = pb.ErrorCode_ConfigNoFound
return
}
extra += pconfigure.Duration
}
froom.Pillarf.Hero = req.Hero
froom.Pillarf.Start = configure.Now().Unix()
froom.Pillarf.End = configure.Now().Add(time.Minute * (time.Duration(pillarconfigure.PlacementDuration + extra))).Unix()
this.module.modelPandata.Change(req.Friend, map[string]interface{}{
"pillarf": froom.Pillarf,
})
this.module.modelPandata.Change(session.GetUserId(), map[string]interface{}{
"knapsack": room.Knapsack,
})
session.SendMsg(string(this.module.GetType()), "loot", &pb.PracticeLootResp{})
return
}

View File

@ -0,0 +1,94 @@
package practice
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
"time"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) PracticeCheck(session comm.IUserSession, req *pb.PracticePracticeReq) (code pb.ErrorCode) {
return
}
///练功请求 练功
func (this *apiComp) Practice(session comm.IUserSession, req *pb.PracticePracticeReq) (code pb.ErrorCode, data proto.Message) {
var (
err error
room *pb.DBPracticeRoom
pillar *pb.DBPracticePillar
pillarconfigure *cfg.GamePandamasMzData
tconfigure *cfg.GamePandamasJxData
pconfigure *cfg.GamePandamasJxData
extra int32 = 0
filed string
)
if room, err = this.module.modelPandata.queryUserMartialhall(session.GetUserId()); err != nil {
code = pb.ErrorCode_DBError
return
}
switch req.Index {
case 1:
pillar = room.Pillar1
filed = "pillar1"
break
case 2:
pillar = room.Pillar2
filed = "pillar2"
break
case 3:
pillar = room.Pillar3
filed = "pillar3"
break
case 4:
pillar = room.Pillarf
filed = "pillarf"
break
}
if pillarconfigure, err = this.module.configure.getGamePandamasMz(pillar.Lv); err != nil {
code = pb.ErrorCode_ConfigNoFound
return
}
if code = this.module.ModuleHero.KungFuHero(session, req.Hero, true); code != pb.ErrorCode_Success {
return
}
if req.Teacher != "" {
if room.Knapsack[req.Teacher] == 1 { //已经被使用
code = pb.ErrorCode_ReqParameterError
return
}
room.Knapsack[req.Teacher] = 1
if tconfigure, err = this.module.configure.getGamePandamasJx(req.Teacher); err != nil {
code = pb.ErrorCode_ConfigNoFound
return
}
extra += tconfigure.Duration
}
if req.Prop != "" {
if room.Knapsack[req.Prop] == 1 { //已经被使用
code = pb.ErrorCode_ReqParameterError
return
}
room.Knapsack[req.Prop] = 1
if pconfigure, err = this.module.configure.getGamePandamasJx(req.Teacher); err != nil {
code = pb.ErrorCode_ConfigNoFound
return
}
extra += pconfigure.Duration
}
pillar.Hero = req.Hero
pillar.Start = configure.Now().Unix()
pillar.End = configure.Now().Add(time.Minute * (time.Duration(pillarconfigure.PlacementDuration + extra))).Unix()
this.module.modelPandata.Change(session.GetUserId(), map[string]interface{}{
"knapsack": room.Knapsack,
filed: pillar,
})
session.SendMsg(string(this.module.GetType()), "practice", &pb.PracticePracticeResp{Index: req.Index, Hero: req.Hero, Teacher: req.Teacher, Prop: req.Prop})
return
}

View File

@ -0,0 +1,21 @@
package practice
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) ReceiveCheck(session comm.IUserSession, req *pb.PracticeReceiveReq) (code pb.ErrorCode) {
return
}
///练功请求 奖励
func (this *apiComp) Receive(session comm.IUserSession, req *pb.PracticeReceiveReq) (code pb.ErrorCode, data proto.Message) {
session.SendMsg(string(this.module.GetType()), "loot", &pb.PracticeReceiveResp{})
return
}

View File

@ -0,0 +1,65 @@
package practice
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) UpgradeCheck(session comm.IUserSession, req *pb.PracticeUpgradeReq) (code pb.ErrorCode) {
return
}
///练功请求 蹭馆
func (this *apiComp) Upgrade(session comm.IUserSession, req *pb.PracticeUpgradeReq) (code pb.ErrorCode, data proto.Message) {
var (
err error
room *pb.DBPracticeRoom
pillarconfigure *cfg.GamePandamasMzData
pillar *pb.DBPracticePillar
filed string
)
if room, err = this.module.modelPandata.queryUserMartialhall(session.GetUserId()); err != nil {
code = pb.ErrorCode_DBError
return
}
switch req.Index {
case 1:
pillar = room.Pillar1
filed = "pillar1"
break
case 2:
pillar = room.Pillar2
filed = "pillar2"
break
case 3:
pillar = room.Pillar3
filed = "pillar3"
break
case 4:
pillar = room.Pillarf
filed = "pillarf"
break
}
if pillar.Hero != "" {
code = pb.ErrorCode_ReqParameterError
return
}
if pillarconfigure, err = this.module.configure.getGamePandamasMz(pillar.Lv); err != nil {
code = pb.ErrorCode_ConfigNoFound
return
}
if code = this.module.ConsumeRes(session, pillarconfigure.UpLvConsume, true); code != pb.ErrorCode_Success {
return
}
pillar.Lv++
this.module.modelPandata.Change(session.GetUserId(), map[string]interface{}{
filed: pillar,
})
session.SendMsg(string(this.module.GetType()), "upgrade", &pb.PracticeUpgradeResp{Index: req.Index, Lv: pillar.Lv})
return
}

View File

@ -0,0 +1,65 @@
package practice
import (
"fmt"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
cfg "go_dreamfactory/sys/configure/structs"
)
const (
game_pandamasmz = "game_pandamasmz.json"
game_pandamasjs = "game_pandamasjs.json"
game_pandamasjx = "game_pandamasjx.json"
)
///背包配置管理组件
type configureComp struct {
modules.MCompConfigure
module *Practice
}
//组件初始化接口
func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*Practice)
this.LoadConfigure(game_pandamasmz, cfg.NewGamePandamasMz)
this.LoadConfigure(game_pandamasjs, cfg.NewGamePandamasJs)
this.LoadConfigure(game_pandamasjx, cfg.NewGamePandamasJx)
return
}
func (this *configureComp) getGamePandamasMz(lv int32) (configure *cfg.GamePandamasMzData, err error) {
var (
v interface{}
ok bool
)
if v, err = this.GetConfigure(game_pandamasmz); err != nil {
this.module.Errorln(err)
return
} else {
if configure, ok = v.(*cfg.GamePandamasMz).GetDataMap()[lv]; !ok {
err = fmt.Errorf("not found:%d ", lv)
this.module.Errorln(err)
return
}
}
return
}
func (this *configureComp) getGamePandamasJx(id string) (configure *cfg.GamePandamasJxData, err error) {
var (
v interface{}
ok bool
)
if v, err = this.GetConfigure(game_pandamasjx); err != nil {
this.module.Errorln(err)
return
} else {
if configure, ok = v.(*cfg.GamePandamasJx).GetDataMap()[id]; !ok {
err = fmt.Errorf("not found:%s ", id)
this.module.Errorln(err)
return
}
}
return
}

View File

@ -37,13 +37,13 @@ func (this *modelPandata) queryUserMartialhall(uid string) (result *pb.DBPractic
}
if err == mgo.MongodbNil {
result = &pb.DBPracticeRoom{
Id: primitive.NewObjectID().Hex(),
Uid: uid,
Pillar1: &pb.DBPracticePillar{Index: 1},
Pillar2: &pb.DBPracticePillar{Index: 2},
Pillar3: &pb.DBPracticePillar{Index: 3},
Pillarf: &pb.DBPracticePillar{Index: 4},
Id: primitive.NewObjectID().Hex(),
Uid: uid,
Knapsack: map[string]int32{},
Pillar1: &pb.DBPracticePillar{Index: 1},
Pillar2: &pb.DBPracticePillar{Index: 2},
Pillar3: &pb.DBPracticePillar{Index: 3},
Pillarf: &pb.DBPracticePillar{Index: 4},
}
if err = this.Add(uid, result); err != nil {
this.module.Errorln(err)

View File

@ -19,8 +19,10 @@ func NewModule() core.IModule {
type Practice struct {
modules.ModuleBase
service base.IRPCXService
api *apiComp
service base.IRPCXService
api *apiComp
configure *configureComp
modelPandata *modelPandata
}
//模块名
@ -44,4 +46,6 @@ func (this *Practice) Start() (err error) {
func (this *Practice) OnInstallComp() {
this.ModuleBase.OnInstallComp()
this.api = this.RegisterComp(new(apiComp)).(*apiComp)
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
this.modelPandata = this.RegisterComp(new(modelPandata)).(*modelPandata)
}

View File

@ -25,6 +25,8 @@ type FitnessGetBuffReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Posture int32 `protobuf:"varint,1,opt,name=posture,proto3" json:"posture"`
}
func (x *FitnessGetBuffReq) Reset() {
@ -59,11 +61,20 @@ func (*FitnessGetBuffReq) Descriptor() ([]byte, []int) {
return file_fitness_fitness_msg_proto_rawDescGZIP(), []int{0}
}
func (x *FitnessGetBuffReq) GetPosture() int32 {
if x != nil {
return x.Posture
}
return 0
}
///健身获得buff请求 回应
type FitnessGetBuffResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Buffid int32 `protobuf:"varint,1,opt,name=buffid,proto3" json:"buffid"`
}
func (x *FitnessGetBuffResp) Reset() {
@ -98,11 +109,20 @@ func (*FitnessGetBuffResp) Descriptor() ([]byte, []int) {
return file_fitness_fitness_msg_proto_rawDescGZIP(), []int{1}
}
func (x *FitnessGetBuffResp) GetBuffid() int32 {
if x != nil {
return x.Buffid
}
return 0
}
///健身 确认buff 请求
type FitnessConfirmReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Buffid int32 `protobuf:"varint,1,opt,name=buffid,proto3" json:"buffid"`
}
func (x *FitnessConfirmReq) Reset() {
@ -137,11 +157,20 @@ func (*FitnessConfirmReq) Descriptor() ([]byte, []int) {
return file_fitness_fitness_msg_proto_rawDescGZIP(), []int{2}
}
func (x *FitnessConfirmReq) GetBuffid() int32 {
if x != nil {
return x.Buffid
}
return 0
}
///健身 确认buff 请求回应
type FitnessConfirmResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Buffid int32 `protobuf:"varint,1,opt,name=buffid,proto3" json:"buffid"`
}
func (x *FitnessConfirmResp) Reset() {
@ -176,18 +205,31 @@ func (*FitnessConfirmResp) Descriptor() ([]byte, []int) {
return file_fitness_fitness_msg_proto_rawDescGZIP(), []int{3}
}
func (x *FitnessConfirmResp) GetBuffid() int32 {
if x != nil {
return x.Buffid
}
return 0
}
var File_fitness_fitness_msg_proto protoreflect.FileDescriptor
var file_fitness_fitness_msg_proto_rawDesc = []byte{
0x0a, 0x19, 0x66, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x2f, 0x66, 0x69, 0x74, 0x6e, 0x65, 0x73,
0x73, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x13, 0x0a, 0x11, 0x46,
0x73, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2d, 0x0a, 0x11, 0x46,
0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x71,
0x22, 0x14, 0x0a, 0x12, 0x46, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, 0x42, 0x75,
0x66, 0x66, 0x52, 0x65, 0x73, 0x70, 0x22, 0x13, 0x0a, 0x11, 0x46, 0x69, 0x74, 0x6e, 0x65, 0x73,
0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x22, 0x14, 0x0a, 0x12, 0x46,
0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73,
0x70, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x05, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x22, 0x2c, 0x0a, 0x12, 0x46, 0x69,
0x74, 0x6e, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x73, 0x70,
0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
0x52, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x2b, 0x0a, 0x11, 0x46, 0x69, 0x74, 0x6e,
0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a,
0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x62,
0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x2c, 0x0a, 0x12, 0x46, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x62,
0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x62, 0x75, 0x66,
0x66, 0x69, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (

View File

@ -27,12 +27,11 @@ type DBPracticePillar struct {
unknownFields protoimpl.UnknownFields
Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index"` //柱子下标
Isunlock bool `protobuf:"varint,2,opt,name=isunlock,proto3" json:"isunlock"` //是否解锁
Hero string `protobuf:"bytes,3,opt,name=hero,proto3" json:"hero"` //当前练功英雄
Start int64 `protobuf:"varint,4,opt,name=start,proto3" json:"start"` //开始时间
End int64 `protobuf:"varint,5,opt,name=end,proto3" json:"end"` //结束时间
Lastbill int64 `protobuf:"varint,6,opt,name=lastbill,proto3" json:"lastbill"` //上次结账时间
Reward int32 `protobuf:"varint,7,opt,name=reward,proto3" json:"reward"` //奖励
Lv int32 `protobuf:"varint,2,opt,name=lv,proto3" json:"lv"` //柱子等级
Isunlock bool `protobuf:"varint,3,opt,name=isunlock,proto3" json:"isunlock"` //是否解锁
Hero string `protobuf:"bytes,4,opt,name=hero,proto3" json:"hero"` //当前练功英雄
Start int64 `protobuf:"varint,5,opt,name=start,proto3" json:"start"` //开始时间
End int64 `protobuf:"varint,6,opt,name=end,proto3" json:"end"` //结束时间
}
func (x *DBPracticePillar) Reset() {
@ -74,6 +73,13 @@ func (x *DBPracticePillar) GetIndex() int32 {
return 0
}
func (x *DBPracticePillar) GetLv() int32 {
if x != nil {
return x.Lv
}
return 0
}
func (x *DBPracticePillar) GetIsunlock() bool {
if x != nil {
return x.Isunlock
@ -102,20 +108,6 @@ func (x *DBPracticePillar) GetEnd() int64 {
return 0
}
func (x *DBPracticePillar) GetLastbill() int64 {
if x != nil {
return x.Lastbill
}
return 0
}
func (x *DBPracticePillar) GetReward() int32 {
if x != nil {
return x.Reward
}
return 0
}
//熊猫武馆教习
type DBPracticeTeacher struct {
state protoimpl.MessageState
@ -280,47 +272,45 @@ var File_practice_practice_db_proto protoreflect.FileDescriptor
var file_practice_practice_db_proto_rawDesc = []byte{
0x0a, 0x1a, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72, 0x61, 0x63, 0x74,
0x69, 0x63, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb4, 0x01, 0x0a,
0x69, 0x63, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x90, 0x01, 0x0a,
0x10, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61,
0x72, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x75, 0x6e, 0x6c,
0x6f, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x75, 0x6e, 0x6c,
0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28,
0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x02, 0x20,
0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x75, 0x6e, 0x6c,
0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x75, 0x6e, 0x6c,
0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74,
0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a,
0x03, 0x65, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x12,
0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x62, 0x69, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
0x03, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x62, 0x69, 0x6c, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x72,
0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x65, 0x77,
0x61, 0x72, 0x64, 0x22, 0x4f, 0x0a, 0x11, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63,
0x65, 0x54, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74,
0x75, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x75,
0x64, 0x65, 0x6e, 0x74, 0x22, 0xde, 0x02, 0x0a, 0x0e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74,
0x69, 0x63, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x39, 0x0a, 0x08, 0x6b, 0x6e, 0x61,
0x70, 0x73, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x44, 0x42,
0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x2e, 0x4b, 0x6e, 0x61,
0x70, 0x73, 0x61, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6b, 0x6e, 0x61, 0x70,
0x73, 0x61, 0x63, 0x6b, 0x12, 0x2b, 0x0a, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x31, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69,
0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72,
0x31, 0x12, 0x2b, 0x0a, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x32, 0x18, 0x05, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50,
0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x32, 0x12, 0x2b,
0x0a, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x33, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c,
0x61, 0x72, 0x52, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x33, 0x12, 0x2b, 0x0a, 0x07, 0x70,
0x69, 0x6c, 0x6c, 0x61, 0x72, 0x66, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44,
0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52,
0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x66, 0x1a, 0x3b, 0x0a, 0x0d, 0x4b, 0x6e, 0x61, 0x70,
0x73, 0x61, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x33,
0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a,
0x03, 0x65, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22,
0x4f, 0x0a, 0x11, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x54, 0x65, 0x61,
0x63, 0x68, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e,
0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74,
0x22, 0xde, 0x02, 0x0a, 0x0e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52,
0x6f, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x39, 0x0a, 0x08, 0x6b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63,
0x6b, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63,
0x74, 0x69, 0x63, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x2e, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63,
0x6b, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b,
0x12, 0x2b, 0x0a, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69,
0x6c, 0x6c, 0x61, 0x72, 0x52, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x31, 0x12, 0x2b, 0x0a,
0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11,
0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61,
0x72, 0x52, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x32, 0x12, 0x2b, 0x0a, 0x07, 0x70, 0x69,
0x6c, 0x6c, 0x61, 0x72, 0x33, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42,
0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52, 0x07,
0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x33, 0x12, 0x2b, 0x0a, 0x07, 0x70, 0x69, 0x6c, 0x6c, 0x61,
0x72, 0x66, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61,
0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52, 0x07, 0x70, 0x69, 0x6c,
0x6c, 0x61, 0x72, 0x66, 0x1a, 0x3b, 0x0a, 0x0d, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (

935
pb/practice_msg.pb.go Normal file
View File

@ -0,0 +1,935 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc v3.20.0
// source: practice/practice_msg.proto
package pb
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
///信息请求
type PracticeInfoReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *PracticeInfoReq) Reset() {
*x = PracticeInfoReq{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeInfoReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeInfoReq) ProtoMessage() {}
func (x *PracticeInfoReq) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeInfoReq.ProtoReflect.Descriptor instead.
func (*PracticeInfoReq) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{0}
}
///信息请求 回应
type PracticeInfoResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Info *DBPracticeRoom `protobuf:"bytes,1,opt,name=info,proto3" json:"info"`
}
func (x *PracticeInfoResp) Reset() {
*x = PracticeInfoResp{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeInfoResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeInfoResp) ProtoMessage() {}
func (x *PracticeInfoResp) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeInfoResp.ProtoReflect.Descriptor instead.
func (*PracticeInfoResp) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{1}
}
func (x *PracticeInfoResp) GetInfo() *DBPracticeRoom {
if x != nil {
return x.Info
}
return nil
}
///升级请求
type PracticeUpgradeReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index"` //柱子id
}
func (x *PracticeUpgradeReq) Reset() {
*x = PracticeUpgradeReq{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeUpgradeReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeUpgradeReq) ProtoMessage() {}
func (x *PracticeUpgradeReq) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeUpgradeReq.ProtoReflect.Descriptor instead.
func (*PracticeUpgradeReq) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{2}
}
func (x *PracticeUpgradeReq) GetIndex() int32 {
if x != nil {
return x.Index
}
return 0
}
type PracticeUpgradeResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index"` //柱子id
Lv int32 `protobuf:"varint,2,opt,name=lv,proto3" json:"lv"`
}
func (x *PracticeUpgradeResp) Reset() {
*x = PracticeUpgradeResp{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeUpgradeResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeUpgradeResp) ProtoMessage() {}
func (x *PracticeUpgradeResp) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeUpgradeResp.ProtoReflect.Descriptor instead.
func (*PracticeUpgradeResp) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{3}
}
func (x *PracticeUpgradeResp) GetIndex() int32 {
if x != nil {
return x.Index
}
return 0
}
func (x *PracticeUpgradeResp) GetLv() int32 {
if x != nil {
return x.Lv
}
return 0
}
///练功请求
type PracticePracticeReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index"` //柱子id
Hero string `protobuf:"bytes,2,opt,name=hero,proto3" json:"hero"` //训练英雄id
Teacher string `protobuf:"bytes,3,opt,name=teacher,proto3" json:"teacher"` //教习id
Prop string `protobuf:"bytes,4,opt,name=prop,proto3" json:"prop"` //道具id
}
func (x *PracticePracticeReq) Reset() {
*x = PracticePracticeReq{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticePracticeReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticePracticeReq) ProtoMessage() {}
func (x *PracticePracticeReq) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticePracticeReq.ProtoReflect.Descriptor instead.
func (*PracticePracticeReq) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{4}
}
func (x *PracticePracticeReq) GetIndex() int32 {
if x != nil {
return x.Index
}
return 0
}
func (x *PracticePracticeReq) GetHero() string {
if x != nil {
return x.Hero
}
return ""
}
func (x *PracticePracticeReq) GetTeacher() string {
if x != nil {
return x.Teacher
}
return ""
}
func (x *PracticePracticeReq) GetProp() string {
if x != nil {
return x.Prop
}
return ""
}
type PracticePracticeResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index"` //柱子id
Hero string `protobuf:"bytes,2,opt,name=hero,proto3" json:"hero"` //训练英雄id
Teacher string `protobuf:"bytes,3,opt,name=teacher,proto3" json:"teacher"` //教习id
Prop string `protobuf:"bytes,4,opt,name=prop,proto3" json:"prop"` //道具id
}
func (x *PracticePracticeResp) Reset() {
*x = PracticePracticeResp{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticePracticeResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticePracticeResp) ProtoMessage() {}
func (x *PracticePracticeResp) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticePracticeResp.ProtoReflect.Descriptor instead.
func (*PracticePracticeResp) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{5}
}
func (x *PracticePracticeResp) GetIndex() int32 {
if x != nil {
return x.Index
}
return 0
}
func (x *PracticePracticeResp) GetHero() string {
if x != nil {
return x.Hero
}
return ""
}
func (x *PracticePracticeResp) GetTeacher() string {
if x != nil {
return x.Teacher
}
return ""
}
func (x *PracticePracticeResp) GetProp() string {
if x != nil {
return x.Prop
}
return ""
}
///蹭馆请求
type PracticeLootReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Friend string `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` //好友id
Hero string `protobuf:"bytes,2,opt,name=hero,proto3" json:"hero"` //训练英雄id
Teacher string `protobuf:"bytes,3,opt,name=teacher,proto3" json:"teacher"` //教习id
Prop string `protobuf:"bytes,4,opt,name=prop,proto3" json:"prop"` //道具id
}
func (x *PracticeLootReq) Reset() {
*x = PracticeLootReq{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeLootReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeLootReq) ProtoMessage() {}
func (x *PracticeLootReq) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeLootReq.ProtoReflect.Descriptor instead.
func (*PracticeLootReq) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{6}
}
func (x *PracticeLootReq) GetFriend() string {
if x != nil {
return x.Friend
}
return ""
}
func (x *PracticeLootReq) GetHero() string {
if x != nil {
return x.Hero
}
return ""
}
func (x *PracticeLootReq) GetTeacher() string {
if x != nil {
return x.Teacher
}
return ""
}
func (x *PracticeLootReq) GetProp() string {
if x != nil {
return x.Prop
}
return ""
}
type PracticeLootResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Friend string `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` //好友id
Hero string `protobuf:"bytes,2,opt,name=hero,proto3" json:"hero"` //训练英雄id
Teacher string `protobuf:"bytes,3,opt,name=teacher,proto3" json:"teacher"` //教习id
Prop string `protobuf:"bytes,4,opt,name=prop,proto3" json:"prop"` //道具id
}
func (x *PracticeLootResp) Reset() {
*x = PracticeLootResp{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeLootResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeLootResp) ProtoMessage() {}
func (x *PracticeLootResp) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeLootResp.ProtoReflect.Descriptor instead.
func (*PracticeLootResp) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{7}
}
func (x *PracticeLootResp) GetFriend() string {
if x != nil {
return x.Friend
}
return ""
}
func (x *PracticeLootResp) GetHero() string {
if x != nil {
return x.Hero
}
return ""
}
func (x *PracticeLootResp) GetTeacher() string {
if x != nil {
return x.Teacher
}
return ""
}
func (x *PracticeLootResp) GetProp() string {
if x != nil {
return x.Prop
}
return ""
}
///驱逐
type PracticeExpulsionReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *PracticeExpulsionReq) Reset() {
*x = PracticeExpulsionReq{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeExpulsionReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeExpulsionReq) ProtoMessage() {}
func (x *PracticeExpulsionReq) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeExpulsionReq.ProtoReflect.Descriptor instead.
func (*PracticeExpulsionReq) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{8}
}
type PracticeExpulsionResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *PracticeExpulsionResp) Reset() {
*x = PracticeExpulsionResp{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeExpulsionResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeExpulsionResp) ProtoMessage() {}
func (x *PracticeExpulsionResp) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeExpulsionResp.ProtoReflect.Descriptor instead.
func (*PracticeExpulsionResp) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{9}
}
///领取收益
type PracticeReceiveReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Index int32 `protobuf:"varint,1,opt,name=index,proto3" json:"index"` //柱子id
Friend string `protobuf:"bytes,2,opt,name=friend,proto3" json:"friend"` //好友id
}
func (x *PracticeReceiveReq) Reset() {
*x = PracticeReceiveReq{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeReceiveReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeReceiveReq) ProtoMessage() {}
func (x *PracticeReceiveReq) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeReceiveReq.ProtoReflect.Descriptor instead.
func (*PracticeReceiveReq) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{10}
}
func (x *PracticeReceiveReq) GetIndex() int32 {
if x != nil {
return x.Index
}
return 0
}
func (x *PracticeReceiveReq) GetFriend() string {
if x != nil {
return x.Friend
}
return ""
}
type PracticeReceiveResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *PracticeReceiveResp) Reset() {
*x = PracticeReceiveResp{}
if protoimpl.UnsafeEnabled {
mi := &file_practice_practice_msg_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PracticeReceiveResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PracticeReceiveResp) ProtoMessage() {}
func (x *PracticeReceiveResp) ProtoReflect() protoreflect.Message {
mi := &file_practice_practice_msg_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PracticeReceiveResp.ProtoReflect.Descriptor instead.
func (*PracticeReceiveResp) Descriptor() ([]byte, []int) {
return file_practice_practice_msg_proto_rawDescGZIP(), []int{11}
}
var File_practice_practice_msg_proto protoreflect.FileDescriptor
var file_practice_practice_msg_proto_rawDesc = []byte{
0x0a, 0x1b, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72, 0x61, 0x63, 0x74,
0x69, 0x63, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x70,
0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65,
0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x11, 0x0a, 0x0f, 0x50, 0x72, 0x61,
0x63, 0x74, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x22, 0x37, 0x0a, 0x10,
0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70,
0x12, 0x23, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x52,
0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x2a, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63,
0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69,
0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65,
0x78, 0x22, 0x3b, 0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x55, 0x70, 0x67,
0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65,
0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0e,
0x0a, 0x02, 0x6c, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x22, 0x6d,
0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69,
0x63, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01,
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x68,
0x65, 0x72, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12,
0x18, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x72, 0x6f,
0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x22, 0x6e, 0x0a,
0x14, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63,
0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01,
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x68,
0x65, 0x72, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12,
0x18, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x72, 0x6f,
0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x22, 0x6b, 0x0a,
0x0f, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x71,
0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x18, 0x0a, 0x07,
0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74,
0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x18, 0x04,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x22, 0x6c, 0x0a, 0x10, 0x50, 0x72,
0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4c, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16,
0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x65,
0x61, 0x63, 0x68, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61,
0x63, 0x68, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x18, 0x04, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x22, 0x16, 0x0a, 0x14, 0x50, 0x72, 0x61, 0x63,
0x74, 0x69, 0x63, 0x65, 0x45, 0x78, 0x70, 0x75, 0x6c, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
0x22, 0x17, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x45, 0x78, 0x70, 0x75,
0x6c, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x42, 0x0a, 0x12, 0x50, 0x72, 0x61,
0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x12,
0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, 0x15, 0x0a,
0x13, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
0x52, 0x65, 0x73, 0x70, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
}
var (
file_practice_practice_msg_proto_rawDescOnce sync.Once
file_practice_practice_msg_proto_rawDescData = file_practice_practice_msg_proto_rawDesc
)
func file_practice_practice_msg_proto_rawDescGZIP() []byte {
file_practice_practice_msg_proto_rawDescOnce.Do(func() {
file_practice_practice_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_practice_practice_msg_proto_rawDescData)
})
return file_practice_practice_msg_proto_rawDescData
}
var file_practice_practice_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
var file_practice_practice_msg_proto_goTypes = []interface{}{
(*PracticeInfoReq)(nil), // 0: PracticeInfoReq
(*PracticeInfoResp)(nil), // 1: PracticeInfoResp
(*PracticeUpgradeReq)(nil), // 2: PracticeUpgradeReq
(*PracticeUpgradeResp)(nil), // 3: PracticeUpgradeResp
(*PracticePracticeReq)(nil), // 4: PracticePracticeReq
(*PracticePracticeResp)(nil), // 5: PracticePracticeResp
(*PracticeLootReq)(nil), // 6: PracticeLootReq
(*PracticeLootResp)(nil), // 7: PracticeLootResp
(*PracticeExpulsionReq)(nil), // 8: PracticeExpulsionReq
(*PracticeExpulsionResp)(nil), // 9: PracticeExpulsionResp
(*PracticeReceiveReq)(nil), // 10: PracticeReceiveReq
(*PracticeReceiveResp)(nil), // 11: PracticeReceiveResp
(*DBPracticeRoom)(nil), // 12: DBPracticeRoom
}
var file_practice_practice_msg_proto_depIdxs = []int32{
12, // 0: PracticeInfoResp.info:type_name -> DBPracticeRoom
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_practice_practice_msg_proto_init() }
func file_practice_practice_msg_proto_init() {
if File_practice_practice_msg_proto != nil {
return
}
file_practice_practice_db_proto_init()
if !protoimpl.UnsafeEnabled {
file_practice_practice_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeInfoReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeInfoResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeUpgradeReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeUpgradeResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticePracticeReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticePracticeResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeLootReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeLootResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeExpulsionReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeExpulsionResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeReceiveReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_practice_practice_msg_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PracticeReceiveResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_practice_practice_msg_proto_rawDesc,
NumEnums: 0,
NumMessages: 12,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_practice_practice_msg_proto_goTypes,
DependencyIndexes: file_practice_practice_msg_proto_depIdxs,
MessageInfos: file_practice_practice_msg_proto_msgTypes,
}.Build()
File_practice_practice_msg_proto = out.File
file_practice_practice_msg_proto_rawDesc = nil
file_practice_practice_msg_proto_goTypes = nil
file_practice_practice_msg_proto_depIdxs = nil
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GamePandamasBuff struct {
_dataMap map[int32]*GamePandamasBuffData
_dataList []*GamePandamasBuffData
}
func NewGamePandamasBuff(_buf []map[string]interface{}) (*GamePandamasBuff, error) {
_dataList := make([]*GamePandamasBuffData, 0, len(_buf))
dataMap := make(map[int32]*GamePandamasBuffData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGamePandamasBuffData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GamePandamasBuff{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GamePandamasBuff) GetDataMap() map[int32]*GamePandamasBuffData {
return table._dataMap
}
func (table *GamePandamasBuff) GetDataList() []*GamePandamasBuffData {
return table._dataList
}
func (table *GamePandamasBuff) Get(key int32) *GamePandamasBuffData {
return table._dataMap[key]
}

View File

@ -0,0 +1,51 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GamePandamasBuffData struct {
Id int32
BuffGroup int32
Duration string
CampRestriction int32
OccupationalRestrictions int32
StarLimit int32
Buffid int32
P int32
Name string
}
const TypeId_GamePandamasBuffData = -974781058
func (*GamePandamasBuffData) GetTypeId() int32 {
return -974781058
}
func (_v *GamePandamasBuffData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["buff_group"].(float64); !_ok_ { err = errors.New("buff_group error"); return }; _v.BuffGroup = int32(_tempNum_) }
{ var _ok_ bool; if _v.Duration, _ok_ = _buf["duration"].(string); !_ok_ { err = errors.New("duration error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["camp_restriction"].(float64); !_ok_ { err = errors.New("camp_restriction error"); return }; _v.CampRestriction = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["occupational_restrictions"].(float64); !_ok_ { err = errors.New("occupational_restrictions error"); return }; _v.OccupationalRestrictions = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["star_limit"].(float64); !_ok_ { err = errors.New("star_limit error"); return }; _v.StarLimit = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["buffid"].(float64); !_ok_ { err = errors.New("buffid error"); return }; _v.Buffid = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["p"].(float64); !_ok_ { err = errors.New("p error"); return }; _v.P = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
return
}
func DeserializeGamePandamasBuffData(_buf map[string]interface{}) (*GamePandamasBuffData, error) {
v := &GamePandamasBuffData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GamePandamasJs struct {
_dataMap map[int32]*GamePandamasJsData
_dataList []*GamePandamasJsData
}
func NewGamePandamasJs(_buf []map[string]interface{}) (*GamePandamasJs, error) {
_dataList := make([]*GamePandamasJsData, 0, len(_buf))
dataMap := make(map[int32]*GamePandamasJsData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGamePandamasJsData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GamePandamasJs{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GamePandamasJs) GetDataMap() map[int32]*GamePandamasJsData {
return table._dataMap
}
func (table *GamePandamasJs) GetDataList() []*GamePandamasJsData {
return table._dataList
}
func (table *GamePandamasJs) Get(key int32) *GamePandamasJsData {
return table._dataMap[key]
}

View File

@ -0,0 +1,37 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GamePandamasJsData struct {
Id int32
UnlockCondition string
}
const TypeId_GamePandamasJsData = -1008362572
func (*GamePandamasJsData) GetTypeId() int32 {
return -1008362572
}
func (_v *GamePandamasJsData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{ var _ok_ bool; if _v.UnlockCondition, _ok_ = _buf["unlock_condition"].(string); !_ok_ { err = errors.New("unlock_condition error"); return } }
return
}
func DeserializeGamePandamasJsData(_buf map[string]interface{}) (*GamePandamasJsData, error) {
v := &GamePandamasJsData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GamePandamasJx struct {
_dataMap map[string]*GamePandamasJxData
_dataList []*GamePandamasJxData
}
func NewGamePandamasJx(_buf []map[string]interface{}) (*GamePandamasJx, error) {
_dataList := make([]*GamePandamasJxData, 0, len(_buf))
dataMap := make(map[string]*GamePandamasJxData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGamePandamasJxData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GamePandamasJx{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GamePandamasJx) GetDataMap() map[string]*GamePandamasJxData {
return table._dataMap
}
func (table *GamePandamasJx) GetDataList() []*GamePandamasJxData {
return table._dataList
}
func (table *GamePandamasJx) Get(key string) *GamePandamasJxData {
return table._dataMap[key]
}

View File

@ -0,0 +1,104 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GamePandamasJxData struct {
Id string
Type int32
Name string
Color int32
Effects string
Access int32
Img string
Ico string
Intr string
Description string
Duration int32
Exp int32
Probability int32
Ants []*Gameatn
Wget []int32
Num []int32
}
const TypeId_GamePandamasJxData = -1003744967
func (*GamePandamasJxData) GetTypeId() int32 {
return -1003744967
}
func (_v *GamePandamasJxData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; if _v.Id, _ok_ = _buf["id"].(string); !_ok_ { err = errors.New("id error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
{ var _ok_ bool; if _v.Name, _ok_ = _buf["name"].(string); !_ok_ { err = errors.New("name error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["color"].(float64); !_ok_ { err = errors.New("color error"); return }; _v.Color = int32(_tempNum_) }
{ var _ok_ bool; if _v.Effects, _ok_ = _buf["effects"].(string); !_ok_ { err = errors.New("effects error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["access"].(float64); !_ok_ { err = errors.New("access error"); return }; _v.Access = int32(_tempNum_) }
{ var _ok_ bool; if _v.Img, _ok_ = _buf["img"].(string); !_ok_ { err = errors.New("img error"); return } }
{ var _ok_ bool; if _v.Ico, _ok_ = _buf["ico"].(string); !_ok_ { err = errors.New("ico error"); return } }
{ var _ok_ bool; if _v.Intr, _ok_ = _buf["intr"].(string); !_ok_ { err = errors.New("intr error"); return } }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["description"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Description error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Description, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["duration"].(float64); !_ok_ { err = errors.New("duration error"); return }; _v.Duration = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["exp"].(float64); !_ok_ { err = errors.New("exp error"); return }; _v.Exp = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["probability"].(float64); !_ok_ { err = errors.New("probability error"); return }; _v.Probability = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["ants"].([]interface{}); !_ok_ { err = errors.New("ants error"); return }
_v.Ants = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.Ants = append(_v.Ants, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["wget"].([]interface{}); !_ok_ { err = errors.New("wget error"); return }
_v.Wget = make([]int32, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ int32
{ var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
_v.Wget = append(_v.Wget, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["num"].([]interface{}); !_ok_ { err = errors.New("num error"); return }
_v.Num = make([]int32, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ int32
{ var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
_v.Num = append(_v.Num, _list_v_)
}
}
return
}
func DeserializeGamePandamasJxData(_buf map[string]interface{}) (*GamePandamasJxData, error) {
v := &GamePandamasJxData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GamePandamasMryl struct {
_dataMap map[int32]*GamePandamasMrylData
_dataList []*GamePandamasMrylData
}
func NewGamePandamasMryl(_buf []map[string]interface{}) (*GamePandamasMryl, error) {
_dataList := make([]*GamePandamasMrylData, 0, len(_buf))
dataMap := make(map[int32]*GamePandamasMrylData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGamePandamasMrylData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GamePandamasMryl{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GamePandamasMryl) GetDataMap() map[int32]*GamePandamasMrylData {
return table._dataMap
}
func (table *GamePandamasMryl) GetDataList() []*GamePandamasMrylData {
return table._dataList
}
func (table *GamePandamasMryl) Get(key int32) *GamePandamasMrylData {
return table._dataMap[key]
}

View File

@ -0,0 +1,39 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GamePandamasMrylData struct {
Id int32
Name string
BuffGroup int32
}
const TypeId_GamePandamasMrylData = -1096752605
func (*GamePandamasMrylData) GetTypeId() int32 {
return -1096752605
}
func (_v *GamePandamasMrylData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["buff_group"].(float64); !_ok_ { err = errors.New("buff_group error"); return }; _v.BuffGroup = int32(_tempNum_) }
return
}
func DeserializeGamePandamasMrylData(_buf map[string]interface{}) (*GamePandamasMrylData, error) {
v := &GamePandamasMrylData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GamePandamasMz struct {
_dataMap map[int32]*GamePandamasMzData
_dataList []*GamePandamasMzData
}
func NewGamePandamasMz(_buf []map[string]interface{}) (*GamePandamasMz, error) {
_dataList := make([]*GamePandamasMzData, 0, len(_buf))
dataMap := make(map[int32]*GamePandamasMzData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGamePandamasMzData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Lv] = _v
}
}
return &GamePandamasMz{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GamePandamasMz) GetDataMap() map[int32]*GamePandamasMzData {
return table._dataMap
}
func (table *GamePandamasMz) GetDataList() []*GamePandamasMzData {
return table._dataList
}
func (table *GamePandamasMz) Get(key int32) *GamePandamasMzData {
return table._dataMap[key]
}

View File

@ -0,0 +1,77 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GamePandamasMzData struct {
Lv int32
Name string
PileAppearance string
Effect string
UpLvConsume []*Gameatn
MinExp int32
PlacementDuration int32
PropPosition int32
PhotoGuideUnlocking []*Gameatn
}
const TypeId_GamePandamasMzData = -916010472
func (*GamePandamasMzData) GetTypeId() int32 {
return -916010472
}
func (_v *GamePandamasMzData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lv"].(float64); !_ok_ { err = errors.New("lv error"); return }; _v.Lv = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; if _v.PileAppearance, _ok_ = _buf["pile_appearance"].(string); !_ok_ { err = errors.New("pile_appearance error"); return } }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["effect"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Effect error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Effect, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["up_lv_consume"].([]interface{}); !_ok_ { err = errors.New("up_lv_consume error"); return }
_v.UpLvConsume = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.UpLvConsume = append(_v.UpLvConsume, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["min_exp"].(float64); !_ok_ { err = errors.New("min_exp error"); return }; _v.MinExp = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["placement_duration"].(float64); !_ok_ { err = errors.New("placement_duration error"); return }; _v.PlacementDuration = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["prop_position"].(float64); !_ok_ { err = errors.New("prop_position error"); return }; _v.PropPosition = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["photo_guide_unlocking"].([]interface{}); !_ok_ { err = errors.New("photo_guide_unlocking error"); return }
_v.PhotoGuideUnlocking = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.PhotoGuideUnlocking = append(_v.PhotoGuideUnlocking, _list_v_)
}
}
return
}
func DeserializeGamePandamasMzData(_buf map[string]interface{}) (*GamePandamasMzData, error) {
v := &GamePandamasMzData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GamePandamasTj struct {
_dataMap map[string]*GamePandamasTjData
_dataList []*GamePandamasTjData
}
func NewGamePandamasTj(_buf []map[string]interface{}) (*GamePandamasTj, error) {
_dataList := make([]*GamePandamasTjData, 0, len(_buf))
dataMap := make(map[string]*GamePandamasTjData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGamePandamasTjData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GamePandamasTj{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GamePandamasTj) GetDataMap() map[string]*GamePandamasTjData {
return table._dataMap
}
func (table *GamePandamasTj) GetDataList() []*GamePandamasTjData {
return table._dataList
}
func (table *GamePandamasTj) Get(key string) *GamePandamasTjData {
return table._dataMap[key]
}

View File

@ -0,0 +1,45 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GamePandamasTjData struct {
Id string
TabId int32
NameText string
EffectText string
ContentText string
AtlasScore int32
}
const TypeId_GamePandamasTjData = -730382751
func (*GamePandamasTjData) GetTypeId() int32 {
return -730382751
}
func (_v *GamePandamasTjData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; if _v.Id, _ok_ = _buf["id"].(string); !_ok_ { err = errors.New("id error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["tab_id"].(float64); !_ok_ { err = errors.New("tab_id error"); return }; _v.TabId = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name_text"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.NameText error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.NameText, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["effect_text"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.EffectText error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.EffectText, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["content_text"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.ContentText error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.ContentText, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["atlas_score"].(float64); !_ok_ { err = errors.New("atlas_score error"); return }; _v.AtlasScore = int32(_tempNum_) }
return
}
func DeserializeGamePandamasTjData(_buf map[string]interface{}) (*GamePandamasTjData, error) {
v := &GamePandamasTjData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GamePandamasTjjl struct {
_dataMap map[int32]*GamePandamasTjjlData
_dataList []*GamePandamasTjjlData
}
func NewGamePandamasTjjl(_buf []map[string]interface{}) (*GamePandamasTjjl, error) {
_dataList := make([]*GamePandamasTjjlData, 0, len(_buf))
dataMap := make(map[int32]*GamePandamasTjjlData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGamePandamasTjjlData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.AtlasLv] = _v
}
}
return &GamePandamasTjjl{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GamePandamasTjjl) GetDataMap() map[int32]*GamePandamasTjjlData {
return table._dataMap
}
func (table *GamePandamasTjjl) GetDataList() []*GamePandamasTjjlData {
return table._dataList
}
func (table *GamePandamasTjjl) Get(key int32) *GamePandamasTjjlData {
return table._dataMap[key]
}

View File

@ -0,0 +1,52 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GamePandamasTjjlData struct {
AtlasLv int32
AtlasScore int32
ItemId []*Gameatn
}
const TypeId_GamePandamasTjjlData = -721514269
func (*GamePandamasTjjlData) GetTypeId() int32 {
return -721514269
}
func (_v *GamePandamasTjjlData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["atlas_lv"].(float64); !_ok_ { err = errors.New("atlas_lv error"); return }; _v.AtlasLv = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["atlas_score"].(float64); !_ok_ { err = errors.New("atlas_score error"); return }; _v.AtlasScore = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["item_id"].([]interface{}); !_ok_ { err = errors.New("item_id error"); return }
_v.ItemId = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.ItemId = append(_v.ItemId, _list_v_)
}
}
return
}
func DeserializeGamePandamasTjjlData(_buf map[string]interface{}) (*GamePandamasTjjlData, error) {
v := &GamePandamasTjjlData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -14,7 +14,6 @@ type GamepandsmasexpData struct {
Id int32
Bossid int32
Name string
ReadyID int32
Difficulty int32
Numrounds int32
BattleReadyID int32
@ -40,7 +39,6 @@ func (_v *GamepandsmasexpData)Deserialize(_buf map[string]interface{}) (err erro
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["bossid"].(float64); !_ok_ { err = errors.New("bossid error"); return }; _v.Bossid = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ReadyID"].(float64); !_ok_ { err = errors.New("ReadyID error"); return }; _v.ReadyID = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["difficulty"].(float64); !_ok_ { err = errors.New("difficulty error"); return }; _v.Difficulty = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Numrounds"].(float64); !_ok_ { err = errors.New("Numrounds error"); return }; _v.Numrounds = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BattleReadyID"].(float64); !_ok_ { err = errors.New("BattleReadyID error"); return }; _v.BattleReadyID = int32(_tempNum_) }