上传菜单配置

This commit is contained in:
liwei1dao 2023-11-10 16:27:29 +08:00
parent fdaea60040
commit 567e854ccd
32 changed files with 5107 additions and 437 deletions

View File

@ -1338,6 +1338,40 @@
"CanFriendHelp": 0,
"Numrounds": 0
},
{
"id": 139,
"PlayType": 0,
"HeroCount": 5,
"readyScene": "scenesfight_role_interface_05",
"battleScenes": [
"scenesfight_11"
],
"BGMusic": "",
"LoadingId": 0,
"HideAlienSpace": 0,
"RuleTips": {
"key": "",
"text": ""
},
"BattleTips": {
"key": "",
"text": ""
},
"battleEvents": [],
"ScoreGroupID": 0,
"disableAiCamera": 0,
"ChoseCamp": [],
"DisableCamp": [],
"DefaultHero": 0,
"ChoseHero": [],
"DisableHero": [],
"LockSlots": [],
"HeroCheck": [],
"RedAssistTeam": 0,
"BlueAssistTeam": 0,
"CanFriendHelp": 0,
"Numrounds": 0
},
{
"id": 201,
"PlayType": 0,

View File

@ -32936,7 +32936,7 @@
"text": "看看希卡普在哪?"
},
"type": 20001,
"valid": 0,
"valid": 1,
"head": {
"a": "attr",
"t": "gold",
@ -32949,5 +32949,105 @@
7000020
],
"filter2": []
},
{
"id": 600000020,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1135",
"text": "阿宝娃娃"
},
"type": 187,
"valid": 1,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
28000001
],
"filter2": []
},
{
"id": 600000030,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1136",
"text": "小虎娃娃"
},
"type": 187,
"valid": 1,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
28000002
],
"filter2": []
},
{
"id": 600000040,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1137",
"text": "螳螂娃娃"
},
"type": 187,
"valid": 1,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
28000003
],
"filter2": []
},
{
"id": 600000050,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1138",
"text": "金猴娃娃"
},
"type": 187,
"valid": 1,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
28000004
],
"filter2": []
}
]

View File

@ -614,5 +614,38 @@
"n": 1
}
]
},
{
"id": 20,
"name": {
"key": "gamesummary_node_name_20",
"text": "兔子与猎犬"
},
"tabId": 13,
"mapPos": {
"x": 3595,
"y": 1742
},
"type": 4,
"params": "",
"jumpId": 10064,
"introduce": {
"key": "gamesummary_node_introdunce_21",
"text": "兔子与猎犬"
},
"bg": "hkz_wftj_zxgk",
"icon": "hkz_tx_zxgk",
"dropshow": [
{
"a": "attr",
"t": "gold",
"n": 1
},
{
"a": "attr",
"t": "diamond",
"n": 1
}
]
}
]

View File

@ -739,14 +739,14 @@
"buzkashi_stime": 3000,
"buzkashi_sendtime": 1000,
"buzkashi_speedbumptime": 3000,
"buzkashi_speedbumphp": 1,
"buzkashi_speedbumphp": 10,
"buzkashi_sprintbumpscore": 5,
"buzkashi_goalscore": 5,
"buzkashi_goalteamscore": 10,
"buzkashi_bumpdis": 5,
"buzkashi_hpbumpdis": 5,
"buzkashi_hpbumpscore": 5,
"buzkashi_hpbumphp": 100,
"buzkashi_hpbumphp": 300,
"buzkashi_recovertime": 2000,
"buzkashi_recoverHp": 1,
"buzkashi_deathspeed": 800,
@ -882,6 +882,7 @@
"t": "consumeexp",
"n": 1
},
"td_Hp": 100
"td_Hp": 100,
"td_division_angle": 3
}
]

View File

@ -21226,5 +21226,169 @@
},
"sale": [],
"gm": 0
},
{
"id": "28000001",
"name": {
"key": "item_item_name_430",
"text": "阿宝娃娃"
},
"usetype": 1,
"color": 4,
"bagtype": 1,
"index": 1,
"special_type": 0,
"hold": 0,
"time": 0,
"reddottype": 0,
"effects": "",
"modelName": "",
"box_id": 0,
"synthetize_num": 0,
"synthetize_deplete": [],
"synthetize_get": [],
"decompose_deplete": [],
"decompose_get": [],
"access": [],
"use_skip": 0,
"upper_limit": 0,
"img": "item_28000001",
"intr": {
"key": "item_item_intr_432",
"text": "一个酷似阿宝的玩具,不知道有什么作用。"
},
"describe": {
"key": "item_item_describe_432",
"text": "有些污渍在上面,但那张黑白相间的圆脸依旧可爱。"
},
"dialogue": {
"key": "item_item_dialogue_430",
"text": "【怎么样,我手艺不错吧。】"
},
"sale": [],
"gm": 0
},
{
"id": "28000002",
"name": {
"key": "item_item_name_431",
"text": "小虎娃娃"
},
"usetype": 1,
"color": 4,
"bagtype": 1,
"index": 1,
"special_type": 0,
"hold": 0,
"time": 0,
"reddottype": 0,
"effects": "",
"modelName": "",
"box_id": 0,
"synthetize_num": 0,
"synthetize_deplete": [],
"synthetize_get": [],
"decompose_deplete": [],
"decompose_get": [],
"access": [],
"use_skip": 0,
"upper_limit": 0,
"img": "item_28000002",
"intr": {
"key": "item_item_intr_433",
"text": "一个酷似小虎的玩具,不知道有什么作用。"
},
"describe": {
"key": "item_item_describe_433",
"text": "看的出来,曾经的主人十分喜爱它。"
},
"dialogue": {
"key": "item_item_dialogue_431",
"text": "【你说,我会成为神龙大侠吗?】"
},
"sale": [],
"gm": 0
},
{
"id": "28000003",
"name": {
"key": "item_item_name_432",
"text": "螳螂娃娃"
},
"usetype": 1,
"color": 4,
"bagtype": 1,
"index": 1,
"special_type": 0,
"hold": 0,
"time": 0,
"reddottype": 0,
"effects": "",
"modelName": "",
"box_id": 0,
"synthetize_num": 0,
"synthetize_deplete": [],
"synthetize_get": [],
"decompose_deplete": [],
"decompose_get": [],
"access": [],
"use_skip": 0,
"upper_limit": 0,
"img": "item_24012001",
"intr": {
"key": "item_item_intr_434",
"text": "一个酷似螳螂的玩具,不知道有什么作用。"
},
"describe": {
"key": "item_item_describe_434",
"text": "小东西,大力量。"
},
"dialogue": {
"key": "item_item_dialogue_432",
"text": "【他们又忘记喊我了?】"
},
"sale": [],
"gm": 0
},
{
"id": "28000004",
"name": {
"key": "item_item_name_433",
"text": "金猴娃娃"
},
"usetype": 1,
"color": 4,
"bagtype": 1,
"index": 1,
"special_type": 0,
"hold": 0,
"time": 0,
"reddottype": 0,
"effects": "",
"modelName": "",
"box_id": 0,
"synthetize_num": 0,
"synthetize_deplete": [],
"synthetize_get": [],
"decompose_deplete": [],
"decompose_get": [],
"access": [],
"use_skip": 0,
"upper_limit": 0,
"img": "item_24012002",
"intr": {
"key": "item_item_intr_435",
"text": "一个酷似金猴的玩具,不知道有什么作用。"
},
"describe": {
"key": "item_item_describe_435",
"text": "它手里空握着什么,或许是遗失了一根棍子?"
},
"dialogue": {
"key": "item_item_dialogue_433",
"text": "【嗯,谢谢你的礼物。】"
},
"sale": [],
"gm": 0
}
]

View File

@ -9563,5 +9563,51 @@
7000020
],
"goto": 0
},
{
"id": 600018,
"heroid": 0,
"Levelid": 0,
"datas": [],
"event": [],
"goto": 0
},
{
"id": 600020,
"heroid": 25001,
"Levelid": 0,
"datas": [
"WuGuanScene",
"彩蛋-小娃娃",
"137"
],
"event": [
2,
7000030
],
"goto": 0
},
{
"id": 600021,
"heroid": 25001,
"Levelid": 0,
"datas": [],
"event": [],
"goto": 0
},
{
"id": 600028,
"heroid": 25001,
"Levelid": 0,
"datas": [
"GameMain",
"阿宝",
"901"
],
"event": [
2,
7000040
],
"goto": 0
}
]

View File

@ -1,26 +1,32 @@
[
{
"key": 1,
"optionName": {
"key": "111",
"text": "清扫场地"
},
"model": "组件名称",
"num": 5,
"thing": "",
"type": [
"actionType": 5,
"actionParam": "5#timeline_target",
"num": 2,
"triggerWeight": [
90,
10
],
"typeone": [],
"typetwo": [],
"cd": {
"triggerOne": [
7000050
],
"triggerTwo": [
{
"a": "item",
"t": "10000001",
"n": 5
}
],
"cdText": {
"key": "repeat_repeat_all_cdtxt_01",
"text": "地面干净了不少。"
},
"cdtime": 18000,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
"cdtime": 18000
}
]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -9298,5 +9298,26 @@
"Callback": [
245012312
]
},
{
"Id": 435012211,
"When": 21,
"FromCheck": "Target=3",
"TargetCheck": "",
"MainSkillCheck": "",
"AfterSkillCheck": "",
"BuffCheck": "",
"DpsCheck": "",
"AddCon": [],
"PasPr": 1000,
"PasCorrection": 0,
"Type": "CallSkillPas",
"MaxEmitTimesInRoundByRole": 0,
"MaxEmitTimes": 0,
"MaxEmitTimesInRound": 1,
"Callback": [
235012212,
235012213
]
}
]

View File

@ -1,6 +1,7 @@
[
{
"id": 1,
"icon": "",
"name": {
"key": "td_t_weapon_name1",
"text": "法杖"
@ -15,11 +16,15 @@
"bulletPrefab": "",
"fly_speed": 10,
"hitRange": 1,
"data": 0,
"hitNum": 0,
"num": 0,
"explosion_Range": 0,
"catapult": 0,
"pro": 1000
},
{
"id": 2,
"icon": "",
"name": {
"key": "td_t_weapon_name2",
"text": "爆炎弹"
@ -34,11 +39,15 @@
"bulletPrefab": "",
"fly_speed": 8,
"hitRange": 1,
"data": 50,
"hitNum": 0,
"num": 0,
"explosion_Range": 3,
"catapult": 0,
"pro": 1000
},
{
"id": 3,
"icon": "",
"name": {
"key": "td_t_weapon_name3",
"text": "弹力球"
@ -53,7 +62,10 @@
"bulletPrefab": "",
"fly_speed": 10,
"hitRange": 1,
"data": 3,
"hitNum": 0,
"num": 0,
"explosion_Range": 0,
"catapult": 0,
"pro": 1000
}
]

View File

@ -0,0 +1,67 @@
[
{
"id": 1,
"weapon_id": 1,
"skill_id": 1001
},
{
"id": 2,
"weapon_id": 1,
"skill_id": 1002
},
{
"id": 3,
"weapon_id": 1,
"skill_id": 1003
},
{
"id": 4,
"weapon_id": 1,
"skill_id": 1004
},
{
"id": 5,
"weapon_id": 1,
"skill_id": 1005
},
{
"id": 6,
"weapon_id": 2,
"skill_id": 2001
},
{
"id": 7,
"weapon_id": 2,
"skill_id": 2002
},
{
"id": 8,
"weapon_id": 2,
"skill_id": 2003
},
{
"id": 9,
"weapon_id": 2,
"skill_id": 2004
},
{
"id": 10,
"weapon_id": 2,
"skill_id": 2005
},
{
"id": 11,
"weapon_id": 3,
"skill_id": 3001
},
{
"id": 12,
"weapon_id": 3,
"skill_id": 3002
},
{
"id": 13,
"weapon_id": 3,
"skill_id": 3003
}
]

View File

@ -0,0 +1,384 @@
[
{
"skill_id": 1001,
"icon": "",
"name": {
"key": "td_t_skill_describe_name1001",
"text": "技能1"
},
"describe": {
"key": "td_t_skill_describe_des1001",
"text": "分裂+1"
},
"skilltype": [
1
],
"value": [
1
],
"maxlv": 5,
"pro": 1000
},
{
"skill_id": 1002,
"icon": "",
"name": {
"key": "td_t_skill_describe_name1002",
"text": "技能2"
},
"describe": {
"key": "td_t_skill_describe_des1002",
"text": "击中目标后对目标造成5%减速"
},
"skilltype": [],
"value": [
50
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 1003,
"icon": "",
"name": {
"key": "td_t_skill_describe_name1003",
"text": "技能3"
},
"describe": {
"key": "td_t_skill_describe_des1003",
"text": "伤害+10%"
},
"skilltype": [
2
],
"value": [
100
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 1004,
"icon": "",
"name": {
"key": "td_t_skill_describe_name1004",
"text": "技能4"
},
"describe": {
"key": "td_t_skill_describe_des1004",
"text": "射击频率+10%"
},
"skilltype": [
4
],
"value": [
100
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 1005,
"icon": "",
"name": {
"key": "td_t_skill_describe_name1005",
"text": "技能5"
},
"describe": {
"key": "td_t_skill_describe_des1005",
"text": "飞行速度+10%"
},
"skilltype": [
3
],
"value": [
100
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 2001,
"icon": "",
"name": {
"key": "td_t_skill_describe_name2001",
"text": "技能6"
},
"describe": {
"key": "td_t_skill_describe_des2001",
"text": "所有武器伤害攻击力+5%"
},
"skilltype": [
20
],
"value": [
5
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 2002,
"icon": "",
"name": {
"key": "td_t_skill_describe_name2002",
"text": "技能7"
},
"describe": {
"key": "td_t_skill_describe_des2002",
"text": "所有武器射击频率+5%"
},
"skilltype": [
22
],
"value": [
5
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 2003,
"icon": "",
"name": {
"key": "td_t_skill_describe_name2003",
"text": "技能8"
},
"describe": {
"key": "td_t_skill_describe_des2003",
"text": "城墙生命值上限+5并额外恢复5点生命值"
},
"skilltype": [
42,
41
],
"value": [
5,
5
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 2004,
"icon": "",
"name": {
"key": "td_t_skill_describe_name2004",
"text": "技能9"
},
"describe": {
"key": "td_t_skill_describe_des2004",
"text": "城墙生命值上限+10"
},
"skilltype": [
42
],
"value": [
10
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 2005,
"icon": "",
"name": {
"key": "td_t_skill_describe_name2005",
"text": "技能10"
},
"describe": {
"key": "td_t_skill_describe_des2005",
"text": "城墙恢复10点生命值"
},
"skilltype": [
41
],
"value": [
0
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 3001,
"icon": "",
"name": {
"key": "td_t_skill_describe_name3001",
"text": "技能11"
},
"describe": {
"key": "td_t_skill_describe_des3001",
"text": "{0}能够额外穿透1个怪物"
},
"skilltype": [
1
],
"value": [
1
],
"maxlv": 5,
"pro": 1000
},
{
"skill_id": 3002,
"icon": "",
"name": {
"key": "td_t_skill_describe_name3002",
"text": "技能12"
},
"describe": {
"key": "td_t_skill_describe_des3002",
"text": "{0}爆炸范围+10%"
},
"skilltype": [
5
],
"value": [
100
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 3003,
"icon": "",
"name": {
"key": "td_t_skill_describe_name3003",
"text": "技能13"
},
"describe": {
"key": "td_t_skill_describe_des3003",
"text": "{0}弹射次数+1"
},
"skilltype": [
6
],
"value": [
1
],
"maxlv": 5,
"pro": 1000
},
{
"skill_id": 4001,
"icon": "",
"name": {
"key": "td_t_skill_describe_name4001",
"text": "技能14"
},
"describe": {
"key": "td_t_skill_describe_des4001",
"text": "所有武器伤害攻击力+5%"
},
"skilltype": [
20
],
"value": [
50
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 4002,
"icon": "",
"name": {
"key": "td_t_skill_describe_name4002",
"text": "技能15"
},
"describe": {
"key": "td_t_skill_describe_des4002",
"text": "所有武器射击频率+5%"
},
"skilltype": [
22
],
"value": [
50
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 4003,
"icon": "",
"name": {
"key": "td_t_skill_describe_name4003",
"text": "技能16"
},
"describe": {
"key": "td_t_skill_describe_des4003",
"text": "所有弹道飞行速度+5%"
},
"skilltype": [
21
],
"value": [
50
],
"maxlv": 0,
"pro": 1000
},
{
"skill_id": 4004,
"icon": "",
"name": {
"key": "td_t_skill_describe_name4004",
"text": "技能17"
},
"describe": {
"key": "td_t_skill_describe_des4004",
"text": "城墙生命值上限+5并额外恢复5点生命值"
},
"skilltype": [
42,
41
],
"value": [
5,
5
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 4005,
"icon": "",
"name": {
"key": "td_t_skill_describe_name4005",
"text": "技能18"
},
"describe": {
"key": "td_t_skill_describe_des4005",
"text": "城墙生命值上限+10"
},
"skilltype": [
42
],
"value": [
10
],
"maxlv": 10,
"pro": 1000
},
{
"skill_id": 4006,
"icon": "",
"name": {
"key": "td_t_skill_describe_name4006",
"text": "技能19"
},
"describe": {
"key": "td_t_skill_describe_des4006",
"text": "城墙恢复10点生命值"
},
"skilltype": [
41
],
"value": [
0
],
"maxlv": 10,
"pro": 1000
}
]

View File

@ -0,0 +1,44 @@
[
{
"id": 40001,
"key": 1001,
"type": 0,
"pic": "",
"left": [
{
"k": 0,
"v": 180
},
{
"k": 1,
"v": 360
}
],
"right": [
{
"k": 1,
"v": 180
},
{
"k": 0,
"v": 240
}
],
"picangle": [],
"time": 120
},
{
"id": 40002,
"key": 1001,
"type": 1,
"pic": "",
"left": [],
"right": [],
"picangle": [
60,
105,
200
],
"time": 120
}
]

View File

@ -133,6 +133,19 @@
},
"reword": []
},
{
"id": 600,
"name": {
"key": "worldtask_world_all_name_42",
"text": "隐藏"
},
"task_icon": "",
"task_txt": {
"key": "",
"text": ""
},
"reword": []
},
{
"id": 1010,
"name": {

View File

@ -9315,9 +9315,9 @@
"lockend": 999,
"ontxe": 0,
"id_after": 0,
"group": 320,
"group": 600,
"exgroup": 600,
"des": 3,
"des": 6,
"icon": "25001",
"task_name": {
"key": "worldtask_world_task_task_name_189",
@ -9350,5 +9350,137 @@
}
],
"module": []
},
{
"key": 600020,
"opencond": "",
"lock": 1,
"lockend": 999,
"ontxe": 20010,
"id_after": 0,
"group": 600,
"exgroup": 600,
"des": 6,
"icon": "25001",
"task_name": {
"key": "worldtask_world_task_task_name_190",
"text": "奇妙玩偶"
},
"task_details": {
"key": "worldtask_world_task_task_details_189",
"text": "在武馆发现了一个长得像螳螂的玩偶,或许还有其他跟多的玩偶,他们都在哪儿呢?"
},
"npctxt": {
"key": "worldtask_world_task_npctxt_189",
"text": "武馆的角落内?"
},
"get_item": [],
"trigger": 0,
"npc": 600020,
"completetask": [
600000020,
600000030,
600000040,
600000050
],
"deliver_npc": 600028,
"taskend_removeitem": [],
"auto_accept": 0,
"tasktips": 1,
"lock_add": 0,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 5000
}
],
"module": []
},
{
"key": 600030,
"opencond": "",
"lock": 1,
"lockend": 999,
"ontxe": 0,
"id_after": 0,
"group": 600,
"exgroup": 600,
"des": 6,
"icon": "25001",
"task_name": {
"key": "worldtask_world_task_task_name_195",
"text": "花盆下的秘密"
},
"task_details": {
"key": "worldtask_world_task_task_details_194",
"text": "无意间在花盆下找到一封满是思念的信封,里面包含着师傅部分的往事,或许我可以问一下师傅。"
},
"npctxt": {
"key": "worldtask_world_task_npctxt_194",
"text": "翻找花盆"
},
"get_item": [],
"trigger": 0,
"npc": 60380,
"completetask": [
600000030
],
"deliver_npc": 0,
"taskend_removeitem": [],
"auto_accept": 0,
"tasktips": 1,
"lock_add": 0,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 5000
}
],
"module": []
},
{
"key": 600040,
"opencond": "",
"lock": 1,
"lockend": 999,
"ontxe": 0,
"id_after": 0,
"group": 600,
"exgroup": 600,
"des": 6,
"icon": "25001",
"task_name": {
"key": "worldtask_world_task_task_name_196",
"text": "往日追忆"
},
"task_details": {
"key": "worldtask_world_task_task_details_195",
"text": "无人的时候,希卡普会一个人静静看着海洋,看上去是如此的落寞,我或许可以和他聊聊。"
},
"npctxt": {
"key": "worldtask_world_task_npctxt_195",
"text": "和希卡普聊聊"
},
"get_item": [],
"trigger": 0,
"npc": 60380,
"completetask": [
600000040
],
"deliver_npc": 0,
"taskend_removeitem": [],
"auto_accept": 0,
"tasktips": 1,
"lock_add": 0,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 5000
}
],
"module": []
}
]

View File

@ -72,21 +72,27 @@ func (this *Room) PlayerHandle(uid string, handle *pb.CatchbugsHandleReq) (err e
}
var (
issucc bool
number int32
)
if this.data.Red.Info.Uid == uid {
if this.data.Red.Lastopencard == 0 {
this.data.Red.Lastopencard = handle.Index
number = 0
} else {
if this.data.Card[this.data.Red.Lastopencard].Cid == this.data.Card[handle.Index].Cid {
issucc = true
this.data.Card[this.data.Red.Lastopencard].Isopen = true
this.data.Card[handle.Index].Isopen = true
this.data.Red.Cards = append(this.data.Red.Cards, this.data.Card[this.data.Red.Lastopencard].Cid)
}
number = 1
this.data.Red.Lastopencard = 0
}
} else {
if this.data.Blue.Lastopencard == 0 {
this.data.Blue.Lastopencard = handle.Index
number = 0
} else {
if this.data.Card[this.data.Blue.Lastopencard].Cid == this.data.Card[handle.Index].Cid {
issucc = true
@ -94,12 +100,17 @@ func (this *Room) PlayerHandle(uid string, handle *pb.CatchbugsHandleReq) (err e
this.data.Card[handle.Index].Isopen = true
this.data.Blue.Cards = append(this.data.Red.Cards, this.data.Card[this.data.Blue.Lastopencard].Cid)
}
number = 1
this.data.Red.Lastopencard = 0
}
}
if err = this.Broadcast("opencard", &pb.CatchbugsOpenCardPush{
Roomid: this.data.Rid,
Index: handle.Index,
Issucc: issucc,
Roomid: this.data.Rid,
Handleplayer: uid,
Index: handle.Index,
Number: number,
Issucc: issucc,
}); err != nil {
this.module.Errorln(err)
}

View File

@ -3,7 +3,9 @@ package egghunt
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
"time"
)
func (this *apiComp) AwardCheck(session comm.IUserSession, req *pb.EgghuntAwardReq) (errdata *pb.ErrorData) {
@ -13,6 +15,7 @@ func (this *apiComp) AwardCheck(session comm.IUserSession, req *pb.EgghuntAwardR
func (this *apiComp) Award(session comm.IUserSession, req *pb.EgghuntAwardReq) (errdata *pb.ErrorData) {
var (
conf *cfg.GameRepeatAllData
info *pb.DBEgghunt
atno []*pb.UserAtno
err error
)
@ -27,11 +30,32 @@ func (this *apiComp) Award(session comm.IUserSession, req *pb.EgghuntAwardReq) (
}
return
}
if errdata, atno = this.module.DispenseAtno(session, conf.Reward, true); errdata != nil {
if info, err = this.module.model.getModel(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Message: err.Error(),
}
return
}
if int32(configure.Now().Sub(time.Unix(info.Egg[conf.Key], 0)).Seconds()) < conf.Cdtime {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Message: "in cd!",
}
return
}
info.Egg[conf.Key] = configure.Now().Unix()
if errdata, atno = this.module.DispenseAtno(session, conf.TriggerTwo, true); errdata != nil {
return
}
this.module.model.Change(session.GetUserId(), map[string]interface{}{
"egg": info.Egg,
})
session.SendMsg(string(this.module.GetType()), "info", &pb.EgghuntAwardResp{Id: req.Id, Award: atno})
return
}

View File

@ -27,17 +27,17 @@ func (this *modelComp) Init(service core.IService, module core.IModule, comp cor
}
// 获取用户全部的埋点数据
func (this *modelComp) getModel(uid string) (info *pb.DBDColor, err error) {
info = &pb.DBDColor{}
func (this *modelComp) getModel(uid string) (info *pb.DBEgghunt, err error) {
info = &pb.DBEgghunt{}
if err = this.Get(uid, info); err != nil && err != mgo.MongodbNil {
this.module.Errorln(err)
return
}
if err == mgo.MongodbNil {
info = &pb.DBDColor{
Id: primitive.NewObjectID().Hex(),
Uid: uid,
Integral: 0,
info = &pb.DBEgghunt{
Id: primitive.NewObjectID().Hex(),
Uid: uid,
Egg: make(map[int32]int64),
}
err = this.Add(uid, info)
}

View File

@ -26,8 +26,9 @@ type DBEgghunt struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"`
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid"` //用户ID
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"`
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid"` //用户ID
Egg map[int32]int64 `protobuf:"bytes,3,rep,name=egg,proto3" json:"egg" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //彩蛋
}
func (x *DBEgghunt) Reset() {
@ -76,14 +77,27 @@ func (x *DBEgghunt) GetUid() string {
return ""
}
func (x *DBEgghunt) GetEgg() map[int32]int64 {
if x != nil {
return x.Egg
}
return nil
}
var File_egghunt_egghunt_db_proto protoreflect.FileDescriptor
var file_egghunt_egghunt_db_proto_rawDesc = []byte{
0x0a, 0x18, 0x65, 0x67, 0x67, 0x68, 0x75, 0x6e, 0x74, 0x2f, 0x65, 0x67, 0x67, 0x68, 0x75, 0x6e,
0x74, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2d, 0x0a, 0x09, 0x44, 0x42,
0x45, 0x67, 0x67, 0x68, 0x75, 0x6e, 0x74, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70,
0x74, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8c, 0x01, 0x0a, 0x09, 0x44,
0x42, 0x45, 0x67, 0x67, 0x68, 0x75, 0x6e, 0x74, 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, 0x25, 0x0a, 0x03, 0x65, 0x67,
0x67, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x44, 0x42, 0x45, 0x67, 0x67, 0x68,
0x75, 0x6e, 0x74, 0x2e, 0x45, 0x67, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x67,
0x67, 0x1a, 0x36, 0x0a, 0x08, 0x45, 0x67, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 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,
}
@ -99,16 +113,18 @@ func file_egghunt_egghunt_db_proto_rawDescGZIP() []byte {
return file_egghunt_egghunt_db_proto_rawDescData
}
var file_egghunt_egghunt_db_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_egghunt_egghunt_db_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_egghunt_egghunt_db_proto_goTypes = []interface{}{
(*DBEgghunt)(nil), // 0: DBEgghunt
nil, // 1: DBEgghunt.EggEntry
}
var file_egghunt_egghunt_db_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
1, // 0: DBEgghunt.egg:type_name -> DBEgghunt.EggEntry
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_egghunt_egghunt_db_proto_init() }
@ -136,7 +152,7 @@ func file_egghunt_egghunt_db_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_egghunt_egghunt_db_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -125,4 +125,7 @@ const (
GameBuffType_MASTER_SHIELD = 132
GameBuffType_MODIFYHPTYPE_ADD_DMG = 133
GameBuffType_HAS_BUFF_CALL_SKILL = 134
GameBuffType_SMOOTH = 135
GameBuffType_SPREAD_THE_WING = 136
GameBuffType_SERIOUS_WOUND = 137
)

View File

@ -12,15 +12,16 @@ import "errors"
type GameRepeatAllData struct {
Key int32
OptionName string
Model string
ActionType int32
ActionParam string
Num int32
Thing string
Type []int32
Typeone []int32
Typetwo []*Gameatn
Cd string
TriggerWeight []int32
TriggerOne []int32
TriggerTwo []*Gameatn
CdText string
Cdtime int32
Reward []*Gameatn
}
const TypeId_GameRepeatAllData = -1975992876
@ -31,67 +32,55 @@ func (*GameRepeatAllData) GetTypeId() int32 {
func (_v *GameRepeatAllData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["optionName"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.OptionName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.OptionName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["actionType"].(float64); !_ok_ { err = errors.New("actionType error"); return }; _v.ActionType = int32(_tempNum_) }
{ var _ok_ bool; if _v.ActionParam, _ok_ = _buf["actionParam"].(string); !_ok_ { err = errors.New("actionParam error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["num"].(float64); !_ok_ { err = errors.New("num error"); return }; _v.Num = int32(_tempNum_) }
{ var _ok_ bool; if _v.Thing, _ok_ = _buf["thing"].(string); !_ok_ { err = errors.New("thing error"); return } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["type"].([]interface{}); !_ok_ { err = errors.New("type error"); return }
if _arr_, _ok_ = _buf["triggerWeight"].([]interface{}); !_ok_ { err = errors.New("triggerWeight error"); return }
_v.Type = make([]int32, 0, len(_arr_))
_v.TriggerWeight = 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.Type = append(_v.Type, _list_v_)
_v.TriggerWeight = append(_v.TriggerWeight, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["typeone"].([]interface{}); !_ok_ { err = errors.New("typeone error"); return }
if _arr_, _ok_ = _buf["triggerOne"].([]interface{}); !_ok_ { err = errors.New("triggerOne error"); return }
_v.Typeone = make([]int32, 0, len(_arr_))
_v.TriggerOne = 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.Typeone = append(_v.Typeone, _list_v_)
_v.TriggerOne = append(_v.TriggerOne, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["typetwo"].([]interface{}); !_ok_ { err = errors.New("typetwo error"); return }
if _arr_, _ok_ = _buf["triggerTwo"].([]interface{}); !_ok_ { err = errors.New("triggerTwo error"); return }
_v.Typetwo = make([]*Gameatn, 0, len(_arr_))
_v.TriggerTwo = 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.Typetwo = append(_v.Typetwo, _list_v_)
_v.TriggerTwo = append(_v.TriggerTwo, _list_v_)
}
}
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["cd"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Cd error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Cd, _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["cdText"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.CdText error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.CdText, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["cdtime"].(float64); !_ok_ { err = errors.New("cdtime error"); return }; _v.Cdtime = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["reward"].([]interface{}); !_ok_ { err = errors.New("reward error"); return }
_v.Reward = 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.Reward = append(_v.Reward, _list_v_)
}
}
return
}

View File

@ -51,4 +51,5 @@ const (
GameSkillEffectType_AddActValueByEffect = 40
GameSkillEffectType_TreByBuffNum = 41
GameSkillEffectType_GetTargetBuffNum = 42
GameSkillEffectType_ReplaceBuff = 43
)

View File

@ -12,6 +12,7 @@ import "errors"
type GameTDWeaponData struct {
Id int32
Icon string
Name string
Describe string
Sak int32
@ -20,7 +21,10 @@ type GameTDWeaponData struct {
BulletPrefab string
FlySpeed float32
HitRange float32
Data int32
HitNum int32
Num int32
ExplosionRange float32
Catapult int32
Pro int32
}
@ -32,6 +36,7 @@ func (*GameTDWeaponData) GetTypeId() int32 {
func (_v *GameTDWeaponData)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.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } }
{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 __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["describe"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Describe error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Describe, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["sak"].(float64); !_ok_ { err = errors.New("sak error"); return }; _v.Sak = int32(_tempNum_) }
@ -40,7 +45,10 @@ func (_v *GameTDWeaponData)Deserialize(_buf map[string]interface{}) (err error)
{ var _ok_ bool; if _v.BulletPrefab, _ok_ = _buf["bulletPrefab"].(string); !_ok_ { err = errors.New("bulletPrefab error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["fly_speed"].(float64); !_ok_ { err = errors.New("fly_speed error"); return }; _v.FlySpeed = float32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hitRange"].(float64); !_ok_ { err = errors.New("hitRange error"); return }; _v.HitRange = float32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["data"].(float64); !_ok_ { err = errors.New("data error"); return }; _v.Data = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hitNum"].(float64); !_ok_ { err = errors.New("hitNum error"); return }; _v.HitNum = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["num"].(float64); !_ok_ { err = errors.New("num error"); return }; _v.Num = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["explosion_Range"].(float64); !_ok_ { err = errors.New("explosion_Range error"); return }; _v.ExplosionRange = float32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["catapult"].(float64); !_ok_ { err = errors.New("catapult error"); return }; _v.Catapult = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["pro"].(float64); !_ok_ { err = errors.New("pro error"); return }; _v.Pro = int32(_tempNum_) }
return
}

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 GameTDWeaponRandom struct {
_dataMap map[int32]*GameTDWeaponRandomData
_dataList []*GameTDWeaponRandomData
}
func NewGameTDWeaponRandom(_buf []map[string]interface{}) (*GameTDWeaponRandom, error) {
_dataList := make([]*GameTDWeaponRandomData, 0, len(_buf))
dataMap := make(map[int32]*GameTDWeaponRandomData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameTDWeaponRandomData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GameTDWeaponRandom{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameTDWeaponRandom) GetDataMap() map[int32]*GameTDWeaponRandomData {
return table._dataMap
}
func (table *GameTDWeaponRandom) GetDataList() []*GameTDWeaponRandomData {
return table._dataList
}
func (table *GameTDWeaponRandom) Get(key int32) *GameTDWeaponRandomData {
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 GameTDWeaponRandomData struct {
Id int32
WeaponId int32
SkillId int32
}
const TypeId_GameTDWeaponRandomData = 108801077
func (*GameTDWeaponRandomData) GetTypeId() int32 {
return 108801077
}
func (_v *GameTDWeaponRandomData)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["weapon_id"].(float64); !_ok_ { err = errors.New("weapon_id error"); return }; _v.WeaponId = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["skill_id"].(float64); !_ok_ { err = errors.New("skill_id error"); return }; _v.SkillId = int32(_tempNum_) }
return
}
func DeserializeGameTDWeaponRandomData(_buf map[string]interface{}) (*GameTDWeaponRandomData, error) {
v := &GameTDWeaponRandomData{}
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 GameTDWeaponSkill struct {
_dataMap map[int32]*GameTDWeaponSkillData
_dataList []*GameTDWeaponSkillData
}
func NewGameTDWeaponSkill(_buf []map[string]interface{}) (*GameTDWeaponSkill, error) {
_dataList := make([]*GameTDWeaponSkillData, 0, len(_buf))
dataMap := make(map[int32]*GameTDWeaponSkillData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameTDWeaponSkillData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.SkillId] = _v
}
}
return &GameTDWeaponSkill{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameTDWeaponSkill) GetDataMap() map[int32]*GameTDWeaponSkillData {
return table._dataMap
}
func (table *GameTDWeaponSkill) GetDataList() []*GameTDWeaponSkillData {
return table._dataList
}
func (table *GameTDWeaponSkill) Get(key int32) *GameTDWeaponSkillData {
return table._dataMap[key]
}

View File

@ -0,0 +1,75 @@
//------------------------------------------------------------------------------
// <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 GameTDWeaponSkillData struct {
SkillId int32
Icon string
Name string
Describe string
Skilltype []int32
Value []int32
Maxlv int32
Pro int32
}
const TypeId_GameTDWeaponSkillData = 1713396595
func (*GameTDWeaponSkillData) GetTypeId() int32 {
return 1713396595
}
func (_v *GameTDWeaponSkillData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["skill_id"].(float64); !_ok_ { err = errors.New("skill_id error"); return }; _v.SkillId = int32(_tempNum_) }
{ var _ok_ bool; if _v.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } }
{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 __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["describe"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Describe error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Describe, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["skilltype"].([]interface{}); !_ok_ { err = errors.New("skilltype error"); return }
_v.Skilltype = 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.Skilltype = append(_v.Skilltype, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["value"].([]interface{}); !_ok_ { err = errors.New("value error"); return }
_v.Value = 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.Value = append(_v.Value, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["maxlv"].(float64); !_ok_ { err = errors.New("maxlv error"); return }; _v.Maxlv = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["pro"].(float64); !_ok_ { err = errors.New("pro error"); return }; _v.Pro = int32(_tempNum_) }
return
}
func DeserializeGameTDWeaponSkillData(_buf map[string]interface{}) (*GameTDWeaponSkillData, error) {
v := &GameTDWeaponSkillData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -285,6 +285,8 @@ type Tables struct {
TDMonsterAppear *GameTDMonsterAppear
TDLv *GameTDLv
TDWeapon *GameTDWeapon
TDWeaponSkill *GameTDWeaponSkill
TDWeaponRandom *GameTDWeaponRandom
PuggsyIsLand *GamePuggsyIsLand
PuggsyEvent *GamePuggsyEvent
PuggsyFight *GamePuggsyFight
@ -1949,6 +1951,18 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.TDWeapon, err = NewGameTDWeapon(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_tdweaponskill") ; err != nil {
return nil, err
}
if tables.TDWeaponSkill, err = NewGameTDWeaponSkill(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_tdweaponrandom") ; err != nil {
return nil, err
}
if tables.TDWeaponRandom, err = NewGameTDWeaponRandom(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_puggsyisland") ; err != nil {
return nil, err
}

View File

@ -302,6 +302,7 @@ type GameGlobalData struct {
ConsumeRounds int32
ConsumeIntegralnums *Gameatn
TdHp int32
TdDivisionAngle int32
}
const TypeId_GameGlobalData = 477542761
@ -1187,6 +1188,7 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["consume_rounds"].(float64); !_ok_ { err = errors.New("consume_rounds error"); return }; _v.ConsumeRounds = int32(_tempNum_) }
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["consume_integralnums"].(map[string]interface{}); !_ok_ { err = errors.New("consume_integralnums error"); return }; if _v.ConsumeIntegralnums, err = DeserializeGameatn(_x_); err != nil { return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["td_Hp"].(float64); !_ok_ { err = errors.New("td_Hp error"); return }; _v.TdHp = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["td_division_angle"].(float64); !_ok_ { err = errors.New("td_division_angle error"); return }; _v.TdDivisionAngle = int32(_tempNum_) }
return
}

View File

@ -31,6 +31,7 @@ type GameSkillBuffData struct {
Buffeffect string
Buffpos string
ForbidFloat int32
ReplaceBuffID int32
}
const TypeId_GameSkillBuffData = 198132498
@ -112,6 +113,7 @@ func (_v *GameSkillBuffData)Deserialize(_buf map[string]interface{}) (err error)
{ var _ok_ bool; if _v.Buffeffect, _ok_ = _buf["buffeffect"].(string); !_ok_ { err = errors.New("buffeffect error"); return } }
{ var _ok_ bool; if _v.Buffpos, _ok_ = _buf["buffpos"].(string); !_ok_ { err = errors.New("buffpos error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["forbidFloat"].(float64); !_ok_ { err = errors.New("forbidFloat error"); return }; _v.ForbidFloat = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ReplaceBuffID"].(float64); !_ok_ { err = errors.New("ReplaceBuffID error"); return }; _v.ReplaceBuffID = int32(_tempNum_) }
return
}