上传配置文件

This commit is contained in:
liwei1dao 2023-10-11 17:12:26 +08:00
parent 537470e227
commit 4702c4b03f
58 changed files with 13699 additions and 3059 deletions

View File

@ -0,0 +1,98 @@
[
{
"id": 1,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_01",
"text": "测试类型名字1"
},
"achieve_group_icon": ""
},
{
"id": 2,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_02",
"text": "测试类型名字2"
},
"achieve_group_icon": ""
},
{
"id": 3,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_03",
"text": "测试类型名字3"
},
"achieve_group_icon": ""
},
{
"id": 4,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_04",
"text": "测试类型名字4"
},
"achieve_group_icon": ""
},
{
"id": 5,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_05",
"text": "测试类型名字5"
},
"achieve_group_icon": ""
},
{
"id": 6,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_06",
"text": "测试类型名字6"
},
"achieve_group_icon": ""
},
{
"id": 7,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_07",
"text": "测试类型名字7"
},
"achieve_group_icon": ""
},
{
"id": 8,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_08",
"text": "测试类型名字8"
},
"achieve_group_icon": ""
},
{
"id": 9,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_09",
"text": "测试类型名字9"
},
"achieve_group_icon": ""
},
{
"id": 10,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_10",
"text": "测试类型名字10"
},
"achieve_group_icon": ""
},
{
"id": 11,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_11",
"text": "测试类型名字11"
},
"achieve_group_icon": ""
},
{
"id": 12,
"achieve_group_id": {
"key": "achieve_achieve_all_achieve_group_id_12",
"text": "测试类型名字12"
},
"achieve_group_icon": ""
}
]

View File

@ -0,0 +1,686 @@
[
{
"key": 1001,
"task_group_from": 1,
"task_name": {
"key": "achieve_achieve_task_task_name_01",
"text": "成就任务测试名字1"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1002,
"task_group_from": 1,
"task_name": {
"key": "achieve_achieve_task_task_name_02",
"text": "成就任务测试名字2"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1003,
"task_group_from": 1,
"task_name": {
"key": "achieve_achieve_task_task_name_03",
"text": "成就任务测试名字3"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1004,
"task_group_from": 2,
"task_name": {
"key": "achieve_achieve_task_task_name_04",
"text": "成就任务测试名字4"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1005,
"task_group_from": 2,
"task_name": {
"key": "achieve_achieve_task_task_name_05",
"text": "成就任务测试名字5"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1006,
"task_group_from": 2,
"task_name": {
"key": "achieve_achieve_task_task_name_06",
"text": "成就任务测试名字6"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1007,
"task_group_from": 3,
"task_name": {
"key": "achieve_achieve_task_task_name_07",
"text": "成就任务测试名字7"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1008,
"task_group_from": 3,
"task_name": {
"key": "achieve_achieve_task_task_name_08",
"text": "成就任务测试名字8"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1009,
"task_group_from": 3,
"task_name": {
"key": "achieve_achieve_task_task_name_09",
"text": "成就任务测试名字9"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1010,
"task_group_from": 4,
"task_name": {
"key": "achieve_achieve_task_task_name_10",
"text": "成就任务测试名字10"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1011,
"task_group_from": 4,
"task_name": {
"key": "achieve_achieve_task_task_name_11",
"text": "成就任务测试名字11"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1012,
"task_group_from": 4,
"task_name": {
"key": "achieve_achieve_task_task_name_12",
"text": "成就任务测试名字12"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1013,
"task_group_from": 5,
"task_name": {
"key": "achieve_achieve_task_task_name_13",
"text": "成就任务测试名字13"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1014,
"task_group_from": 5,
"task_name": {
"key": "achieve_achieve_task_task_name_14",
"text": "成就任务测试名字14"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1015,
"task_group_from": 5,
"task_name": {
"key": "achieve_achieve_task_task_name_15",
"text": "成就任务测试名字15"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1016,
"task_group_from": 6,
"task_name": {
"key": "achieve_achieve_task_task_name_16",
"text": "成就任务测试名字16"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1017,
"task_group_from": 6,
"task_name": {
"key": "achieve_achieve_task_task_name_17",
"text": "成就任务测试名字17"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1018,
"task_group_from": 6,
"task_name": {
"key": "achieve_achieve_task_task_name_18",
"text": "成就任务测试名字18"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1019,
"task_group_from": 7,
"task_name": {
"key": "achieve_achieve_task_task_name_19",
"text": "成就任务测试名字19"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1020,
"task_group_from": 7,
"task_name": {
"key": "achieve_achieve_task_task_name_20",
"text": "成就任务测试名字20"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1021,
"task_group_from": 7,
"task_name": {
"key": "achieve_achieve_task_task_name_21",
"text": "成就任务测试名字21"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1022,
"task_group_from": 8,
"task_name": {
"key": "achieve_achieve_task_task_name_22",
"text": "成就任务测试名字22"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1023,
"task_group_from": 8,
"task_name": {
"key": "achieve_achieve_task_task_name_23",
"text": "成就任务测试名字23"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1024,
"task_group_from": 8,
"task_name": {
"key": "achieve_achieve_task_task_name_24",
"text": "成就任务测试名字24"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1025,
"task_group_from": 9,
"task_name": {
"key": "achieve_achieve_task_task_name_25",
"text": "成就任务测试名字25"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1026,
"task_group_from": 9,
"task_name": {
"key": "achieve_achieve_task_task_name_26",
"text": "成就任务测试名字26"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1027,
"task_group_from": 9,
"task_name": {
"key": "achieve_achieve_task_task_name_27",
"text": "成就任务测试名字27"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1028,
"task_group_from": 10,
"task_name": {
"key": "achieve_achieve_task_task_name_28",
"text": "成就任务测试名字28"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1029,
"task_group_from": 10,
"task_name": {
"key": "achieve_achieve_task_task_name_29",
"text": "成就任务测试名字29"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1030,
"task_group_from": 10,
"task_name": {
"key": "achieve_achieve_task_task_name_30",
"text": "成就任务测试名字30"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1031,
"task_group_from": 11,
"task_name": {
"key": "achieve_achieve_task_task_name_31",
"text": "成就任务测试名字31"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1032,
"task_group_from": 11,
"task_name": {
"key": "achieve_achieve_task_task_name_32",
"text": "成就任务测试名字32"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1033,
"task_group_from": 11,
"task_name": {
"key": "achieve_achieve_task_task_name_33",
"text": "成就任务测试名字33"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1034,
"task_group_from": 12,
"task_name": {
"key": "achieve_achieve_task_task_name_34",
"text": "成就任务测试名字34"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 1,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1035,
"task_group_from": 12,
"task_name": {
"key": "achieve_achieve_task_task_name_35",
"text": "成就任务测试名字35"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 2,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
},
{
"key": 1036,
"task_group_from": 12,
"task_name": {
"key": "achieve_achieve_task_task_name_36",
"text": "成就任务测试名字36"
},
"task_buried": 12070360,
"task_icon": "",
"task_quality": 3,
"task_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
],
"jump": 107
}
]

View File

@ -1728,6 +1728,40 @@
"CanFriendHelp": 1,
"Numrounds": 0
},
{
"id": 10105001,
"PlayType": 1,
"HeroCount": 5,
"readyScene": "scenesfight_role_interface_07",
"battleScenes": [
"scenesfight_10"
],
"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": 1,
"Numrounds": 0
},
{
"id": 10106001,
"PlayType": 1,
@ -2766,5 +2800,39 @@
"BlueAssistTeam": 0,
"CanFriendHelp": 0,
"Numrounds": 60
},
{
"id": 10103004,
"PlayType": 1,
"HeroCount": 5,
"readyScene": "scenesfight_role_interface_02",
"battleScenes": [
"scenesfight_09_hard"
],
"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": 1,
"Numrounds": 0
}
]

View File

@ -29443,7 +29443,7 @@
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1030",
"text": "冒险之旅第一章主线剧情完成"
"text": "冒险之旅第一章获得龙遗香"
},
"type": 61,
"valid": 0,
@ -29456,7 +29456,208 @@
"NPC": 0,
"value": 1,
"filter": [
1100124
1100110
],
"filter2": []
},
{
"id": 11001002,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1031",
"text": "冒险之旅第一章体验埃雷特的故事"
},
"type": 61,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
1100119
],
"filter2": []
},
{
"id": 11001003,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1032",
"text": "冒险之旅第一章打败冰霜泰坦"
},
"type": 61,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
1100128
],
"filter2": []
},
{
"id": 11001004,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1033",
"text": "冒险之旅第一章听埃雷特讲述他的过去"
},
"type": 61,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
1100142
],
"filter2": []
},
{
"id": 11001005,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1034",
"text": "冒险之旅第一章挑战埃雷特的回忆通关"
},
"type": 61,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
1100150
],
"filter2": []
},
{
"id": 11001006,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1035",
"text": "冒险之旅第一章困难挑战通关"
},
"type": 61,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
1100158
],
"filter2": []
},
{
"id": 11001007,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1036",
"text": "参加捕羊大赛3次"
},
"type": 234,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
3
],
"filter2": []
},
{
"id": 11001008,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1037",
"text": "第一章商店购买10件商品"
},
"type": 236,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
10010,
10
],
"filter2": []
},
{
"id": 11001009,
"rtype": 1,
"ctype": 1,
"notify": [],
"type_sp": 1,
"tasktxt": {
"key": "buried_buried_condi_tasktxt_1038",
"text": "完成第一章所有探索"
},
"type": 61,
"valid": 0,
"head": {
"a": "attr",
"t": "gold",
"n": 1
},
"Npc_event_type": 0,
"NPC": 0,
"value": 1,
"filter": [
1100183
],
"filter2": []
}

View File

@ -1376,5 +1376,13 @@
"eq",
"gte"
]
},
{
"id": 236,
"insert": 2,
"filter": [
"eq",
"gte"
]
}
]

View File

@ -200,7 +200,7 @@
},
"skillintr": {
"key": "equip_equip_suit_skillintr_10",
"text": "我方被施加控制效果的神觉者速度提高50点不可叠加"
"text": "我方被施加控制效果的守护者速度提高50点不可叠加"
},
"SetBonuses": []
},

View File

@ -399,7 +399,7 @@
],
"VIP_DaysSent": 7,
"MonthlyCard_DaysSent": 30,
"opennewguide": 0,
"opennewguide": 1,
"library_StoryUnlocking": 3,
"ps_recovery": 360,
"ps_ul": 2000,
@ -854,6 +854,10 @@
"dialogueclickcd": 0.3,
"doragon_item": "24012003",
"sign_account": 28,
"dragon_funtime": 700
"dragon_funtime": 700,
"challenge_npc_story": [
400010,
400020
]
}
]

View File

@ -1 +1,350 @@
[]
[
{
"id": 1000101,
"group": 1,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "worldtaskexit_accept_20010",
"followtj": "OpenNpcOption_主线入口_原石",
"followguide": 1000102,
"finger": [
"taskDedailsPopup",
"btn_star$"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "1000101",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 500,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000102,
"group": 1,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "",
"followtj": "",
"followguide": 0,
"finger": [
"command",
"mainCom$.optionList$",
"0"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000201,
"group": 2,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "worldtaskfinish_20010",
"followtj": "OpenNpcOption_20010_熊猫_1",
"followguide": 1000202,
"finger": [
"command",
"mainCom$.taskpanel$.mainTaskList.tasklist$",
"0"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0.1,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000202,
"group": 2,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "",
"followtj": "",
"followguide": 0,
"finger": [
"command",
"mainCom$.optionList$",
"0"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000301,
"group": 3,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "worldtaskexit_submit_20010",
"followtj": "TriggerQuest_20012",
"followguide": 1000302,
"finger": [
"taskDedailsPopup",
"btn_star$"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000302,
"group": 3,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "",
"followtj": "OpenNpcOption_20020_熊猫_船甲板",
"followguide": 1000303,
"finger": [
"command",
"mainCom$.taskpanel$.mainTaskList.tasklist$",
"0"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0.1,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000303,
"group": 3,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "",
"followtj": "",
"followguide": 0,
"finger": [
"maininterface",
"mainCom$.optionList$",
"0"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000401,
"group": 4,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "worldtaskexit_accept_20012",
"followtj": "",
"followguide": 1000402,
"finger": [
"taskDedailsPopup",
"btn_star$"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
},
{
"id": 1000402,
"group": 5,
"type": 3,
"startPar": "",
"parameter": "",
"interface": "",
"condition": "",
"followtj": "",
"followguide": 0,
"finger": [
"maininterface",
"mainCom$.optionList$",
"0"
],
"offset": {
"x": 0,
"y": 0
},
"fingerTime": 0,
"objSize": {
"x": 0,
"y": 0
},
"objOffset": {
"x": 0,
"y": 0
},
"txt": "",
"speakerface": 0,
"sound": "",
"mask": 0,
"lock": 0,
"uishow": 0,
"skiptime": 0,
"skip": 0,
"skipgroup": 0,
"reward": []
}
]

View File

@ -19,7 +19,7 @@
"key": "hunting_opentime_opentimetext_1",
"text": "开启时间:周一,周三,周五,周日"
},
"bg": "fb_pt_jxxx",
"bg": "hl_img_bg",
"icon": "wjyz_img016",
"bossIcon": "sl_rk_boss04"
},

View File

@ -745,7 +745,7 @@
],
"use_skip": 10038,
"upper_limit": 999,
"img": "wp_icon_10021",
"img": "item_10000022",
"intr": {
"key": "item_item_intr_15",
"text": "蕴含着林的感观力量的圣枝,用于属性招募抽取守护者。"

View File

@ -4,14 +4,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_1",
"text": "碎片1"
"text": "遗香残留"
},
"taskid": 11001001,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000008",
"n": 10
}
],
"icon": "item_50013001"
@ -21,14 +21,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_2",
"text": "碎片2"
"text": "正与邪"
},
"taskid": 11001001,
"taskid": 11001002,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000008",
"n": 10
}
],
"icon": "item_50013001"
@ -38,14 +38,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_3",
"text": "碎片3"
"text": "霜华漫天"
},
"taskid": 11001001,
"taskid": 11001003,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000009",
"n": 5
}
],
"icon": "item_50013001"
@ -55,14 +55,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_4",
"text": "碎片4"
"text": "虚妄之诺"
},
"taskid": 11001001,
"taskid": 11001004,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000009",
"n": 5
}
],
"icon": "item_50013001"
@ -72,14 +72,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_5",
"text": "碎片5"
"text": "苦难横行"
},
"taskid": 11001001,
"taskid": 11001005,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000009",
"n": 10
}
],
"icon": "item_50013001"
@ -89,14 +89,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_6",
"text": "碎片6"
"text": "恩赐解脱"
},
"taskid": 11001001,
"taskid": 11001006,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000009",
"n": 10
}
],
"icon": "item_50013001"
@ -106,14 +106,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_7",
"text": "碎片7"
"text": "飞行达人"
},
"taskid": 11001001,
"taskid": 11001007,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
@ -123,14 +123,14 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_8",
"text": "碎片8"
"text": "驯龙购物狂"
},
"taskid": 11001001,
"taskid": 11001007,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
@ -140,14 +140,473 @@
"id": 11001,
"title": {
"key": "mainchapter_main_achievement_title_9",
"text": "碎片9"
"text": "龙岛探索者"
},
"taskid": 11001009,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110010,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_10",
"text": "碎片10"
},
"taskid": 11001001,
"reword": [
{
"a": "attr",
"t": "gold",
"n": 1000
"a": "item",
"t": "10000008",
"n": 20
}
],
"icon": "item_50013001"
},
{
"key": 110011,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_11",
"text": "碎片11"
},
"taskid": 11001002,
"reword": [
{
"a": "item",
"t": "10000008",
"n": 20
}
],
"icon": "item_50013001"
},
{
"key": 110012,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_12",
"text": "碎片12"
},
"taskid": 11001003,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 10
}
],
"icon": "item_50013001"
},
{
"key": 110013,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_13",
"text": "碎片13"
},
"taskid": 11001004,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 10
}
],
"icon": "item_50013001"
},
{
"key": 110014,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_14",
"text": "碎片14"
},
"taskid": 11001005,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 15
}
],
"icon": "item_50013001"
},
{
"key": 110015,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_15",
"text": "碎片15"
},
"taskid": 11001006,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 15
}
],
"icon": "item_50013001"
},
{
"key": 110016,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_16",
"text": "碎片16"
},
"taskid": 11001007,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110017,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_17",
"text": "碎片17"
},
"taskid": 11001007,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110018,
"id": 11002,
"title": {
"key": "mainchapter_main_achievement_title_18",
"text": "碎片18"
},
"taskid": 11001009,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110019,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_19",
"text": "碎片19"
},
"taskid": 11001001,
"reword": [
{
"a": "item",
"t": "10000008",
"n": 30
}
],
"icon": "item_50013001"
},
{
"key": 110020,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_20",
"text": "碎片20"
},
"taskid": 11001002,
"reword": [
{
"a": "item",
"t": "10000008",
"n": 30
}
],
"icon": "item_50013001"
},
{
"key": 110021,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_21",
"text": "碎片21"
},
"taskid": 11001003,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 15
}
],
"icon": "item_50013001"
},
{
"key": 110022,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_22",
"text": "碎片22"
},
"taskid": 11001004,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 15
}
],
"icon": "item_50013001"
},
{
"key": 110023,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_23",
"text": "碎片23"
},
"taskid": 11001005,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 20
}
],
"icon": "item_50013001"
},
{
"key": 110024,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_24",
"text": "碎片24"
},
"taskid": 11001006,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 20
}
],
"icon": "item_50013001"
},
{
"key": 110025,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_25",
"text": "碎片25"
},
"taskid": 11001007,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110026,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_26",
"text": "碎片26"
},
"taskid": 11001007,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110027,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_27",
"text": "碎片27"
},
"taskid": 11001009,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110028,
"id": 11003,
"title": {
"key": "mainchapter_main_achievement_title_28",
"text": "碎片28"
},
"taskid": 11001001,
"reword": [
{
"a": "item",
"t": "10000008",
"n": 40
}
],
"icon": "item_50013001"
},
{
"key": 110029,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_29",
"text": "碎片29"
},
"taskid": 11001002,
"reword": [
{
"a": "item",
"t": "10000008",
"n": 40
}
],
"icon": "item_50013001"
},
{
"key": 110030,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_30",
"text": "碎片30"
},
"taskid": 11001003,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 20
}
],
"icon": "item_50013001"
},
{
"key": 110031,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_31",
"text": "碎片31"
},
"taskid": 11001004,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 20
}
],
"icon": "item_50013001"
},
{
"key": 110032,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_32",
"text": "碎片32"
},
"taskid": 11001005,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 25
}
],
"icon": "item_50013001"
},
{
"key": 110033,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_33",
"text": "碎片33"
},
"taskid": 11001006,
"reword": [
{
"a": "item",
"t": "10000009",
"n": 25
}
],
"icon": "item_50013001"
},
{
"key": 110034,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_34",
"text": "碎片34"
},
"taskid": 11001007,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110035,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_35",
"text": "碎片35"
},
"taskid": 11001007,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"
},
{
"key": 110036,
"id": 11004,
"title": {
"key": "mainchapter_main_achievement_title_36",
"text": "碎片36"
},
"taskid": 11001009,
"reword": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"icon": "item_50013001"

View File

@ -8,14 +8,14 @@
},
"describe": {
"key": "mainchapter_main_chapter_describe_1",
"text": "获得小伊"
"text": "探索博克岛,完成拼图。每一块拼图完成都有神秘奖励!拼图集齐后可以获得亚丝翠!"
},
"achunlock": 11001001,
"shopname": {
"key": "mainchapter_main_chapter_shopname_1",
"text": "特色商店"
},
"shopunlock": 11001001,
"shopunlock": 0,
"venturecurrency": [
{
"a": "item",

View File

@ -4,8 +4,8 @@
"shopid": 11001,
"itemsell": [
{
"a": "item",
"t": "10000001",
"a": "equi",
"t": "10130",
"n": 1
}
],
@ -13,7 +13,7 @@
{
"a": "item",
"t": "24011001",
"n": 1
"n": 25
}
],
"bugtime": 1,
@ -24,16 +24,16 @@
"shopid": 11001,
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 2
"a": "equi",
"t": "10131",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 2
"n": 25
}
],
"bugtime": 1,
@ -44,16 +44,16 @@
"shopid": 11001,
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 3
"a": "equi",
"t": "10132",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 3
"n": 25
}
],
"bugtime": 1,
@ -64,16 +64,16 @@
"shopid": 11001,
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 4
"a": "equi",
"t": "10133",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 4
"n": 25
}
],
"bugtime": 1,
@ -85,18 +85,18 @@
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 5
"t": "10000008",
"n": 10
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 5
"n": 15
}
],
"bugtime": 1,
"bugtime": 12,
"unlock": 0
},
{
@ -105,18 +105,18 @@
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 6
"t": "10000011",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 6
"n": 50
}
],
"bugtime": 1,
"bugtime": 3,
"unlock": 0
},
{
@ -124,20 +124,20 @@
"shopid": 11001,
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 7
"a": "attr",
"t": "diamond",
"n": 100
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 7
"n": 50
}
],
"bugtime": 1,
"unlock": 11001001
"bugtime": 3,
"unlock": 0
},
{
"key": 11001008,
@ -146,17 +146,757 @@
{
"a": "item",
"t": "10000001",
"n": 8
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 8
"n": 100
}
],
"bugtime": 6,
"unlock": 0
},
{
"key": 11001009,
"shopid": 11001,
"itemsell": [
{
"a": "attr",
"t": "gold",
"n": 100000
}
],
"need": [
{
"a": "item",
"t": "24011001",
"n": 20
}
],
"bugtime": 1,
"unlock": 11001001
"unlock": 0
},
{
"key": 11002001,
"shopid": 11002,
"itemsell": [
{
"a": "equi",
"t": "10140",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11002002,
"shopid": 11002,
"itemsell": [
{
"a": "equi",
"t": "10141",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11002003,
"shopid": 11002,
"itemsell": [
{
"a": "equi",
"t": "10142",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11002004,
"shopid": 11002,
"itemsell": [
{
"a": "equi",
"t": "10143",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11002005,
"shopid": 11002,
"itemsell": [
{
"a": "item",
"t": "10000008",
"n": 10
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 15
}
],
"bugtime": 16,
"unlock": 0
},
{
"key": 11002006,
"shopid": 11002,
"itemsell": [
{
"a": "item",
"t": "10000011",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 50
}
],
"bugtime": 4,
"unlock": 0
},
{
"key": 11002007,
"shopid": 11002,
"itemsell": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 50
}
],
"bugtime": 4,
"unlock": 0
},
{
"key": 11002008,
"shopid": 11002,
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 100
}
],
"bugtime": 8,
"unlock": 0
},
{
"key": 11002009,
"shopid": 11002,
"itemsell": [
{
"a": "item",
"t": "15000101",
"n": 40
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 40
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11002010,
"shopid": 11002,
"itemsell": [
{
"a": "item",
"t": "15000102",
"n": 40
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 40
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11002011,
"shopid": 11002,
"itemsell": [
{
"a": "item",
"t": "15000103",
"n": 40
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 40
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11002012,
"shopid": 11002,
"itemsell": [
{
"a": "item",
"t": "15000104",
"n": 40
}
],
"need": [
{
"a": "item",
"t": "24011002",
"n": 40
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003001,
"shopid": 11003,
"itemsell": [
{
"a": "equi",
"t": "10440",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003002,
"shopid": 11003,
"itemsell": [
{
"a": "equi",
"t": "10441",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003003,
"shopid": 11003,
"itemsell": [
{
"a": "equi",
"t": "10442",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003004,
"shopid": 11003,
"itemsell": [
{
"a": "equi",
"t": "10443",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003005,
"shopid": 11003,
"itemsell": [
{
"a": "item",
"t": "10000008",
"n": 10
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 15
}
],
"bugtime": 28,
"unlock": 0
},
{
"key": 11003006,
"shopid": 11003,
"itemsell": [
{
"a": "item",
"t": "10000011",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 50
}
],
"bugtime": 7,
"unlock": 0
},
{
"key": 11003007,
"shopid": 11003,
"itemsell": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 50
}
],
"bugtime": 7,
"unlock": 0
},
{
"key": 11003008,
"shopid": 11003,
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 100
}
],
"bugtime": 14,
"unlock": 0
},
{
"key": 11003009,
"shopid": 11003,
"itemsell": [
{
"a": "item",
"t": "15000101",
"n": 70
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 70
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003010,
"shopid": 11003,
"itemsell": [
{
"a": "item",
"t": "15000102",
"n": 70
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 70
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003011,
"shopid": 11003,
"itemsell": [
{
"a": "item",
"t": "15000103",
"n": 70
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 70
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11003012,
"shopid": 11003,
"itemsell": [
{
"a": "item",
"t": "15000104",
"n": 70
}
],
"need": [
{
"a": "item",
"t": "24011003",
"n": 70
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004001,
"shopid": 11004,
"itemsell": [
{
"a": "equi",
"t": "11040",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004002,
"shopid": 11004,
"itemsell": [
{
"a": "equi",
"t": "11041",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004003,
"shopid": 11004,
"itemsell": [
{
"a": "equi",
"t": "11042",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004004,
"shopid": 11004,
"itemsell": [
{
"a": "equi",
"t": "11043",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 25
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004005,
"shopid": 11004,
"itemsell": [
{
"a": "item",
"t": "10000008",
"n": 10
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 15
}
],
"bugtime": 36,
"unlock": 0
},
{
"key": 11004006,
"shopid": 11004,
"itemsell": [
{
"a": "item",
"t": "10000011",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 50
}
],
"bugtime": 9,
"unlock": 0
},
{
"key": 11004007,
"shopid": 11004,
"itemsell": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 50
}
],
"bugtime": 9,
"unlock": 0
},
{
"key": 11004008,
"shopid": 11004,
"itemsell": [
{
"a": "item",
"t": "10000001",
"n": 1
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 100
}
],
"bugtime": 18,
"unlock": 0
},
{
"key": 11004009,
"shopid": 11004,
"itemsell": [
{
"a": "item",
"t": "15000101",
"n": 90
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 90
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004010,
"shopid": 11004,
"itemsell": [
{
"a": "item",
"t": "15000102",
"n": 90
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 90
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004011,
"shopid": 11004,
"itemsell": [
{
"a": "item",
"t": "15000103",
"n": 90
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 90
}
],
"bugtime": 1,
"unlock": 0
},
{
"key": 11004012,
"shopid": 11004,
"itemsell": [
{
"a": "item",
"t": "15000104",
"n": 90
}
],
"need": [
{
"a": "item",
"t": "24011004",
"n": 90
}
],
"bugtime": 1,
"unlock": 0
}
]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -51730,7 +51730,7 @@
"ExecuteCnt": 1,
"Type": 2,
"Argu": [
435001211,
483500121,
-1,
-1
],
@ -51834,6 +51834,29 @@
"RevisiCondition": "",
"RevisiParams": []
},
{
"Id": 813002112,
"EmitPR": 1000,
"From": 3,
"Where": [],
"Order": "",
"Limit": 10,
"ExecuteCnt": 1,
"Type": 2,
"Argu": [
481300211,
-1,
-1
],
"FollowSK": [],
"SucFollowSK": [],
"FailFollowSK": [],
"MustHit": false,
"DpsRevisiType": 0,
"DpsCondition": "",
"RevisiCondition": "",
"RevisiParams": []
},
{
"Id": 813002211,
"EmitPR": 1000,
@ -52281,6 +52304,29 @@
"RevisiCondition": "",
"RevisiParams": []
},
{
"Id": 815004215,
"EmitPR": 1000,
"From": 3,
"Where": [],
"Order": "",
"Limit": 10,
"ExecuteCnt": 1,
"Type": 2,
"Argu": [
481500423,
-1,
-1
],
"FollowSK": [],
"SucFollowSK": [],
"FailFollowSK": [],
"MustHit": false,
"DpsRevisiType": 0,
"DpsCondition": "",
"RevisiCondition": "",
"RevisiParams": []
},
{
"Id": 824002211,
"EmitPR": 1000,

View File

@ -39817,10 +39817,12 @@
"Target": 0,
"ChildSkill": {
"Id": [
815004111
815004115
]
},
"passSkill": [],
"passSkill": [
815004115
],
"Desc": {
"key": "skill_skill_atk_Desc_815004412_1",
"text": "1技能攻击时额外偷取目标10%行动值"

View File

@ -9077,5 +9077,45 @@
"Callback": [
844005216
]
},
{
"Id": 481300212,
"When": 16,
"FromCheck": "Target=3",
"TargetCheck": "",
"MainSkillCheck": "SkillPos=1",
"AfterSkillCheck": "",
"BuffCheck": "",
"DpsCheck": "",
"AddCon": [],
"PasPr": 1000,
"PasCorrection": 0,
"Type": "CallSkillPas",
"MaxEmitTimesInRoundByRole": 0,
"MaxEmitTimes": 0,
"MaxEmitTimesInRound": 0,
"Callback": [
813002111
]
},
{
"Id": 481500423,
"When": 16,
"FromCheck": "Target=3",
"TargetCheck": "",
"MainSkillCheck": "SkillPos=1",
"AfterSkillCheck": "",
"BuffCheck": "",
"DpsCheck": "",
"AddCon": [],
"PasPr": 1000,
"PasCorrection": 0,
"Type": "CallSkillPas",
"MaxEmitTimesInRoundByRole": 0,
"MaxEmitTimes": 0,
"MaxEmitTimesInRound": 0,
"Callback": [
815004111
]
}
]

View File

@ -4161,7 +4161,7 @@
},
{
"BuffId": 782000111,
"Type": 6,
"Type": 5,
"SkillId": 782000111,
"BuffLevel": 1,
"Quality": 2,
@ -4187,7 +4187,7 @@
},
{
"BuffId": 782001111,
"Type": 6,
"Type": 5,
"SkillId": 782001111,
"BuffLevel": 1,
"Quality": 2,
@ -4213,7 +4213,7 @@
},
{
"BuffId": 782002111,
"Type": 6,
"Type": 5,
"SkillId": 782002111,
"BuffLevel": 1,
"Quality": 2,
@ -4239,7 +4239,7 @@
},
{
"BuffId": 782003111,
"Type": 6,
"Type": 5,
"SkillId": 782003111,
"BuffLevel": 1,
"Quality": 2,
@ -4265,7 +4265,7 @@
},
{
"BuffId": 782004111,
"Type": 6,
"Type": 5,
"SkillId": 782004111,
"BuffLevel": 1,
"Quality": 2,
@ -4291,7 +4291,7 @@
},
{
"BuffId": 782005111,
"Type": 6,
"Type": 5,
"SkillId": 782005111,
"BuffLevel": 1,
"Quality": 2,
@ -4317,7 +4317,7 @@
},
{
"BuffId": 782006111,
"Type": 6,
"Type": 5,
"SkillId": 782006111,
"BuffLevel": 1,
"Quality": 2,
@ -4343,7 +4343,7 @@
},
{
"BuffId": 782007111,
"Type": 6,
"Type": 5,
"SkillId": 782007111,
"BuffLevel": 1,
"Quality": 2,
@ -4369,7 +4369,7 @@
},
{
"BuffId": 782008111,
"Type": 6,
"Type": 5,
"SkillId": 782008111,
"BuffLevel": 1,
"Quality": 2,
@ -4395,7 +4395,7 @@
},
{
"BuffId": 782009111,
"Type": 6,
"Type": 5,
"SkillId": 782009111,
"BuffLevel": 1,
"Quality": 2,
@ -4421,7 +4421,7 @@
},
{
"BuffId": 791000111,
"Type": 5,
"Type": 999,
"SkillId": 791000111,
"BuffLevel": 1,
"Quality": 2,
@ -4447,7 +4447,7 @@
},
{
"BuffId": 791001111,
"Type": 5,
"Type": 999,
"SkillId": 791001111,
"BuffLevel": 1,
"Quality": 2,
@ -4473,7 +4473,7 @@
},
{
"BuffId": 791002111,
"Type": 5,
"Type": 999,
"SkillId": 791002111,
"BuffLevel": 1,
"Quality": 2,
@ -4499,7 +4499,7 @@
},
{
"BuffId": 791003111,
"Type": 5,
"Type": 999,
"SkillId": 791003111,
"BuffLevel": 1,
"Quality": 2,
@ -4525,7 +4525,7 @@
},
{
"BuffId": 791004111,
"Type": 5,
"Type": 999,
"SkillId": 791004111,
"BuffLevel": 1,
"Quality": 2,
@ -4551,7 +4551,7 @@
},
{
"BuffId": 791005111,
"Type": 5,
"Type": 999,
"SkillId": 791005111,
"BuffLevel": 1,
"Quality": 2,
@ -4577,7 +4577,7 @@
},
{
"BuffId": 791006111,
"Type": 5,
"Type": 999,
"SkillId": 791006111,
"BuffLevel": 1,
"Quality": 2,
@ -4603,7 +4603,7 @@
},
{
"BuffId": 791007111,
"Type": 5,
"Type": 999,
"SkillId": 791007111,
"BuffLevel": 1,
"Quality": 2,
@ -4629,7 +4629,7 @@
},
{
"BuffId": 791008111,
"Type": 5,
"Type": 999,
"SkillId": 791008111,
"BuffLevel": 1,
"Quality": 2,
@ -4655,7 +4655,7 @@
},
{
"BuffId": 791009111,
"Type": 5,
"Type": 999,
"SkillId": 791009111,
"BuffLevel": 1,
"Quality": 2,
@ -4681,7 +4681,7 @@
},
{
"BuffId": 791000211,
"Type": 5,
"Type": 999,
"SkillId": 791000211,
"BuffLevel": 1,
"Quality": 2,
@ -4707,7 +4707,7 @@
},
{
"BuffId": 791001211,
"Type": 5,
"Type": 999,
"SkillId": 791001211,
"BuffLevel": 1,
"Quality": 2,
@ -4733,7 +4733,7 @@
},
{
"BuffId": 791002211,
"Type": 5,
"Type": 999,
"SkillId": 791002211,
"BuffLevel": 1,
"Quality": 2,
@ -4759,7 +4759,7 @@
},
{
"BuffId": 791003211,
"Type": 5,
"Type": 999,
"SkillId": 791003211,
"BuffLevel": 1,
"Quality": 2,
@ -4785,7 +4785,7 @@
},
{
"BuffId": 791004211,
"Type": 5,
"Type": 999,
"SkillId": 791004211,
"BuffLevel": 1,
"Quality": 2,
@ -4811,7 +4811,7 @@
},
{
"BuffId": 791005211,
"Type": 5,
"Type": 999,
"SkillId": 791005211,
"BuffLevel": 1,
"Quality": 2,
@ -4837,7 +4837,7 @@
},
{
"BuffId": 791006211,
"Type": 5,
"Type": 999,
"SkillId": 791006211,
"BuffLevel": 1,
"Quality": 2,
@ -4863,7 +4863,7 @@
},
{
"BuffId": 791007211,
"Type": 5,
"Type": 999,
"SkillId": 791007211,
"BuffLevel": 1,
"Quality": 2,
@ -4889,7 +4889,7 @@
},
{
"BuffId": 791008211,
"Type": 5,
"Type": 999,
"SkillId": 791008211,
"BuffLevel": 1,
"Quality": 2,
@ -4915,7 +4915,7 @@
},
{
"BuffId": 791009211,
"Type": 5,
"Type": 999,
"SkillId": 791009211,
"BuffLevel": 1,
"Quality": 2,
@ -4941,7 +4941,7 @@
},
{
"BuffId": 770076113,
"Type": 5,
"Type": 999,
"SkillId": 770076111,
"BuffLevel": 1,
"Quality": 3,
@ -4967,7 +4967,7 @@
},
{
"BuffId": 770077113,
"Type": 5,
"Type": 999,
"SkillId": 770077111,
"BuffLevel": 1,
"Quality": 3,
@ -4993,7 +4993,7 @@
},
{
"BuffId": 770070113,
"Type": 5,
"Type": 999,
"SkillId": 770070111,
"BuffLevel": 1,
"Quality": 3,
@ -5019,7 +5019,7 @@
},
{
"BuffId": 770071113,
"Type": 5,
"Type": 999,
"SkillId": 770071111,
"BuffLevel": 1,
"Quality": 3,

View File

@ -313,9 +313,9 @@
"Value4": 0,
"CostItem": [
{
"a": "attr",
"t": "gold",
"n": 10
"a": "item",
"t": "10000036",
"n": 15
}
],
"PostEvent": 0,
@ -335,9 +335,9 @@
"Value4": 0,
"CostItem": [
{
"a": "attr",
"t": "gold",
"n": 10
"a": "item",
"t": "10000036",
"n": 15
}
],
"PostEvent": 0,
@ -357,9 +357,9 @@
"Value4": 0,
"CostItem": [
{
"a": "attr",
"t": "gold",
"n": 10
"a": "item",
"t": "10000036",
"n": 15
}
],
"PostEvent": 0,

View File

@ -2,7 +2,7 @@
{
"Id": 1,
"Type": 1,
"ColltectionNum": 5,
"ColltectionNum": 4,
"Reward": [
{
"a": "attr",
@ -14,7 +14,7 @@
{
"Id": 2,
"Type": 1,
"ColltectionNum": 10,
"ColltectionNum": 8,
"Reward": [
{
"a": "attr",
@ -26,7 +26,7 @@
{
"Id": 3,
"Type": 1,
"ColltectionNum": 15,
"ColltectionNum": 12,
"Reward": [
{
"a": "attr",
@ -38,7 +38,7 @@
{
"Id": 4,
"Type": 1,
"ColltectionNum": 20,
"ColltectionNum": 16,
"Reward": [
{
"a": "attr",
@ -49,8 +49,8 @@
},
{
"Id": 5,
"Type": 2,
"ColltectionNum": 5,
"Type": 1,
"ColltectionNum": 20,
"Reward": [
{
"a": "attr",
@ -62,7 +62,7 @@
{
"Id": 6,
"Type": 2,
"ColltectionNum": 10,
"ColltectionNum": 4,
"Reward": [
{
"a": "attr",
@ -74,7 +74,7 @@
{
"Id": 7,
"Type": 2,
"ColltectionNum": 15,
"ColltectionNum": 8,
"Reward": [
{
"a": "attr",
@ -86,7 +86,7 @@
{
"Id": 8,
"Type": 2,
"ColltectionNum": 20,
"ColltectionNum": 12,
"Reward": [
{
"a": "attr",
@ -97,8 +97,8 @@
},
{
"Id": 9,
"Type": 3,
"ColltectionNum": 5,
"Type": 2,
"ColltectionNum": 16,
"Reward": [
{
"a": "attr",
@ -109,8 +109,8 @@
},
{
"Id": 10,
"Type": 3,
"ColltectionNum": 10,
"Type": 2,
"ColltectionNum": 20,
"Reward": [
{
"a": "attr",
@ -122,7 +122,7 @@
{
"Id": 11,
"Type": 3,
"ColltectionNum": 15,
"ColltectionNum": 4,
"Reward": [
{
"a": "attr",
@ -134,7 +134,7 @@
{
"Id": 12,
"Type": 3,
"ColltectionNum": 20,
"ColltectionNum": 8,
"Reward": [
{
"a": "attr",
@ -145,8 +145,8 @@
},
{
"Id": 13,
"Type": 4,
"ColltectionNum": 5,
"Type": 3,
"ColltectionNum": 12,
"Reward": [
{
"a": "attr",
@ -157,8 +157,8 @@
},
{
"Id": 14,
"Type": 4,
"ColltectionNum": 10,
"Type": 3,
"ColltectionNum": 16,
"Reward": [
{
"a": "attr",
@ -169,8 +169,8 @@
},
{
"Id": 15,
"Type": 4,
"ColltectionNum": 15,
"Type": 3,
"ColltectionNum": 20,
"Reward": [
{
"a": "attr",
@ -182,6 +182,54 @@
{
"Id": 16,
"Type": 4,
"ColltectionNum": 4,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 17,
"Type": 4,
"ColltectionNum": 8,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 18,
"Type": 4,
"ColltectionNum": 12,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 19,
"Type": 4,
"ColltectionNum": 16,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 20,
"Type": 4,
"ColltectionNum": 20,
"Reward": [
{
@ -190,5 +238,65 @@
"n": 100
}
]
},
{
"Id": 21,
"Type": 5,
"ColltectionNum": 2,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 22,
"Type": 5,
"ColltectionNum": 4,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 23,
"Type": 5,
"ColltectionNum": 6,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 24,
"Type": 5,
"ColltectionNum": 8,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
},
{
"Id": 25,
"Type": 5,
"ColltectionNum": 10,
"Reward": [
{
"a": "attr",
"t": "diamond",
"n": 100
}
]
}
]

View File

@ -19,16 +19,6 @@
"LimitTime": 1,
"PrivilegeId": 1
},
{
"Id": 3,
"EventId": 18000001,
"EventDesc": {
"key": "stonehenge_eventstore_EventDesc_3",
"text": "回血"
},
"LimitTime": 2,
"PrivilegeId": 0
},
{
"Id": 4,
"EventId": 22012101,

87
bin/json/game_title.json Normal file
View File

@ -0,0 +1,87 @@
[
{
"key": "10001",
"name": {
"key": "title_title_name_01",
"text": "最强公会"
},
"color": 3,
"title": "zj_ch_zqgh",
"titleicon": "zj_ch_icon_zqgh",
"form": [
107
],
"txt": {
"key": "title_title_txt_01",
"text": "只有最强公会才配得上的称号。"
}
},
{
"key": "10002",
"name": {
"key": "title_title_name_02",
"text": "最强公会"
},
"color": 3,
"title": "zj_ch_zqgh",
"titleicon": "zj_ch_icon_zqgh",
"form": [
107
],
"txt": {
"key": "title_title_txt_02",
"text": "只有最强公会才配得上的称号。"
}
},
{
"key": "10003",
"name": {
"key": "title_title_name_03",
"text": "最强公会"
},
"color": 3,
"title": "zj_ch_zqgh",
"titleicon": "zj_ch_icon_zqgh",
"form": [
107
],
"txt": {
"key": "title_title_txt_03",
"text": "只有最强公会才配得上的称号。"
}
},
{
"key": "10004",
"name": {
"key": "title_title_name_04",
"text": "最强公会"
},
"color": 3,
"title": "zj_ch_zqgh",
"titleicon": "zj_ch_icon_zqgh",
"form": [
107
],
"txt": {
"key": "title_title_txt_04",
"text": "只有最强公会才配得上的称号。"
}
},
{
"key": "10005",
"name": {
"key": "title_title_name_05",
"text": "最强公会"
},
"color": 3,
"title": "zj_ch_zqgh",
"titleicon": "zj_ch_icon_zqgh",
"form": [
107
],
"txt": {
"key": "title_title_txt_05",
"text": "只有最强公会才配得上的称号。"
}
}
]

View File

@ -115,7 +115,12 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.MainlineCh
first = true
info.Level[req.Level] = star
}
info.Lastlevel[conf.Chapterid] = req.Level
if len(conf.Grouptype) == 2 {
info.Stategroup[conf.Grouptype[0]] = conf.Grouptype[1]
}
if conf.Inherit == 0 {
info.Lastlevel[conf.Chapterid] = req.Level
}
this.module.modelMline.updateprogress(info)
if first { // 发奖

View File

@ -76,7 +76,13 @@ func (this *apiComp) LevelPass(session comm.IUserSession, req *pb.MainlineLevelP
first = true
info.Level[req.Level] = star
}
info.Lastlevel[conf.Chapterid] = req.Level
if len(conf.Grouptype) == 2 {
info.Stategroup[conf.Grouptype[0]] = conf.Grouptype[1]
}
if conf.Inherit == 0 {
info.Lastlevel[conf.Chapterid] = req.Level
}
this.module.modelMline.updateprogress(info)
if first { // 发奖
if errdata, atno = this.module.DispenseAtno(session, conf.Firstaward, true); errdata != nil {

View File

@ -64,6 +64,7 @@ func (this *ModelMline) updateMainlineData(uid string, data *pb.DBMainline) (err
"exploreaward": data.Exploreaward,
"groupaward": data.Groupaward,
"ps": data.Ps,
"stategroup": data.Stategroup,
}); err != nil {
this.module.Error("更新用户任务数据 错误!", log.Field{Key: "err", Value: err.Error()})
return

View File

@ -38,7 +38,6 @@ type ModuleBase struct {
ModulePrivilege comm.IPrivilege // 月卡
ModuleSmithy comm.ISmithy //铁匠铺
ModulePractice comm.IPractice //练功房
ModuleParkour comm.IParkour //捕羊大赛
ModuleTools comm.ITools //工具类 获取一些通用配置
ModuleBuried comm.IBuried //触发埋点中心
ModuleMail comm.Imail //邮件
@ -127,10 +126,6 @@ func (this *ModuleBase) Start() (err error) {
return
}
this.ModulePractice = module.(comm.IPractice)
if module, err = this.service.GetModule(comm.ModuleParkour); err != nil {
return
}
this.ModuleParkour = module.(comm.IParkour)
if module, err = this.service.GetModule(comm.ModuleTools); err != nil {
return
}

View File

@ -6,6 +6,7 @@ import (
"go_dreamfactory/lego/core/cbase"
"go_dreamfactory/lego/sys/timewheel"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"math/rand"
"sync"
"time"
@ -18,6 +19,7 @@ type aiComp struct {
cbase.ModuleCompBase
service core.IService
module *Parkour
conf []*cfg.GameBuzkashiGradeData
lock sync.RWMutex
ais map[string][]*AI
handleS []AIHandleType
@ -40,6 +42,9 @@ func (this *aiComp) Init(service core.IService, module core.IModule, comp core.I
func (this *aiComp) Start() (err error) {
err = this.ModuleCompBase.Start()
if this.conf, err = this.module.configure.getGameBuzkashiGrades(); err != nil {
return
}
timewheel.AddCron(time.Second*3, this.aihandle)
return
}
@ -196,13 +201,13 @@ func (this *aiComp) aihandle(task *timewheel.Task, args ...interface{}) {
if time.Now().Sub(ai.LastTime) > ai.Interval {
switch ai.Handle[ai.CurrIndex] {
case AIHandle_Avoid0: //躲避障碍 失败
go this.module.avoid(id, ai.UId, -1)
go this.module.avoid(id, ai.UId, nil)
break
case AIHandle_Avoid1: //躲避障碍 成功
go this.module.avoid(id, ai.UId, 3)
go this.module.avoid(id, ai.UId, this.conf[1])
break
case AIHandle_Avoid2: //躲避障碍 完美
go this.module.avoid(id, ai.UId, 1)
go this.module.avoid(id, ai.UId, this.conf[0])
break
case AIHandle_Shots0: //射门 失败
break

View File

@ -2,7 +2,9 @@ package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/pb"
"go_dreamfactory/utils"
)
//参数校验
@ -13,34 +15,127 @@ func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.ParkourInfoReq
///匹配请求
func (this *apiComp) Info(session comm.IUserSession, req *pb.ParkourInfoReq) (errdata *pb.ErrorData) {
var (
isopen bool
info *pb.DBParkour
recommend []*pb.DBRaceMember
err error
info *pb.DBParkour
user *pb.DBUser
dragon *pb.DBDragon
dragons []*pb.DBDragon
update map[string]interface{} = make(map[string]interface{})
err error
)
if errdata = this.InfoCheck(session, req); errdata != nil {
return
}
// isopen = this.module.configure.isopen()
isopen = true
if isopen {
if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if recommend, err = this.module.parkourComp.getrusers(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
user, err = this.module.ModuleUser.GetUser(session.GetUserId())
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
session.SendMsg(string(this.module.GetType()), "info", &pb.ParkourInfoResp{Isopen: isopen, Info: info, Recommend: recommend})
if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil && err != mgo.MongodbNil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if info.Defmts == "" { //没有默认坐骑
if dragons, err = this.module.dragon.GetDragonList(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if len(dragons) > 0 {
info.Defmts = dragons[0].Id
info.Property = dragons[0].Property
info.Mount = dragons[0].Dragonid
info.Mlv = dragons[0].Lv
update["defmts"] = info.Defmts
update["property"] = info.Property
update["mount"] = info.Mount
update["mlv"] = info.Mlv
}
} else {
if dragon, err = this.module.dragon.QueryDragonById(session.GetUserId(), info.Defmts); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
info.Defmts = dragon.Id
info.Property = dragon.Property
info.Mount = dragon.Dragonid
info.Mlv = dragon.Lv
update["defmts"] = info.Defmts
update["property"] = info.Property
update["mount"] = info.Mount
update["mlv"] = info.Mlv
}
if !utils.IsSameWeek(info.Weektime) {
info.Weekintegral = 0
update["weekintegral"] = 0
}
info.Lv = user.Lv
info.Name = user.Name
info.Sex = user.Gender
info.Skin = user.CurSkin
update["lv"] = user.Lv
update["name"] = user.Name
update["sex"] = user.Gender
update["skin"] = user.CurSkin
if err = this.module.parkourComp.Change(session.GetUserId(), update); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
session.SendMsg(string(this.module.GetType()), "info", &pb.ParkourInfoResp{Info: info})
// var (
// isopen bool
// info *pb.DBParkour
// recommend []*pb.DBRaceMember
// err error
// )
// if errdata = this.InfoCheck(session, req); errdata != nil {
// return
// }
// // isopen = this.module.configure.isopen()
// isopen = true
// if isopen {
// if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if recommend, err = this.module.parkourComp.getrusers(session.GetUserId()); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// }
// session.SendMsg(string(this.module.GetType()), "info", &pb.ParkourInfoResp{Isopen: isopen, Info: info, Recommend: recommend})
return
}

View File

@ -3,6 +3,7 @@ package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
)
//参数校验
@ -10,19 +11,33 @@ func (this *apiComp) AvoidCheck(session comm.IUserSession, req *pb.ParkourAvoidR
return
}
///游戏
//躲避障碍物
func (this *apiComp) Avoid(session comm.IUserSession, req *pb.ParkourAvoidReq) (errdata *pb.ErrorData) {
var (
ok bool
conf *cfg.GameBuzkashiGradeData
err error
ok bool
)
if errdata = this.AvoidCheck(session, req); errdata != nil {
return
}
if req.Distance > 0 {
if conf, err = this.module.configure.getGameBuzkashiGrade(int32(req.Distance)); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ConfigNoFound,
Title: pb.ErrorCode_ConfigNoFound.ToString(),
Message: err.Error(),
}
return
}
}
this.module.lock.RLock()
_, ok = this.module.battles[req.Battleid]
this.module.lock.RUnlock()
if ok {
go this.module.avoid(req.Battleid, session.GetUserId(), req.Distance)
go this.module.avoid(req.Battleid, session.GetUserId(), conf)
} else {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,

View File

@ -13,9 +13,9 @@ func (this *apiComp) ChangeMtsCheck(session comm.IUserSession, req *pb.ParkourCh
///游戏
func (this *apiComp) ChangeMts(session comm.IUserSession, req *pb.ParkourChangeMtsReq) (errdata *pb.ErrorData) {
var (
info *pb.DBParkour
team *pb.DBParkour
err error
info *pb.DBParkour
dragon *pb.DBDragon
err error
)
if errdata = this.ChangeMtsCheck(session, req); errdata != nil {
return
@ -28,72 +28,108 @@ func (this *apiComp) ChangeMts(session comm.IUserSession, req *pb.ParkourChangeM
}
return
}
if _, ok := info.Mounts[req.Mtsid]; !ok {
if dragon, err = this.module.dragon.QueryDragonById(session.GetUserId(), req.Mtsid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
info.Dfmount = req.Mtsid
if info.Captainid != "" {
if info.Captainid == session.GetUserId() {
for _, v := range info.Member {
if v.Uid == session.GetUserId() {
v.Mount = info.Dfmount
v.Maxhp = 10
}
}
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"dfmount": info.Dfmount,
"member": info.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
} else {
if team, err = this.module.parkourComp.queryinfo(info.Captainid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
for _, v := range team.Member {
if v.Uid == session.GetUserId() {
v.Mount = info.Dfmount
v.Maxhp = 10
}
}
if err = this.module.parkourComp.Change(team.Captainid, map[string]interface{}{
"member": team.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
}
} else {
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"dfmount": info.Dfmount,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
info.Defmts = dragon.Id
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"defmts": info.Defmts,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
session.SendMsg(string(this.module.GetType()), "changemts", &pb.CapturesheepChangeMtsResp{Mid: req.Mtsid})
// var (
// info *pb.DBParkour
// team *pb.DBParkour
// err error
// )
// if errdata = this.ChangeMtsCheck(session, req); errdata != nil {
// return
// }
// if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if _, ok := info.Mounts[req.Mtsid]; !ok {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ReqParameterError,
// Title: pb.ErrorCode_ReqParameterError.ToString(),
// }
// return
// }
// info.Dfmount = req.Mtsid
// if info.Captainid != "" {
// if info.Captainid == session.GetUserId() {
// for _, v := range info.Member {
// if v.Uid == session.GetUserId() {
// v.Mount = info.Dfmount
// v.Maxhp = 10
// }
// }
// if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
// "dfmount": info.Dfmount,
// "member": info.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// } else {
// if team, err = this.module.parkourComp.queryinfo(info.Captainid); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// for _, v := range team.Member {
// if v.Uid == session.GetUserId() {
// v.Mount = info.Dfmount
// v.Maxhp = 10
// }
// }
// if err = this.module.parkourComp.Change(team.Captainid, map[string]interface{}{
// "member": team.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// }
// } else {
// if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
// "dfmount": info.Dfmount,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// }
session.SendMsg(string(this.module.GetType()), "changemts", &pb.ParkourChangeMtsResp{Issucc: true, Mtsid: req.Mtsid})
// session.SendMsg(string(this.module.GetType()), "changemts", &pb.ParkourChangeMtsResp{Issucc: true, Mtsid: req.Mtsid})
return
}

View File

@ -1,141 +1,141 @@
package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
"time"
)
// import (
// "go_dreamfactory/comm"
// "go_dreamfactory/pb"
// "go_dreamfactory/sys/configure"
// "time"
// )
//参数校验
func (this *apiComp) InviteCheck(session comm.IUserSession, req *pb.ParkourInviteReq) (errdata *pb.ErrorData) {
if req.Uid == session.GetUserId() {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
}
return
}
// //参数校验
// func (this *apiComp) InviteCheck(session comm.IUserSession, req *pb.ParkourInviteReq) (errdata *pb.ErrorData) {
// if req.Uid == session.GetUserId() {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ReqParameterError,
// Title: pb.ErrorCode_ReqParameterError.ToString(),
// }
// }
// return
// }
///邀请组队
func (this *apiComp) Invite(session comm.IUserSession, req *pb.ParkourInviteReq) (errdata *pb.ErrorData) {
var (
info *pb.DBParkour
tinfo *pb.DBParkour
tuser *pb.DBUser
member *pb.DBRaceMember
users []string
ok bool
err error
)
if errdata = this.InviteCheck(session, req); errdata != nil {
return
}
if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if info.Captainid != "" && info.Captainid != session.GetUserId() { //自己不是队长 无权邀请他人
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ParkourInviteNoPermissions,
Title: pb.ErrorCode_ParkourInviteNoPermissions.ToString(),
Message: err.Error(),
}
return
}
if len(info.Member) > 3 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
return
}
if tuser, err = this.module.ModuleUser.GetUser(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_SystemError,
Title: pb.ErrorCode_SystemError.ToString(),
}
return
}
// ///邀请组队
// func (this *apiComp) Invite(session comm.IUserSession, req *pb.ParkourInviteReq) (errdata *pb.ErrorData) {
// var (
// info *pb.DBParkour
// tinfo *pb.DBParkour
// tuser *pb.DBUser
// member *pb.DBRaceMember
// users []string
// ok bool
// err error
// )
// if errdata = this.InviteCheck(session, req); errdata != nil {
// return
// }
// if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if info.Captainid != "" && info.Captainid != session.GetUserId() { //自己不是队长 无权邀请他人
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ParkourInviteNoPermissions,
// Title: pb.ErrorCode_ParkourInviteNoPermissions.ToString(),
// Message: err.Error(),
// }
// return
// }
// if len(info.Member) > 3 {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ReqParameterError,
// Title: pb.ErrorCode_ReqParameterError.ToString(),
// }
// return
// }
// if tuser, err = this.module.ModuleUser.GetUser(session.GetUserId()); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_SystemError,
// Title: pb.ErrorCode_SystemError.ToString(),
// }
// return
// }
ok = false
for _, v := range info.Member {
if v.Uid == session.GetUserId() {
ok = true
}
}
if !ok {
info.Member = append(info.Member, &pb.DBRaceMember{Uid: tuser.Uid, Name: tuser.Name, Avatar: tuser.Avatar, Lv: tuser.Lv, Mount: info.Dfmount, Maxhp: 10})
}
// ok = false
// for _, v := range info.Member {
// if v.Uid == session.GetUserId() {
// ok = true
// }
// }
// if !ok {
// info.Member = append(info.Member, &pb.DBRaceMember{Uid: tuser.Uid, Name: tuser.Name, Avatar: tuser.Avatar, Lv: tuser.Lv, Mount: info.Dfmount, Maxhp: 10})
// }
if tinfo, err = this.module.parkourComp.queryinfo(req.Uid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if tuser, err = this.module.ModuleUser.GetUser(req.Uid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_SystemError,
Title: pb.ErrorCode_SystemError.ToString(),
Message: err.Error(),
}
return
}
// if tinfo, err = this.module.parkourComp.queryinfo(req.Uid); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if tuser, err = this.module.ModuleUser.GetUser(req.Uid); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_SystemError,
// Title: pb.ErrorCode_SystemError.ToString(),
// Message: err.Error(),
// }
// return
// }
//目标是否在线
if !this.module.ModuleUser.IsOnline(req.Uid) {
member = &pb.DBRaceMember{Uid: tuser.Uid, Name: tuser.Name, Avatar: tuser.Avatar, Lv: tuser.Lv, Mount: tinfo.Dfmount, Maxhp: 10, Isai: true}
info.Captainid = session.GetUserId()
info.Member = append(info.Member, member)
users = make([]string, len(info.Member))
for i, v := range info.Member {
users[i] = v.Uid
}
this.module.SendMsgToUsers(string(this.module.GetType()), "teamjoinnotice",
&pb.ParkourTeamJoinNoticePush{Member: member}, users...)
this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
&pb.ParkourTeamChanagePush{Team: info}, users...)
} else {
if tinfo.Captainid != "" {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ParkourTargetTeamed,
Title: pb.ErrorCode_ParkourTargetTeamed.ToString(),
}
return
}
ok = false
for _, v := range info.Invite {
if v.Uid == req.Uid {
v.Expired = configure.Now().Add(time.Second * 10).Unix()
ok = true
}
}
if !ok {
info.Invite = append(info.Invite, &pb.DBRaceInvite{Uid: tuser.Uid, Name: tuser.Name, Avatar: tuser.Avatar, Lv: tuser.Lv, Expired: configure.Now().Add(time.Second * 10).Unix()})
}
this.module.SendMsgToUser(string(this.module.GetType()), "invitenotice",
&pb.ParkourInviteNoticePush{Team: info, State: 1}, req.Uid)
}
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"captainid": info.Captainid,
"invite": info.Invite,
"member": info.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
session.SendMsg(string(this.module.GetType()), "invite", &pb.ParkourInviteResp{Issucc: true, Team: info})
return
}
// //目标是否在线
// if !this.module.ModuleUser.IsOnline(req.Uid) {
// member = &pb.DBRaceMember{Uid: tuser.Uid, Name: tuser.Name, Avatar: tuser.Avatar, Lv: tuser.Lv, Mount: tinfo.Dfmount, Maxhp: 10, Isai: true}
// info.Captainid = session.GetUserId()
// info.Member = append(info.Member, member)
// users = make([]string, len(info.Member))
// for i, v := range info.Member {
// users[i] = v.Uid
// }
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamjoinnotice",
// &pb.ParkourTeamJoinNoticePush{Member: member}, users...)
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
// &pb.ParkourTeamChanagePush{Team: info}, users...)
// } else {
// if tinfo.Captainid != "" {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ParkourTargetTeamed,
// Title: pb.ErrorCode_ParkourTargetTeamed.ToString(),
// }
// return
// }
// ok = false
// for _, v := range info.Invite {
// if v.Uid == req.Uid {
// v.Expired = configure.Now().Add(time.Second * 10).Unix()
// ok = true
// }
// }
// if !ok {
// info.Invite = append(info.Invite, &pb.DBRaceInvite{Uid: tuser.Uid, Name: tuser.Name, Avatar: tuser.Avatar, Lv: tuser.Lv, Expired: configure.Now().Add(time.Second * 10).Unix()})
// }
// this.module.SendMsgToUser(string(this.module.GetType()), "invitenotice",
// &pb.ParkourInviteNoticePush{Team: info, State: 1}, req.Uid)
// }
// if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
// "captainid": info.Captainid,
// "invite": info.Invite,
// "member": info.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// session.SendMsg(string(this.module.GetType()), "invite", &pb.ParkourInviteResp{Issucc: true, Team: info})
// return
// }

View File

@ -1,115 +1,115 @@
package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
"time"
)
// import (
// "go_dreamfactory/comm"
// "go_dreamfactory/pb"
// "go_dreamfactory/sys/configure"
// "time"
// )
//参数校验
func (this *apiComp) InviteHandleCheck(session comm.IUserSession, req *pb.ParkourInviteHandleReq) (errdata *pb.ErrorData) {
return
}
// //参数校验
// func (this *apiComp) InviteHandleCheck(session comm.IUserSession, req *pb.ParkourInviteHandleReq) (errdata *pb.ErrorData) {
// return
// }
///邀请组队
func (this *apiComp) InviteHandle(session comm.IUserSession, req *pb.ParkourInviteHandleReq) (errdata *pb.ErrorData) {
var (
info *pb.DBParkour
tean *pb.DBParkour
invite *pb.DBRaceInvite
member *pb.DBRaceMember
users []string
ok bool
index int32
err error
)
if errdata = this.InviteHandleCheck(session, req); errdata != nil {
return
}
if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
// ///邀请组队
// func (this *apiComp) InviteHandle(session comm.IUserSession, req *pb.ParkourInviteHandleReq) (errdata *pb.ErrorData) {
// var (
// info *pb.DBParkour
// tean *pb.DBParkour
// invite *pb.DBRaceInvite
// member *pb.DBRaceMember
// users []string
// ok bool
// index int32
// err error
// )
// if errdata = this.InviteHandleCheck(session, req); errdata != nil {
// return
// }
// if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
if tean, err = this.module.parkourComp.queryinfo(req.Captainid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if len(tean.Member) >= 3 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ParkourMemberFull,
Title: pb.ErrorCode_ParkourMemberFull.ToString(),
}
return
}
if req.State == 3 {
ok = false
for i, v := range tean.Invite {
if v.Uid == session.GetUserId() && configure.Now().Before(time.Unix(v.Expired, 0)) { //邀请未过期
invite = v
index = int32(i)
ok = true
}
}
if !ok {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ParkourInviteOverdue,
Title: pb.ErrorCode_ParkourInviteOverdue.ToString(),
}
return
}
tean.Invite = append(tean.Invite[0:index], tean.Invite[index+1:]...)
users = make([]string, len(tean.Member))
for i, v := range tean.Member {
users[i] = v.Uid
}
users = append(users, invite.Uid)
member = &pb.DBRaceMember{Uid: invite.Uid, Name: invite.Name, Avatar: invite.Avatar, Lv: invite.Lv, Mount: info.Dfmount, Maxhp: 10}
tean.Captainid = tean.Uid
tean.State = pb.RaceTeamState_teaming
tean.Member = append(tean.Member, member)
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"captainid": tean.Captainid,
"state": tean.State,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if err = this.module.parkourComp.Change(tean.Captainid, map[string]interface{}{
"state": tean.State,
"invite": tean.Invite,
"captainid": tean.Captainid,
"member": tean.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
this.module.SendMsgToUsers(string(this.module.GetType()), "teamjoinnotice",
&pb.ParkourTeamJoinNoticePush{Member: member}, users...)
this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
&pb.ParkourTeamChanagePush{Team: tean}, users...)
} else {
this.module.SendMsgToUser(string(this.module.GetType()), "invitenotice",
&pb.ParkourInviteNoticePush{Team: tean, State: 3}, tean.Captainid)
}
// if tean, err = this.module.parkourComp.queryinfo(req.Captainid); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if len(tean.Member) >= 3 {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ParkourMemberFull,
// Title: pb.ErrorCode_ParkourMemberFull.ToString(),
// }
// return
// }
// if req.State == 3 {
// ok = false
// for i, v := range tean.Invite {
// if v.Uid == session.GetUserId() && configure.Now().Before(time.Unix(v.Expired, 0)) { //邀请未过期
// invite = v
// index = int32(i)
// ok = true
// }
// }
// if !ok {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ParkourInviteOverdue,
// Title: pb.ErrorCode_ParkourInviteOverdue.ToString(),
// }
// return
// }
// tean.Invite = append(tean.Invite[0:index], tean.Invite[index+1:]...)
// users = make([]string, len(tean.Member))
// for i, v := range tean.Member {
// users[i] = v.Uid
// }
// users = append(users, invite.Uid)
// member = &pb.DBRaceMember{Uid: invite.Uid, Name: invite.Name, Avatar: invite.Avatar, Lv: invite.Lv, Mount: info.Dfmount, Maxhp: 10}
// tean.Captainid = tean.Uid
// tean.State = pb.RaceTeamState_teaming
// tean.Member = append(tean.Member, member)
// if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
// "captainid": tean.Captainid,
// "state": tean.State,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if err = this.module.parkourComp.Change(tean.Captainid, map[string]interface{}{
// "state": tean.State,
// "invite": tean.Invite,
// "captainid": tean.Captainid,
// "member": tean.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamjoinnotice",
// &pb.ParkourTeamJoinNoticePush{Member: member}, users...)
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
// &pb.ParkourTeamChanagePush{Team: tean}, users...)
// } else {
// this.module.SendMsgToUser(string(this.module.GetType()), "invitenotice",
// &pb.ParkourInviteNoticePush{Team: tean, State: 3}, tean.Captainid)
// }
session.SendMsg(string(this.module.GetType()), "invitehandle", &pb.ParkourInviteHandleResp{IsSucc: true})
return
}
// session.SendMsg(string(this.module.GetType()), "invitehandle", &pb.ParkourInviteHandleResp{IsSucc: true})
// return
// }

View File

@ -1,134 +1,134 @@
package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
// import (
// "go_dreamfactory/comm"
// "go_dreamfactory/pb"
// )
//参数校验
func (this *apiComp) JoinTeamCheck(session comm.IUserSession, req *pb.ParkourJoinTeamReq) (errdata *pb.ErrorData) {
if session.GetUserId() == req.Uid {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
}
// //参数校验
// func (this *apiComp) JoinTeamCheck(session comm.IUserSession, req *pb.ParkourJoinTeamReq) (errdata *pb.ErrorData) {
// if session.GetUserId() == req.Uid {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ReqParameterError,
// Title: pb.ErrorCode_ReqParameterError.ToString(),
// }
// }
return
}
// return
// }
///请求进入队伍
func (this *apiComp) JoinTeam(session comm.IUserSession, req *pb.ParkourJoinTeamReq) (errdata *pb.ErrorData) {
var (
info *pb.DBParkour
tean *pb.DBParkour
member *pb.DBRaceMember
users []string
// ///请求进入队伍
// func (this *apiComp) JoinTeam(session comm.IUserSession, req *pb.ParkourJoinTeamReq) (errdata *pb.ErrorData) {
// var (
// info *pb.DBParkour
// tean *pb.DBParkour
// member *pb.DBRaceMember
// users []string
err error
)
if errdata = this.JoinTeamCheck(session, req); errdata != nil {
return
}
if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
// 状态校验
if info.State != pb.RaceTeamState_resting { // 不是休息中不能参加
errdata = &pb.ErrorData{
Code: pb.ErrorCode_StateInvalid,
Title: pb.ErrorCode_StateInvalid.ToString(),
Message: err.Error(),
}
return
}
// err error
// )
// if errdata = this.JoinTeamCheck(session, req); errdata != nil {
// return
// }
// if info, err = this.module.parkourComp.queryinfo(session.GetUserId()); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// // 状态校验
// if info.State != pb.RaceTeamState_resting { // 不是休息中不能参加
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_StateInvalid,
// Title: pb.ErrorCode_StateInvalid.ToString(),
// Message: err.Error(),
// }
// return
// }
if len(info.Member) > 3 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ParkourMemberFull,
Title: pb.ErrorCode_ParkourMemberFull.ToString(),
Message: err.Error(),
}
return
}
if tean, err = this.module.parkourComp.queryinfo(req.Uid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
// if len(info.Member) > 3 {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ParkourMemberFull,
// Title: pb.ErrorCode_ParkourMemberFull.ToString(),
// Message: err.Error(),
// }
// return
// }
// if tean, err = this.module.parkourComp.queryinfo(req.Uid); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
users = make([]string, len(tean.Member))
for i, v := range tean.Member {
if v.Uid == session.GetUserId() {
// 自己已经在队伍中
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ParkourTargetTeamed,
Title: pb.ErrorCode_ParkourTargetTeamed.ToString(),
Message: err.Error(),
}
return
}
users[i] = v.Uid
}
user, err := this.module.ModuleUser.GetUser(session.GetUserId())
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_SystemError,
Title: pb.ErrorCode_SystemError.ToString(),
Message: err.Error(),
}
return
}
if tean.Captainid == "" {
// users = make([]string, len(tean.Member))
// for i, v := range tean.Member {
// if v.Uid == session.GetUserId() {
// // 自己已经在队伍中
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ParkourTargetTeamed,
// Title: pb.ErrorCode_ParkourTargetTeamed.ToString(),
// Message: err.Error(),
// }
// return
// }
// users[i] = v.Uid
// }
// user, err := this.module.ModuleUser.GetUser(session.GetUserId())
// if err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_SystemError,
// Title: pb.ErrorCode_SystemError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if tean.Captainid == "" {
member = &pb.DBRaceMember{Uid: user.Uid, Name: user.Name, Avatar: user.Avatar, Lv: user.Lv, Mount: tean.Dfmount, Maxhp: 10}
tean.Captainid = tean.Uid
tean.State = pb.RaceTeamState_teaming
tean.Member = append(tean.Member, member)
users = append(users, tean.Uid)
}
// member = &pb.DBRaceMember{Uid: user.Uid, Name: user.Name, Avatar: user.Avatar, Lv: user.Lv, Mount: tean.Dfmount, Maxhp: 10}
// tean.Captainid = tean.Uid
// tean.State = pb.RaceTeamState_teaming
// tean.Member = append(tean.Member, member)
// users = append(users, tean.Uid)
// }
users = append(users, session.GetUserId())
// users = append(users, session.GetUserId())
member = &pb.DBRaceMember{Uid: user.Uid, Name: user.Name, Avatar: user.Avatar, Lv: user.Lv, Mount: info.Dfmount, Maxhp: 10}
tean.Member = append(tean.Member, member)
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"state": tean.State,
"captainid": tean.Captainid,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if err = this.module.parkourComp.Change(tean.Captainid, map[string]interface{}{
"state": tean.State,
"captainid": tean.Captainid,
"member": tean.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
this.module.SendMsgToUsers(string(this.module.GetType()), "teamjoinnotice",
&pb.ParkourTeamJoinNoticePush{Member: member}, users...)
this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
&pb.ParkourTeamChanagePush{Team: tean}, users...)
session.SendMsg(string(this.module.GetType()), "jointeam", &pb.ParkourJoinTeamResp{
Team: tean,
})
return
}
// member = &pb.DBRaceMember{Uid: user.Uid, Name: user.Name, Avatar: user.Avatar, Lv: user.Lv, Mount: info.Dfmount, Maxhp: 10}
// tean.Member = append(tean.Member, member)
// if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
// "state": tean.State,
// "captainid": tean.Captainid,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if err = this.module.parkourComp.Change(tean.Captainid, map[string]interface{}{
// "state": tean.State,
// "captainid": tean.Captainid,
// "member": tean.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamjoinnotice",
// &pb.ParkourTeamJoinNoticePush{Member: member}, users...)
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
// &pb.ParkourTeamChanagePush{Team: tean}, users...)
// session.SendMsg(string(this.module.GetType()), "jointeam", &pb.ParkourJoinTeamResp{
// Team: tean,
// })
// return
// }

View File

@ -0,0 +1,48 @@
package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
)
//参数校验
func (this *apiComp) QTECheck(session comm.IUserSession, req *pb.ParkourQTEReq) (errdata *pb.ErrorData) {
return
}
///匹配请求
func (this *apiComp) QTE(session comm.IUserSession, req *pb.ParkourQTEReq) (errdata *pb.ErrorData) {
var (
conf *cfg.GameBuzkashiQteLvData
err error
ok bool
)
if errdata = this.QTECheck(session, req); errdata != nil {
return
}
if conf, err = this.module.configure.getGameBuzkashiQteLv(req.Time); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ConfigNoFound,
Title: pb.ErrorCode_ConfigNoFound.ToString(),
Message: err.Error(),
}
return
}
this.module.lock.RLock()
_, ok = this.module.battles[req.Battleid]
this.module.lock.RUnlock()
if ok {
go this.module.qte(req.Battleid, session.GetUserId(), conf)
} else {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
return
}
session.SendMsg(string(this.module.GetType()), "shot", &pb.ParkourShotResp{})
return
}

View File

@ -1,142 +1,142 @@
package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
// import (
// "go_dreamfactory/comm"
// "go_dreamfactory/pb"
// )
//参数校验
func (this *apiComp) QuitTeamCheck(session comm.IUserSession, req *pb.ParkourQuitTeamReq) (errdata *pb.ErrorData) {
return
}
// //参数校验
// func (this *apiComp) QuitTeamCheck(session comm.IUserSession, req *pb.ParkourQuitTeamReq) (errdata *pb.ErrorData) {
// return
// }
///退出队伍
func (this *apiComp) QuitTeam(session comm.IUserSession, req *pb.ParkourQuitTeamReq) (errdata *pb.ErrorData) {
var (
tean *pb.DBParkour
ntean *pb.DBParkour
member *pb.DBRaceMember
users []string
ok bool
err error
)
if errdata = this.QuitTeamCheck(session, req); errdata != nil {
return
}
if tean, err = this.module.parkourComp.queryinfo(req.Captainid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
for i, v := range tean.Member {
if v.Uid == session.GetUserId() {
tean.Member = append(tean.Member[0:i], tean.Member[i+1:]...)
member = v
ok = true
} else if !v.Isai {
users = append(users, v.Uid)
}
}
if !ok {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
return
}
if req.Captainid == session.GetUserId() { //自己是队长
if len(users) > 0 {
for i, v := range users {
if i == 0 {
if ntean, err = this.module.parkourComp.queryinfo(v); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
} else {
ntean.Captainid = users[0]
ntean.Member = tean.Member
if err = this.module.parkourComp.Change(v, map[string]interface{}{
"captainid": v,
"member": tean.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
}
} else {
if err = this.module.parkourComp.Change(v, map[string]interface{}{
"captainid": users[0],
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
}
}
this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
&pb.ParkourTeamChanagePush{Team: ntean}, users...)
}
// ///退出队伍
// func (this *apiComp) QuitTeam(session comm.IUserSession, req *pb.ParkourQuitTeamReq) (errdata *pb.ErrorData) {
// var (
// tean *pb.DBParkour
// ntean *pb.DBParkour
// member *pb.DBRaceMember
// users []string
// ok bool
// err error
// )
// if errdata = this.QuitTeamCheck(session, req); errdata != nil {
// return
// }
// if tean, err = this.module.parkourComp.queryinfo(req.Captainid); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// for i, v := range tean.Member {
// if v.Uid == session.GetUserId() {
// tean.Member = append(tean.Member[0:i], tean.Member[i+1:]...)
// member = v
// ok = true
// } else if !v.Isai {
// users = append(users, v.Uid)
// }
// }
// if !ok {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_ReqParameterError,
// Title: pb.ErrorCode_ReqParameterError.ToString(),
// }
// return
// }
// if req.Captainid == session.GetUserId() { //自己是队长
// if len(users) > 0 {
// for i, v := range users {
// if i == 0 {
// if ntean, err = this.module.parkourComp.queryinfo(v); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// } else {
// ntean.Captainid = users[0]
// ntean.Member = tean.Member
// if err = this.module.parkourComp.Change(v, map[string]interface{}{
// "captainid": v,
// "member": tean.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// }
// } else {
// if err = this.module.parkourComp.Change(v, map[string]interface{}{
// "captainid": users[0],
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// }
// }
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
// &pb.ParkourTeamChanagePush{Team: ntean}, users...)
// }
tean.Invite = make([]*pb.DBRaceInvite, 0)
tean.Member = make([]*pb.DBRaceMember, 0)
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"state": pb.RaceTeamState_resting,
"captainid": "",
"invite": tean.Invite,
"member": tean.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
// tean.Invite = make([]*pb.DBRaceInvite, 0)
// tean.Member = make([]*pb.DBRaceMember, 0)
// if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
// "state": pb.RaceTeamState_resting,
// "captainid": "",
// "invite": tean.Invite,
// "member": tean.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
} else {
if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
"state": pb.RaceTeamState_resting,
"captainid": "",
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if err = this.module.parkourComp.Change(req.Captainid, map[string]interface{}{
"member": tean.Member,
}); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if len(users) > 0 {
this.module.SendMsgToUsers(string(this.module.GetType()), "teamquitnotice",
&pb.ParkourTeamQuitNoticePush{Member: member}, users...)
// } else {
// if err = this.module.parkourComp.Change(session.GetUserId(), map[string]interface{}{
// "state": pb.RaceTeamState_resting,
// "captainid": "",
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if err = this.module.parkourComp.Change(req.Captainid, map[string]interface{}{
// "member": tean.Member,
// }); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
// if len(users) > 0 {
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamquitnotice",
// &pb.ParkourTeamQuitNoticePush{Member: member}, users...)
this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
&pb.ParkourTeamChanagePush{Team: tean}, users...)
}
}
// this.module.SendMsgToUsers(string(this.module.GetType()), "teamchanage",
// &pb.ParkourTeamChanagePush{Team: tean}, users...)
// }
// }
session.SendMsg(string(this.module.GetType()), "quitteam", &pb.ParkourQuitTeamResp{})
return
}
// session.SendMsg(string(this.module.GetType()), "quitteam", &pb.ParkourQuitTeamResp{})
// return
// }

View File

@ -20,7 +20,7 @@ func (this *apiComp) RaceMatchCheck(session comm.IUserSession, req *pb.ParkourRa
func (this *apiComp) RaceMatch(session comm.IUserSession, req *pb.ParkourRaceMatchReq) (errdata *pb.ErrorData) {
var (
team *pb.DBParkour
tuser *pb.DBUser
ais []*pb.DBRaceMember
users []string
err error
)
@ -45,16 +45,17 @@ func (this *apiComp) RaceMatch(session comm.IUserSession, req *pb.ParkourRaceMat
if team.Captainid == "" { //为组队情况
team.Captainid = team.Uid
team.State = pb.RaceTeamState_teaming
if tuser, err = this.module.ModuleUser.GetUser(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_SystemError,
Title: pb.ErrorCode_SystemError.ToString(),
Message: err.Error(),
}
return
}
team.Member = append(team.Member, &pb.DBRaceMember{Uid: tuser.Uid, Name: tuser.Name, Avatar: tuser.Avatar, Lv: tuser.Lv, Mount: team.Dfmount, Maxhp: 10})
team.Member = append(team.Member, &pb.DBRaceMember{
Uid: team.Uid,
Name: team.Name,
Skin: team.Skin,
Sex: team.Sex,
Lv: team.Lv,
Dan: team.Dan,
Mount: team.Mount,
Property: team.Property,
Currhp: team.Property[comm.Dhp],
})
if err = this.module.parkourComp.Change(team.Captainid, map[string]interface{}{
"state": team.State,
"captainid": team.Captainid,
@ -68,8 +69,14 @@ func (this *apiComp) RaceMatch(session comm.IUserSession, req *pb.ParkourRaceMat
return
}
}
if err = this.module.match(team); err != nil {
if ais, err = this.module.parkourComp.matcheAI(team.Dan, 5); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
}
if err = this.module.match(team, ais); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),

View File

@ -42,7 +42,7 @@ func (this *apiComp) RaceMatchCancel(session comm.IUserSession, req *pb.ParkourR
return
}
if err = this.module.match(team); err != nil {
if err = this.module.cancelmatch(team); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),

View File

@ -1,49 +1,49 @@
package parkour
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
// import (
// "go_dreamfactory/comm"
// "go_dreamfactory/pb"
// )
//参数校验
func (this *apiComp) ViewPlayerCheck(session comm.IUserSession, req *pb.ParkourViewPlayerReq) (errdata *pb.ErrorData) {
return
}
// //参数校验
// func (this *apiComp) ViewPlayerCheck(session comm.IUserSession, req *pb.ParkourViewPlayerReq) (errdata *pb.ErrorData) {
// return
// }
///游戏
func (this *apiComp) ViewPlayer(session comm.IUserSession, req *pb.ParkourViewPlayerReq) (errdata *pb.ErrorData) {
var (
resp *pb.ParkourViewPlayerResp
)
if errdata = this.ViewPlayerCheck(session, req); errdata != nil {
return
}
resp = &pb.ParkourViewPlayerResp{
Player: make([]*pb.ParkourData, 0),
}
for _, uid := range req.Uid {
if u, err := this.module.ModuleUser.GetUser(uid); err == nil {
{
var time int64
if this.module.ModuleUser.IsOnline(uid) {
//if user := this.module.ModuleUser.GetUser(uid); user != nil {
time = u.Offlinetime
// }
} else {
time = -1
}
// ///游戏
// func (this *apiComp) ViewPlayer(session comm.IUserSession, req *pb.ParkourViewPlayerReq) (errdata *pb.ErrorData) {
// var (
// resp *pb.ParkourViewPlayerResp
// )
// if errdata = this.ViewPlayerCheck(session, req); errdata != nil {
// return
// }
// resp = &pb.ParkourViewPlayerResp{
// Player: make([]*pb.ParkourData, 0),
// }
// for _, uid := range req.Uid {
// if u, err := this.module.ModuleUser.GetUser(uid); err == nil {
// {
// var time int64
// if this.module.ModuleUser.IsOnline(uid) {
// //if user := this.module.ModuleUser.GetUser(uid); user != nil {
// time = u.Offlinetime
// // }
// } else {
// time = -1
// }
resp.Player = append(resp.Player, &pb.ParkourData{
Uid: uid,
Name: u.Name,
Avatar: u.Avatar,
Lv: u.Lv,
OfflineTime: time, // 检查是否在线
})
}
}
}
// resp.Player = append(resp.Player, &pb.ParkourData{
// Uid: uid,
// Name: u.Name,
// Avatar: u.Avatar,
// Lv: u.Lv,
// OfflineTime: time, // 检查是否在线
// })
// }
// }
// }
session.SendMsg(string(this.module.GetType()), "viewplayer", resp)
return
}
// session.SendMsg(string(this.module.GetType()), "viewplayer", resp)
// return
// }

View File

@ -2,6 +2,7 @@ package parkour
import (
"fmt"
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
"go_dreamfactory/sys/configure"
@ -12,6 +13,7 @@ const (
game_buzkashiopen = "game_buzkashiopen.json"
game_buzkashigrade = "game_buzkashigrade.json"
game_buzkashilv = "game_buzkashilv.json"
game_buzkashiqtelv = "game_buzkashiqtelv.json"
game_buzkashimount = "game_buzkashimount.json"
game_buzkashireward = "game_buzkashireward.json"
)
@ -29,6 +31,7 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
this.LoadConfigure(game_buzkashiopen, cfg.NewGameBuzkashiOpen)
this.LoadConfigure(game_buzkashigrade, cfg.NewGameBuzkashiGrade)
this.LoadConfigure(game_buzkashilv, cfg.NewGameBuzkashiLv)
this.LoadConfigure(game_buzkashiqtelv, cfg.NewGameBuzkashiQteLv)
this.LoadConfigure(game_buzkashimount, cfg.NewGameBuzkashiMount)
// this.LoadConfigure(game_buzkashireward, cfg.NewGameBuzkashiReward)
return
@ -62,6 +65,59 @@ func (this *configureComp) isopen() (open bool) {
return
}
func (this *configureComp) getGameBuzkashiGrades() (confs []*cfg.GameBuzkashiGradeData, err error) {
var (
v interface{}
)
if v, err = this.GetConfigure(game_buzkashigrade); err != nil {
this.module.Errorf("err:%v", err)
return
} else {
confs = v.(*cfg.GameBuzkashiGrade).GetDataList()
}
return
}
func (this *configureComp) getGameBuzkashiGrade(distance int32) (configure *cfg.GameBuzkashiGradeData, err error) {
var (
v interface{}
)
if v, err = this.GetConfigure(game_buzkashigrade); err != nil {
this.module.Errorf("err:%v", err)
return
} else {
for _, v := range v.(*cfg.GameBuzkashiGrade).GetDataList() {
if distance < int32(v.Distance) {
configure = v
return
}
}
err = comm.NewNotFoundConfErr(string(this.module.GetType()), game_buzkashigrade, distance)
this.module.Errorln(err)
}
return
}
func (this *configureComp) getGameBuzkashiQteLv(time float32) (configure *cfg.GameBuzkashiQteLvData, err error) {
var (
v interface{}
)
if v, err = this.GetConfigure(game_buzkashiqtelv); err != nil {
this.module.Errorf("err:%v", err)
return
} else {
for _, v := range v.(*cfg.GameBuzkashiQteLv).GetDataList() {
if time < v.Time {
configure = v
return
}
}
err = comm.NewNotFoundConfErr(string(this.module.GetType()), game_buzkashiqtelv, time)
this.module.Errorln(err)
}
return
}
// func (this *configureComp) getGameBuzkashiReward(id int32) (configure *cfg.GameBuzkashiRewardData) {
// if v, err := this.GetConfigure(game_buzkashireward); err == nil {
// var ok bool

View File

@ -16,16 +16,16 @@ type Recommend struct {
///捕羊大赛对象
type RaceItem struct {
Id string //战斗id
lock sync.Mutex //战斗锁 防止计时器和消息同时操作对象
RedMember []*pb.DBRaceMember //红方成员
RedScore int32 //红方分值
RedEnergy int32 //红方能量
Id string //战斗id
lock sync.Mutex //战斗锁 防止计时器和消息同时操作对象
RedMember []*pb.DBRaceMember //红方成员
RedScore int32 //红方分值
// RedEnergy int32 //红方能量
BuleMember []*pb.DBRaceMember //蓝方成员
Session map[string]comm.IUserSession
BuleScore int32 //蓝方分值
BuleEnergy int32 //蓝方能量
overtimer *timewheel.Task //准备倒计时定时器
BuleScore int32 //蓝方分值
// BuleEnergy int32 //蓝方能量
overtimer *timewheel.Task //准备倒计时定时器
}
type AILevel int32

View File

@ -7,10 +7,11 @@ import (
"go_dreamfactory/lego/core"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/lego/utils/container/id"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
"go_dreamfactory/sys/db"
cfg "go_dreamfactory/sys/configure/structs"
"math/rand"
"sync"
"time"
@ -83,13 +84,10 @@ func (this *ModelParkourComp) getrusers(uid string) (recommend []*pb.DBRaceMembe
continue
}
users[v].member = &pb.DBRaceMember{
Uid: users[v].user.Uid,
Name: users[v].user.Name,
Avatar: users[v].user.Avatar,
Lv: users[v].user.Lv,
Mount: users[v].parkour.Dfmount,
Maxhp: 10,
Currhp: 10,
Uid: users[v].user.Uid,
Name: users[v].user.Name,
Sex: users[v].user.Gender,
Lv: users[v].user.Lv,
}
}
recommend[i] = users[v].member
@ -97,6 +95,38 @@ func (this *ModelParkourComp) getrusers(uid string) (recommend []*pb.DBRaceMembe
return
}
// 匹配机器人
func (this *ModelParkourComp) matcheAI(dan, num int32) (results []*pb.DBRaceMember, err error) {
var (
robots []*cfg.GameRobotData
dragon *pb.DBDragon
)
results = make([]*pb.DBRaceMember, num)
if robots, err = this.module.ModuleTools.RandRobotConfig(num); err != nil {
return
}
for i, v := range robots {
if dragon, err = this.module.dragon.CreateRobotDragon(v.Mtsid.T, v.Mtsid.N); err != nil {
this.module.Errorln(err)
return
}
results[i] = &pb.DBRaceMember{
Uid: fmt.Sprintf("ai_%s", id.NewXId()),
Name: v.Name,
Sex: v.Sex,
Skin: v.Showid,
Lv: v.Lvshow,
Dan: dan,
Mount: dragon.Dragonid,
Mlv: dragon.Lv,
Property: dragon.Property,
Currhp: dragon.Property[comm.Dhp],
Isai: true,
}
}
return
}
// 刷新推荐列表
func (this *ModelParkourComp) refreshlist() {
var (
@ -145,15 +175,13 @@ func (this *ModelParkourComp) queryinfo(uid string) (result *pb.DBParkour, err e
return
}
result = &pb.DBParkour{
Id: primitive.NewObjectID().Hex(),
Uid: uid,
State: pb.RaceTeamState_resting,
Mounts: make(map[string]int32),
Invite: make([]*pb.DBRaceInvite, 0),
Member: []*pb.DBRaceMember{},
Id: primitive.NewObjectID().Hex(),
Uid: uid,
State: pb.RaceTeamState_resting,
Invite: make([]*pb.DBRaceInvite, 0),
Member: []*pb.DBRaceMember{},
Weekreward: make(map[int32]bool),
}
mid := this.module.ModuleTools.GetGlobalConf().Mounts
result.Mounts[mid] = 1
if err = this.Add(uid, result); err != nil {
this.module.Errorln(err)
return
@ -181,15 +209,13 @@ func (this *ModelParkourComp) queryinfos(uids []string) (results []*pb.DBParkour
return
}
temp := &pb.DBParkour{
Id: primitive.NewObjectID().Hex(),
Uid: v,
State: pb.RaceTeamState_resting,
Mounts: make(map[string]int32),
Invite: make([]*pb.DBRaceInvite, 0),
Member: []*pb.DBRaceMember{},
Id: primitive.NewObjectID().Hex(),
Uid: v,
State: pb.RaceTeamState_resting,
Invite: make([]*pb.DBRaceInvite, 0),
Member: []*pb.DBRaceMember{},
Weekreward: make(map[int32]bool),
}
mid := this.module.ModuleTools.GetGlobalConf().Mounts // 默认坐骑
temp.Mounts[mid] = 1
newdata[v] = temp
}
if err = this.Adds(newdata); err != nil {
@ -199,70 +225,3 @@ func (this *ModelParkourComp) queryinfos(uids []string) (results []*pb.DBParkour
}
return
}
// 更新用户的背包信息
func (this *ModelParkourComp) addUserMounts(uid string, mounts map[string]int32) (result *pb.DBParkour, err error) {
var (
model *db.DBModel
)
if !this.module.IsCross() { //非跨服
if model, err = this.module.GetCrossDBModel(this.TableName); err != nil {
this.module.Errorln(err)
} else {
result = &pb.DBParkour{}
if err = this.Get(uid, result); err != nil && err != mgo.MongodbNil {
this.module.Errorln(err)
return
}
if err == mgo.MongodbNil {
if _, err = this.module.ModuleUser.GetUser(uid); err != nil {
err = fmt.Errorf("no found udata:%s", uid)
return
}
result = &pb.DBParkour{
Id: primitive.NewObjectID().Hex(),
Uid: uid,
State: pb.RaceTeamState_resting,
Invite: make([]*pb.DBRaceInvite, 0),
Mounts: make(map[string]int32),
Member: []*pb.DBRaceMember{},
}
mid := this.module.ModuleTools.GetGlobalConf().Mounts
result.Mounts[mid] = 1
for k, _ := range mounts {
result.Mounts[k] = 0
if result.Dfmount == "" {
result.Dfmount = k
}
}
if err = model.Add(uid, result); err != nil {
this.module.Errorf("err:%v", err)
}
} else {
for k, _ := range mounts {
result.Mounts[k] = 0
}
this.Change(uid, map[string]interface{}{
"mounts": result.Mounts,
})
}
}
} else {
if result, err = this.queryinfo(uid); err != nil {
this.module.Errorln(err)
}
for k, _ := range mounts {
result.Mounts[k] = 0
if result.Dfmount == "" {
result.Dfmount = k
}
}
this.Change(uid, map[string]interface{}{
"mounts": result.Mounts,
})
}
return
}

View File

@ -11,6 +11,7 @@ import (
"go_dreamfactory/lego/sys/timewheel"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"sync"
"time"
@ -35,6 +36,7 @@ func NewModule() core.IModule {
type Parkour struct {
modules.ModuleBase
service base.IRPCXService
dragon comm.IDragon
api *apiComp
ai *aiComp
configure *configureComp
@ -64,7 +66,13 @@ func (this *Parkour) Start() (err error) {
return
}
this.service.RegisterFunctionName(string(comm.RPC_ParkourMatchSucc), this.createbattle)
this.service.RegisterFunctionName(string(comm.RPC_ParkourTrusteeship), this.trusteeship)
event.RegisterGO(comm.EventUserOffline, this.useroffline)
var module core.IModule
if module, err = this.service.GetModule(comm.ModuleDragon); err != nil {
return
}
this.dragon = module.(comm.IDragon)
return
}
@ -79,12 +87,13 @@ func (this *Parkour) OnInstallComp() {
}
// 匹配
func (this *Parkour) match(team *pb.DBParkour) (err error) {
func (this *Parkour) match(team *pb.DBParkour, ais []*pb.DBRaceMember) (err error) {
err = this.service.RpcCall(
context.Background(),
comm.Service_Mainte,
string(comm.RPC_ParkourJoinMatch),
&pb.RPCParkourJoinMatchReq{Captainid: team.Captainid, Member: team.Member},
&pb.RPCParkourJoinMatchReq{Captainid: team.Captainid, Member: team.Member, Ais: ais},
&pb.RPCParkourJoinMatchResp{})
if err != nil {
this.Errorln(err)
@ -93,6 +102,21 @@ func (this *Parkour) match(team *pb.DBParkour) (err error) {
return
}
// 取消匹配
func (this *Parkour) cancelmatch(team *pb.DBParkour) (err error) {
err = this.service.RpcCall(
context.Background(),
comm.Service_Mainte,
string(comm.RPC_ParkourCancelMatch),
&pb.RPCParkourCancelMatchReq{Captainid: team.Captainid},
&pb.RPCParkourCancelMatchResp{})
if err != nil {
this.Errorln(err)
return
}
return
}
// 匹配成功 创建战斗
func (this *Parkour) createbattle(ctx context.Context, req *pb.RPCParkourMatchSuccReq, resp *pb.RPCParkourMatchSuccResp) (err error) {
var (
@ -115,7 +139,7 @@ func (this *Parkour) createbattle(ctx context.Context, req *pb.RPCParkourMatchSu
}
for _, v := range req.Red {
v.Currhp = v.Maxhp
v.Currhp = v.Property[comm.Dhp]
if !v.Isai { //非AI
session, online := this.GetUserSession(v.Uid)
v.Isoff = !online
@ -129,7 +153,7 @@ func (this *Parkour) createbattle(ctx context.Context, req *pb.RPCParkourMatchSu
}
battle.RedMember = req.Red
for _, v := range req.Bule {
v.Currhp = v.Maxhp
v.Currhp = v.Property[comm.Dhp]
if !v.Isai { //非AI
session, online := this.GetUserSession(v.Uid)
v.Isoff = !online
@ -199,6 +223,54 @@ func (this *Parkour) startbattle(id string) {
}
}
// 射门
func (this *Parkour) qte(id string, uid string, conf *cfg.GameBuzkashiQteLvData) {
this.Debug("qte", log.Field{Key: "id", Value: id})
var (
battle *RaceItem
side int32
ok bool
sessions []comm.IUserSession = make([]comm.IUserSession, 0)
err error
)
this.lock.RLock()
battle, ok = this.battles[id]
this.lock.RUnlock()
if ok {
for _, v := range battle.RedMember {
if v.Uid == uid {
ok = true
v.Scores += conf.Value
side = 1
}
}
if !ok {
for _, v := range battle.BuleMember {
if v.Uid == uid {
ok = true
v.Scores += conf.Value
side = 2
}
}
}
if side == 1 {
battle.RedScore += conf.Value
} else {
battle.BuleScore += conf.Value
}
for _, v := range battle.Session {
sessions = append(sessions, v)
}
if err = this.SendMsgToSession(string(this.GetType()), "scorechanage", &pb.ParkourScoreChanagePush{
Redscore: battle.RedScore,
Bluescore: battle.BuleScore,
}, sessions...); err != nil {
this.Errorln(err)
}
}
}
// 射门
func (this *Parkour) shot(id string, uid string) {
this.Debug("shot", log.Field{Key: "id", Value: id})
@ -215,6 +287,7 @@ func (this *Parkour) shot(id string, uid string) {
if ok {
for _, v := range battle.RedMember {
if v.Uid == uid {
v.Scores += this.ModuleTools.GetGlobalConf().BuzkashiGoalscore
ok = true
side = 1
}
@ -222,25 +295,23 @@ func (this *Parkour) shot(id string, uid string) {
if !ok {
for _, v := range battle.BuleMember {
if v.Uid == uid {
v.Scores += this.ModuleTools.GetGlobalConf().BuzkashiGoalscore
ok = true
side = 2
}
}
}
if side == 1 {
battle.RedScore += 3
battle.RedScore += this.ModuleTools.GetGlobalConf().BuzkashiGoalteamscore
} else {
battle.BuleScore += 3
battle.BuleScore += this.ModuleTools.GetGlobalConf().BuzkashiGoalteamscore
}
for _, v := range battle.Session {
sessions = append(sessions, v)
}
if err = this.SendMsgToSession(string(this.GetType()), "scorechanage", &pb.ParkourScoreChanagePush{
Redscore: battle.RedScore,
Redenergy: battle.RedEnergy,
Bluescore: battle.BuleScore,
Blueenergy: battle.BuleEnergy,
Redscore: battle.RedScore,
Bluescore: battle.BuleScore,
}, sessions...); err != nil {
this.Errorln(err)
}
@ -248,12 +319,11 @@ func (this *Parkour) shot(id string, uid string) {
}
// 躲避障碍物
func (this *Parkour) avoid(id string, uid string, dis float32) {
func (this *Parkour) avoid(id string, uid string, conf *cfg.GameBuzkashiGradeData) {
this.Debug("shot", log.Field{Key: "id", Value: id})
var (
battle *RaceItem
ok bool
side int32
member *pb.DBRaceMember
sessions []comm.IUserSession = make([]comm.IUserSession, 0)
err error
@ -267,7 +337,6 @@ func (this *Parkour) avoid(id string, uid string, dis float32) {
if v.Uid == uid {
member = v
ok = true
side = 1
}
}
if !ok {
@ -275,7 +344,6 @@ func (this *Parkour) avoid(id string, uid string, dis float32) {
if v.Uid == uid {
member = v
ok = true
side = 2
}
}
}
@ -288,22 +356,16 @@ func (this *Parkour) avoid(id string, uid string, dis float32) {
sessions = append(sessions, v)
}
if dis < 0 {
member.Currhp--
if conf == nil {
member.Currhp -= this.ModuleTools.GetGlobalConf().BuzkashiSpeedbumphp
member.Energy += conf.Energy
if member.Currhp <= 0 {
timewheel.Add(time.Second*10, this.resurrectiontimer, battle.Id, member.Uid)
timewheel.Add(time.Second*time.Duration(this.ModuleTools.GetGlobalConf().BuzkashiResurrection), this.resurrectiontimer, battle.Id, member.Uid)
}
} else {
if side == 1 {
battle.RedEnergy += 3
} else {
battle.BuleEnergy += 3
}
if err = this.SendMsgToSession(string(this.GetType()), "playerhpchanage", &pb.ParkourScoreChanagePush{
Redscore: battle.RedScore,
Redenergy: battle.RedEnergy,
Bluescore: battle.BuleScore,
Blueenergy: battle.BuleEnergy,
Redscore: battle.RedScore,
Bluescore: battle.BuleScore,
}, sessions...); err != nil {
this.Errorln(err)
}
@ -335,8 +397,8 @@ func (this *Parkour) recoverhp(id string, hp int32, uids ...string) {
for _, v1 := range uids {
if v.Uid == v1 {
v.Currhp += hp
if v.Currhp > v.Maxhp {
v.Currhp = v.Maxhp
if v.Currhp > v.Property[comm.Dhp] {
v.Currhp = v.Property[comm.Dhp]
}
chanage[v.Uid] = v.Currhp
break
@ -347,8 +409,8 @@ func (this *Parkour) recoverhp(id string, hp int32, uids ...string) {
for _, v1 := range uids {
if v.Uid == v1 {
v.Currhp += hp
if v.Currhp > v.Maxhp {
v.Currhp = v.Maxhp
if v.Currhp > v.Property[comm.Dhp] {
v.Currhp = v.Property[comm.Dhp]
}
chanage[v.Uid] = v.Currhp
break
@ -399,6 +461,11 @@ func (this *Parkour) overtimer(task *timewheel.Task, args ...interface{}) {
if err = this.SendMsgToSession(string(this.GetType()), "raceover", &pb.ParkourRaceOverPush{
Winside: side,
Race: &pb.DBRace{
Id: battle.Id,
Redmember: battle.RedMember,
Bulemember: battle.BuleMember,
},
}, sessions...); err != nil {
this.Errorln(err)
return
@ -430,20 +497,24 @@ func (this *Parkour) overtimer(task *timewheel.Task, args ...interface{}) {
}
}
}
for _, v := range sessions {
this.ModuleBuried.TriggerBuried(v, comm.GetBuriedParam(comm.Rtype234, 1))
v.Push()
this.PutUserSession(v)
}
}
}
// 用户离线处理
func (this *Parkour) useroffline(uid, sessionid string) {
var (
info *pb.DBParkour
team *pb.DBParkour
member *pb.DBRaceMember
users []string
keep bool
index int32
err error
info *pb.DBParkour
// team *pb.DBParkour
// member *pb.DBRaceMember
users []string
// keep bool
// index int32
err error
)
if info, err = this.parkourComp.queryinfo(uid); err != nil {
this.Error("用户离线!", log.Field{Key: "err", Value: err.Error()})
@ -475,44 +546,44 @@ func (this *Parkour) useroffline(uid, sessionid string) {
this.Error("用户离线! 处理数据", log.Field{Key: "uid", Value: uid}, log.Field{Key: "err", Value: err.Error()})
return
}
if len(users) > 0 {
if err = this.SendMsgToUsers(string(comm.ModulePvp), "teamdisbandnotice", &pb.ParkourTeamDisbandNoticePush{}, users...); err != nil {
this.Errorln(err)
}
}
// if len(users) > 0 {
// if err = this.SendMsgToUsers(string(comm.ModulePvp), "teamdisbandnotice", &pb.ParkourTeamDisbandNoticePush{}, users...); err != nil {
// this.Errorln(err)
// }
// }
} else {
if team, err = this.parkourComp.queryinfo(info.Captainid); err != nil {
this.Error("用户离线!", log.Field{Key: "Captainid", Value: info.Captainid}, log.Field{Key: "err", Value: err.Error()})
return
}
users = make([]string, 0)
for i, v := range team.Member {
if v.Uid == uid {
index = int32(i)
member = v
keep = true
continue
}
if v.Uid != uid && !v.Isai {
users = append(users, v.Uid)
}
}
if keep {
team.Member = append(team.Member[0:index], team.Member[index+1:]...)
if err = this.parkourComp.Change(team.Uid, map[string]interface{}{
"member": team.Member,
}); err != nil {
this.Error("用户离线! 解散队伍处理", log.Field{Key: "uid", Value: team.Uid}, log.Field{Key: "err", Value: err.Error()})
return
}
if len(users) > 0 {
this.SendMsgToUsers(string(this.GetType()), "teamquitnotice",
&pb.ParkourTeamQuitNoticePush{Member: member}, users...)
// if team, err = this.parkourComp.queryinfo(info.Captainid); err != nil {
// this.Error("用户离线!", log.Field{Key: "Captainid", Value: info.Captainid}, log.Field{Key: "err", Value: err.Error()})
// return
// }
// users = make([]string, 0)
// for i, v := range team.Member {
// if v.Uid == uid {
// index = int32(i)
// member = v
// keep = true
// continue
// }
// if v.Uid != uid && !v.Isai {
// users = append(users, v.Uid)
// }
// }
// if keep {
// team.Member = append(team.Member[0:index], team.Member[index+1:]...)
// if err = this.parkourComp.Change(team.Uid, map[string]interface{}{
// "member": team.Member,
// }); err != nil {
// this.Error("用户离线! 解散队伍处理", log.Field{Key: "uid", Value: team.Uid}, log.Field{Key: "err", Value: err.Error()})
// return
// }
// if len(users) > 0 {
// this.SendMsgToUsers(string(this.GetType()), "teamquitnotice",
// &pb.ParkourTeamQuitNoticePush{Member: member}, users...)
this.SendMsgToUsers(string(this.GetType()), "teamchanage",
&pb.ParkourTeamChanagePush{Team: team}, users...)
}
}
// this.SendMsgToUsers(string(this.GetType()), "teamchanage",
// &pb.ParkourTeamChanagePush{Team: team}, users...)
// }
// }
}
} else if info.State == pb.RaceTeamState_matching {
if info.Captainid == uid {
@ -548,11 +619,11 @@ func (this *Parkour) useroffline(uid, sessionid string) {
}
}
}
if len(users) > 0 {
if err = this.SendMsgToUsers(string(comm.ModulePvp), "teamdisbandnotice", &pb.ParkourTeamDisbandNoticePush{}, users...); err != nil {
this.Errorln(err)
}
}
// if len(users) > 0 {
// if err = this.SendMsgToUsers(string(comm.ModulePvp), "teamdisbandnotice", &pb.ParkourTeamDisbandNoticePush{}, users...); err != nil {
// this.Errorln(err)
// }
// }
}
} else if info.State == pb.RaceTeamState_raceing {
var (
@ -573,8 +644,8 @@ func (this *Parkour) useroffline(uid, sessionid string) {
ctx, _ := context.WithTimeout(context.Background(), time.Second*5)
_, err = this.service.RpcGo(
ctx,
comm.Service_Mainte,
string(comm.RPC_ParkourJoinMatch),
v.ServicePath,
string(comm.RPC_ParkourTrusteeship),
&pb.RPC_ParkourTrusteeshipReq{Battleid: v.Id, Uid: uid},
nil)
if err != nil {
@ -594,8 +665,8 @@ func (this *Parkour) useroffline(uid, sessionid string) {
ctx, _ := context.WithTimeout(context.Background(), time.Second*5)
_, err = this.service.RpcGo(
ctx,
comm.Service_Mainte,
string(comm.RPC_ParkourJoinMatch),
v.ServicePath,
string(comm.RPC_ParkourTrusteeship),
&pb.RPC_ParkourTrusteeshipReq{Battleid: v.Id, Uid: uid},
nil)
if err != nil {
@ -673,7 +744,7 @@ func (this *Parkour) resurrectiontimer(task *timewheel.Task, args ...interface{}
}
if ok {
member.Currhp = 2
member.Currhp = member.Property[comm.Dhp]
for _, v := range battle.Session {
sessions = append(sessions, v)
}

View File

@ -69,6 +69,7 @@ func (this *Pvp) Start() (err error) {
this.practice = module.(comm.IPractice)
// event.RegisterGO(comm.EventUserLogin, this.userlogin)
event.RegisterGO(comm.EventUserOffline, this.useroffline)
this.service.RegisterFunctionName(string(comm.RPC_PVPTrusteeship), this.trusteeship)
return
}
@ -440,8 +441,8 @@ func (this *Pvp) useroffline(uid, sessionid string) {
ctx, _ := context.WithTimeout(context.Background(), time.Second*5)
_, err = this.service.RpcGo(
ctx,
comm.Service_Mainte,
string(comm.RPC_ParkourJoinMatch),
k,
string(comm.RPC_PVPTrusteeship),
&pb.RPC_PVPTrusteeshipReq{Battleid: v, Uid: uid},
nil)
if err != nil {

View File

@ -90,11 +90,17 @@ func (this *ParkourComp) refreshlist() {
this.users = this.users[:0]
for _, v := range result {
this.users = append(this.users, &pb.DBRaceMember{
Uid: v.Uid,
Mount: v.Dfmount,
Maxhp: 6,
Currhp: 6,
Isai: true,
Uid: v.Uid,
Name: v.Name,
Sex: v.Sex,
Skin: v.Skin,
Dan: v.Dan,
Lv: v.Lv,
Mount: v.Mount,
Mlv: v.Mlv,
Property: v.Property,
Currhp: v.Property[comm.Dhp],
Isai: true,
})
}
@ -300,7 +306,7 @@ func (this *ParkourComp) match() {
return
} else {
v.Name = user.Name
v.Avatar = user.Avatar
v.Sex = user.Gender
v.Lv = user.Lv
}
}
@ -317,7 +323,7 @@ func (this *ParkourComp) match() {
return
} else {
v.Name = user.Name
v.Avatar = user.Avatar
v.Sex = user.Gender
v.Lv = user.Lv
}
}

View File

@ -38,6 +38,7 @@ type DBMainline struct {
Currboosmodel int32 `protobuf:"varint,11,opt,name=currboosmodel,proto3" json:"currboosmodel"` //boos形象
Currbooschallengenum int32 `protobuf:"varint,12,opt,name=currbooschallengenum,proto3" json:"currbooschallengenum"` //当日boos挑战次数
Lastboosrefresh int64 `protobuf:"varint,13,opt,name=lastboosrefresh,proto3" json:"lastboosrefresh"` //上一次boos刷新时间
Stategroup map[int32]int32 `protobuf:"bytes,14,rep,name=stategroup,proto3" json:"stategroup" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //飞行状态组
}
func (x *DBMainline) Reset() {
@ -163,6 +164,13 @@ func (x *DBMainline) GetLastboosrefresh() int64 {
return 0
}
func (x *DBMainline) GetStategroup() map[int32]int32 {
if x != nil {
return x.Stategroup
}
return nil
}
type DBMainlineAward struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@ -365,7 +373,7 @@ var File_mainline_mainline_db_proto protoreflect.FileDescriptor
var file_mainline_mainline_db_proto_rawDesc = []byte{
0x0a, 0x1a, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2f, 0x6d, 0x61, 0x69, 0x6e, 0x6c,
0x69, 0x6e, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd2, 0x08, 0x0a,
0x69, 0x6e, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xce, 0x09, 0x0a,
0x0a, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 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, 0x38, 0x0a,
@ -404,82 +412,90 @@ var file_mainline_mainline_db_proto_rawDesc = []byte{
0x72, 0x62, 0x6f, 0x6f, 0x73, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x6e, 0x75,
0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x62, 0x6f, 0x6f, 0x73, 0x72, 0x65, 0x66,
0x72, 0x65, 0x73, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6c, 0x61, 0x73, 0x74,
0x62, 0x6f, 0x6f, 0x73, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x1a, 0x3c, 0x0a, 0x0e, 0x4c,
0x61, 0x73, 0x74, 0x6c, 0x65, 0x76, 0x65, 0x6c, 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, 0x05, 0x52, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x4c, 0x65, 0x76,
0x65, 0x6c, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x1a, 0x51, 0x0a, 0x11, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x61, 0x77,
0x62, 0x6f, 0x6f, 0x73, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x12, 0x3b, 0x0a, 0x0a, 0x73,
0x74, 0x61, 0x74, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x1b, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x53, 0x74, 0x61,
0x74, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x73, 0x74,
0x61, 0x74, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x1a, 0x3c, 0x0a, 0x0e, 0x4c, 0x61, 0x73, 0x74,
0x6c, 0x65, 0x76, 0x65, 0x6c, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x4c, 0x65, 0x76, 0x65, 0x6c, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
0x1a, 0x51, 0x0a, 0x11, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x61, 0x77, 0x61, 0x72, 0x64,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c,
0x69, 0x6e, 0x65, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x1a, 0x51, 0x0a, 0x11, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x61, 0x77,
0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x44, 0x42, 0x4d, 0x61,
0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x51, 0x0a, 0x11, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72,
0x65, 0x61, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x44,
0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x4f, 0x0a, 0x0f, 0x47, 0x72, 0x6f,
0x75, 0x70, 0x61, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26,
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e,
0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x35, 0x0a, 0x07, 0x50, 0x73,
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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
0x01, 0x1a, 0x3e, 0x0a, 0x10, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x73,
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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
0x01, 0x22, 0x94, 0x01, 0x0a, 0x0f, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65,
0x41, 0x77, 0x61, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x18, 0x01,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e,
0x65, 0x41, 0x77, 0x61, 0x72, 0x64, 0x2e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x52, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x67,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x1a, 0x38,
0x0a, 0x0a, 0x41, 0x77, 0x61, 0x72, 0x64, 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, 0x05, 0x52, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x96, 0x02, 0x0a, 0x0e, 0x44, 0x42, 0x4d,
0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x68, 0x6f, 0x70, 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, 0x36, 0x0a,
0x07, 0x62, 0x75, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c,
0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x2e,
0x42, 0x75, 0x79, 0x74, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x62, 0x75,
0x79, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x06, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x18,
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69,
0x6e, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x2e, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x52, 0x06, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x1a, 0x3a, 0x0a, 0x0c, 0x42, 0x75,
0x79, 0x74, 0x69, 0x6d, 0x65, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b,
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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
0x01, 0x22, 0x82, 0x02, 0x0a, 0x0a, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x61, 0x73, 0x6b,
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, 0x2c, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x16, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x54,
0x61, 0x73, 0x6b, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73,
0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x17, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x52, 0x65,
0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72,
0x64, 0x1a, 0x38, 0x0a, 0x0a, 0x54, 0x61, 0x73, 0x6b, 0x73, 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, 0x05,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x52,
0x65, 0x77, 0x61, 0x72, 0x64, 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, 0x08, 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,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x4f, 0x0a, 0x0f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x61,
0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x44, 0x42, 0x4d,
0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x35, 0x0a, 0x07, 0x50, 0x73, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3e,
0x0a, 0x10, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x62, 0x6f, 0x6f, 0x73, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3d,
0x0a, 0x0f, 0x53, 0x74, 0x61, 0x74, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x94, 0x01,
0x0a, 0x0f, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x77, 0x61, 0x72,
0x64, 0x12, 0x31, 0x0a, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x1b, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x41, 0x77, 0x61,
0x72, 0x64, 0x2e, 0x41, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x61,
0x77, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x1a, 0x38, 0x0a, 0x0a, 0x41, 0x77,
0x61, 0x72, 0x64, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x3a, 0x02, 0x38, 0x01, 0x22, 0x96, 0x02, 0x0a, 0x0e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c,
0x69, 0x6e, 0x65, 0x53, 0x68, 0x6f, 0x70, 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, 0x36, 0x0a, 0x07, 0x62, 0x75, 0x79,
0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x44, 0x42, 0x4d,
0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x2e, 0x42, 0x75, 0x79, 0x74,
0x69, 0x6d, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x62, 0x75, 0x79, 0x74, 0x69, 0x6d,
0x65, 0x12, 0x33, 0x0a, 0x06, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x1b, 0x2e, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x68,
0x6f, 0x70, 0x2e, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06,
0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x1a, 0x3a, 0x0a, 0x0c, 0x42, 0x75, 0x79, 0x74, 0x69, 0x6d,
0x65, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x82, 0x02,
0x0a, 0x0a, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x61, 0x73, 0x6b, 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, 0x2c,
0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e,
0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x73,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x2f, 0x0a, 0x06,
0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44,
0x42, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x2e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x1a, 0x38, 0x0a,
0x0a, 0x54, 0x61, 0x73, 0x6b, 0x73, 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, 0x05, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x77, 0x61, 0x72,
0x64, 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, 0x08, 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 (
@ -494,7 +510,7 @@ func file_mainline_mainline_db_proto_rawDescGZIP() []byte {
return file_mainline_mainline_db_proto_rawDescData
}
var file_mainline_mainline_db_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
var file_mainline_mainline_db_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
var file_mainline_mainline_db_proto_goTypes = []interface{}{
(*DBMainline)(nil), // 0: DBMainline
(*DBMainlineAward)(nil), // 1: DBMainlineAward
@ -507,11 +523,12 @@ var file_mainline_mainline_db_proto_goTypes = []interface{}{
nil, // 8: DBMainline.GroupawardEntry
nil, // 9: DBMainline.PsEntry
nil, // 10: DBMainline.ChapterboosEntry
nil, // 11: DBMainlineAward.AwardEntry
nil, // 12: DBMainlineShop.BuytimeEntry
nil, // 13: DBMainlineShop.UnlockEntry
nil, // 14: DBMainTask.TasksEntry
nil, // 15: DBMainTask.RewardEntry
nil, // 11: DBMainline.StategroupEntry
nil, // 12: DBMainlineAward.AwardEntry
nil, // 13: DBMainlineShop.BuytimeEntry
nil, // 14: DBMainlineShop.UnlockEntry
nil, // 15: DBMainTask.TasksEntry
nil, // 16: DBMainTask.RewardEntry
}
var file_mainline_mainline_db_proto_depIdxs = []int32{
4, // 0: DBMainline.lastlevel:type_name -> DBMainline.LastlevelEntry
@ -521,19 +538,20 @@ var file_mainline_mainline_db_proto_depIdxs = []int32{
8, // 4: DBMainline.groupaward:type_name -> DBMainline.GroupawardEntry
9, // 5: DBMainline.ps:type_name -> DBMainline.PsEntry
10, // 6: DBMainline.chapterboos:type_name -> DBMainline.ChapterboosEntry
11, // 7: DBMainlineAward.award:type_name -> DBMainlineAward.AwardEntry
12, // 8: DBMainlineShop.buytime:type_name -> DBMainlineShop.BuytimeEntry
13, // 9: DBMainlineShop.unlock:type_name -> DBMainlineShop.UnlockEntry
14, // 10: DBMainTask.tasks:type_name -> DBMainTask.TasksEntry
15, // 11: DBMainTask.reward:type_name -> DBMainTask.RewardEntry
1, // 12: DBMainline.ChapterawardEntry.value:type_name -> DBMainlineAward
1, // 13: DBMainline.ExploreawardEntry.value:type_name -> DBMainlineAward
1, // 14: DBMainline.GroupawardEntry.value:type_name -> DBMainlineAward
15, // [15:15] is the sub-list for method output_type
15, // [15:15] is the sub-list for method input_type
15, // [15:15] is the sub-list for extension type_name
15, // [15:15] is the sub-list for extension extendee
0, // [0:15] is the sub-list for field type_name
11, // 7: DBMainline.stategroup:type_name -> DBMainline.StategroupEntry
12, // 8: DBMainlineAward.award:type_name -> DBMainlineAward.AwardEntry
13, // 9: DBMainlineShop.buytime:type_name -> DBMainlineShop.BuytimeEntry
14, // 10: DBMainlineShop.unlock:type_name -> DBMainlineShop.UnlockEntry
15, // 11: DBMainTask.tasks:type_name -> DBMainTask.TasksEntry
16, // 12: DBMainTask.reward:type_name -> DBMainTask.RewardEntry
1, // 13: DBMainline.ChapterawardEntry.value:type_name -> DBMainlineAward
1, // 14: DBMainline.ExploreawardEntry.value:type_name -> DBMainlineAward
1, // 15: DBMainline.GroupawardEntry.value:type_name -> DBMainlineAward
16, // [16:16] is the sub-list for method output_type
16, // [16:16] is the sub-list for method input_type
16, // [16:16] is the sub-list for extension type_name
16, // [16:16] is the sub-list for extension extendee
0, // [0:16] is the sub-list for field type_name
}
func init() { file_mainline_mainline_db_proto_init() }
@ -597,7 +615,7 @@ func file_mainline_mainline_db_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_mainline_mainline_db_proto_rawDesc,
NumEnums: 0,
NumMessages: 16,
NumMessages: 17,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -125,17 +125,24 @@ type DBRaceMember struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` //用户id
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` //用户名称
Avatar string `protobuf:"bytes,3,opt,name=avatar,proto3" json:"avatar"` //用户头像
Lv int32 `protobuf:"varint,4,opt,name=lv,proto3" json:"lv"` //等级
Mount string `protobuf:"bytes,5,opt,name=mount,proto3" json:"mount"` //上阵坐骑
Maxhp int32 `protobuf:"varint,6,opt,name=maxhp,proto3" json:"maxhp"` //初始血量
Currhp int32 `protobuf:"varint,7,opt,name=currhp,proto3" json:"currhp"` //当前血量
Innermost int32 `protobuf:"varint,8,opt,name=innermost,proto3" json:"innermost"` //里程数
Ready bool `protobuf:"varint,9,opt,name=ready,proto3" json:"ready"` //是否准备
Isai bool `protobuf:"varint,10,opt,name=isai,proto3" json:"isai"` //是否是ai
Isoff bool `protobuf:"varint,11,opt,name=isoff,proto3" json:"isoff"` //是否离线
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` //用户id
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` //用户名称
Skin string `protobuf:"bytes,3,opt,name=skin,proto3" json:"skin"` //皮肤
Sex int32 `protobuf:"varint,4,opt,name=sex,proto3" json:"sex"` //性别
Dan int32 `protobuf:"varint,5,opt,name=dan,proto3" json:"dan"` //段位
Lv int32 `protobuf:"varint,6,opt,name=lv,proto3" json:"lv"` //等级
Mlv int32 `protobuf:"varint,7,opt,name=mlv,proto3" json:"mlv"` //坐骑等级
Mount string `protobuf:"bytes,8,opt,name=mount,proto3" json:"mount"` //上阵坐骑
Property map[string]int32 `protobuf:"bytes,9,rep,name=property,proto3" json:"property" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //坐骑属性
Currhp int32 `protobuf:"varint,10,opt,name=currhp,proto3" json:"currhp"` //当前血量
Innermost int32 `protobuf:"varint,11,opt,name=innermost,proto3" json:"innermost"` //里程数
Ready bool `protobuf:"varint,12,opt,name=ready,proto3" json:"ready"` //是否准备
Isai bool `protobuf:"varint,13,opt,name=isai,proto3" json:"isai"` //是否是ai
Isoff bool `protobuf:"varint,14,opt,name=isoff,proto3" json:"isoff"` //是否离线
Scores int32 `protobuf:"varint,15,opt,name=scores,proto3" json:"scores"` //当前分数
Energy int32 `protobuf:"varint,16,opt,name=energy,proto3" json:"energy"` //当前能量
Showscores int32 `protobuf:"varint,17,opt,name=showscores,proto3" json:"showscores"` //表现分数
Dodge int32 `protobuf:"varint,18,opt,name=dodge,proto3" json:"dodge"` //闪避次数
}
func (x *DBRaceMember) Reset() {
@ -184,13 +191,27 @@ func (x *DBRaceMember) GetName() string {
return ""
}
func (x *DBRaceMember) GetAvatar() string {
func (x *DBRaceMember) GetSkin() string {
if x != nil {
return x.Avatar
return x.Skin
}
return ""
}
func (x *DBRaceMember) GetSex() int32 {
if x != nil {
return x.Sex
}
return 0
}
func (x *DBRaceMember) GetDan() int32 {
if x != nil {
return x.Dan
}
return 0
}
func (x *DBRaceMember) GetLv() int32 {
if x != nil {
return x.Lv
@ -198,6 +219,13 @@ func (x *DBRaceMember) GetLv() int32 {
return 0
}
func (x *DBRaceMember) GetMlv() int32 {
if x != nil {
return x.Mlv
}
return 0
}
func (x *DBRaceMember) GetMount() string {
if x != nil {
return x.Mount
@ -205,11 +233,11 @@ func (x *DBRaceMember) GetMount() string {
return ""
}
func (x *DBRaceMember) GetMaxhp() int32 {
func (x *DBRaceMember) GetProperty() map[string]int32 {
if x != nil {
return x.Maxhp
return x.Property
}
return 0
return nil
}
func (x *DBRaceMember) GetCurrhp() int32 {
@ -247,6 +275,34 @@ func (x *DBRaceMember) GetIsoff() bool {
return false
}
func (x *DBRaceMember) GetScores() int32 {
if x != nil {
return x.Scores
}
return 0
}
func (x *DBRaceMember) GetEnergy() int32 {
if x != nil {
return x.Energy
}
return 0
}
func (x *DBRaceMember) GetShowscores() int32 {
if x != nil {
return x.Showscores
}
return 0
}
func (x *DBRaceMember) GetDodge() int32 {
if x != nil {
return x.Dodge
}
return 0
}
type DBRaceInvite struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@ -332,17 +388,26 @@ type DBParkour struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` // 队伍id
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid"` //用户id
Mounts map[string]int32 `protobuf:"bytes,3,rep,name=mounts,proto3" json:"mounts" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //坐骑列表
Dfmount string `protobuf:"bytes,4,opt,name=dfmount,proto3" json:"dfmount"` //默认坐骑
State RaceTeamState `protobuf:"varint,5,opt,name=state,proto3,enum=RaceTeamState" json:"state"` //队伍状态
Currbattid string `protobuf:"bytes,6,opt,name=currbattid,proto3" json:"currbattid"` //当前战斗id
Integral int32 `protobuf:"varint,7,opt,name=integral,proto3" json:"integral"` //积分
Captainid string `protobuf:"bytes,8,opt,name=captainid,proto3" json:"captainid"` //队长id 当前所在队伍
Invite []*DBRaceInvite `protobuf:"bytes,9,rep,name=invite,proto3" json:"invite"` //邀请列表
Member []*DBRaceMember `protobuf:"bytes,10,rep,name=member,proto3" json:"member"` //成员列表
Reward int32 `protobuf:"varint,11,opt,name=reward,proto3" json:"reward"` // 积分信息奖励
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` // 队伍id
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid"` //用户id
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` //名字
Lv int32 `protobuf:"varint,4,opt,name=lv,proto3" json:"lv"` //等级
Sex int32 `protobuf:"varint,5,opt,name=sex,proto3" json:"sex"` //性别
Skin string `protobuf:"bytes,6,opt,name=skin,proto3" json:"skin"` //时装
Dan int32 `protobuf:"varint,7,opt,name=dan,proto3" json:"dan"` //段位
Defmts string `protobuf:"bytes,8,opt,name=defmts,proto3" json:"defmts"` //默认坐骑
Mlv int32 `protobuf:"varint,9,opt,name=mlv,proto3" json:"mlv"` //坐骑等级
Mount string `protobuf:"bytes,10,opt,name=mount,proto3" json:"mount"` //上阵坐骑
Property map[string]int32 `protobuf:"bytes,11,rep,name=property,proto3" json:"property" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //坐骑属性
State RaceTeamState `protobuf:"varint,12,opt,name=state,proto3,enum=RaceTeamState" json:"state"` //队伍状态
Currbattid string `protobuf:"bytes,13,opt,name=currbattid,proto3" json:"currbattid"` //当前战斗id
Integral int32 `protobuf:"varint,14,opt,name=integral,proto3" json:"integral"` //积分
Captainid string `protobuf:"bytes,15,opt,name=captainid,proto3" json:"captainid"` //队长id 当前所在队伍
Invite []*DBRaceInvite `protobuf:"bytes,16,rep,name=invite,proto3" json:"invite"` //邀请列表
Member []*DBRaceMember `protobuf:"bytes,17,rep,name=member,proto3" json:"member"` //成员列表
Weektime int64 `protobuf:"varint,18,opt,name=weektime,proto3" json:"weektime"` //周积分重置使用
Weekreward map[int32]bool `protobuf:"bytes,19,rep,name=weekreward,proto3" json:"weekreward" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //周长奖励领取
Weekintegral int32 `protobuf:"varint,20,opt,name=weekintegral,proto3" json:"weekintegral"` //周积分
}
func (x *DBParkour) Reset() {
@ -391,20 +456,69 @@ func (x *DBParkour) GetUid() string {
return ""
}
func (x *DBParkour) GetMounts() map[string]int32 {
func (x *DBParkour) GetName() string {
if x != nil {
return x.Mounts
}
return nil
}
func (x *DBParkour) GetDfmount() string {
if x != nil {
return x.Dfmount
return x.Name
}
return ""
}
func (x *DBParkour) GetLv() int32 {
if x != nil {
return x.Lv
}
return 0
}
func (x *DBParkour) GetSex() int32 {
if x != nil {
return x.Sex
}
return 0
}
func (x *DBParkour) GetSkin() string {
if x != nil {
return x.Skin
}
return ""
}
func (x *DBParkour) GetDan() int32 {
if x != nil {
return x.Dan
}
return 0
}
func (x *DBParkour) GetDefmts() string {
if x != nil {
return x.Defmts
}
return ""
}
func (x *DBParkour) GetMlv() int32 {
if x != nil {
return x.Mlv
}
return 0
}
func (x *DBParkour) GetMount() string {
if x != nil {
return x.Mount
}
return ""
}
func (x *DBParkour) GetProperty() map[string]int32 {
if x != nil {
return x.Property
}
return nil
}
func (x *DBParkour) GetState() RaceTeamState {
if x != nil {
return x.State
@ -447,9 +561,23 @@ func (x *DBParkour) GetMember() []*DBRaceMember {
return nil
}
func (x *DBParkour) GetReward() int32 {
func (x *DBParkour) GetWeektime() int64 {
if x != nil {
return x.Reward
return x.Weektime
}
return 0
}
func (x *DBParkour) GetWeekreward() map[int32]bool {
if x != nil {
return x.Weekreward
}
return nil
}
func (x *DBParkour) GetWeekintegral() int32 {
if x != nil {
return x.Weekintegral
}
return 0
}
@ -460,7 +588,7 @@ type DBRace struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` // 比赛唯一id
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` // 比赛唯一id
ServicePath string `protobuf:"bytes,2,opt,name=servicePath,proto3" json:"servicePath"` //比赛所在服务
Rtype RaceType `protobuf:"varint,3,opt,name=rtype,proto3,enum=RaceType" json:"rtype"` //比赛类型
Trackid int32 `protobuf:"varint,4,opt,name=trackid,proto3" json:"trackid"` //赛道id
@ -554,79 +682,113 @@ var File_parkour_parkour_db_proto protoreflect.FileDescriptor
var file_parkour_parkour_db_proto_rawDesc = []byte{
0x0a, 0x18, 0x70, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x2f, 0x70, 0x61, 0x72, 0x6b, 0x6f, 0x75,
0x72, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfe, 0x01, 0x0a, 0x0c, 0x44,
0x72, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf6, 0x03, 0x0a, 0x0c, 0x44,
0x42, 0x52, 0x61, 0x63, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18,
0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x75,
0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12,
0x14, 0x0a, 0x05, 0x6d, 0x61, 0x78, 0x68, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x6d, 0x61, 0x78, 0x68, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x72, 0x68, 0x70, 0x18,
0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x75, 0x72, 0x72, 0x68, 0x70, 0x12, 0x1c, 0x0a,
0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x6d, 0x6f, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05,
0x52, 0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x6d, 0x6f, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x72,
0x65, 0x61, 0x64, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x72, 0x65, 0x61, 0x64,
0x79, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x61, 0x69, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52,
0x04, 0x69, 0x73, 0x61, 0x69, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x73, 0x6f, 0x66, 0x66, 0x18, 0x0b,
0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x6f, 0x66, 0x66, 0x22, 0x76, 0x0a, 0x0c, 0x44,
0x42, 0x52, 0x61, 0x63, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18,
0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x70,
0x69, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x78, 0x70, 0x69,
0x72, 0x65, 0x64, 0x22, 0x98, 0x03, 0x0a, 0x09, 0x44, 0x42, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75,
0x72, 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, 0x2e, 0x0a, 0x06, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x44, 0x42, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x2e,
0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6d, 0x6f, 0x75,
0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x66, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x66, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a,
0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x52,
0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x73, 0x6b, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01,
0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x6e, 0x18, 0x05,
0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x64, 0x61, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18,
0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x6c, 0x76,
0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x6c, 0x76, 0x12, 0x14, 0x0a, 0x05, 0x6d,
0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x75, 0x6e,
0x74, 0x12, 0x37, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x09, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x44, 0x42, 0x52, 0x61, 0x63, 0x65, 0x4d, 0x65, 0x6d, 0x62,
0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75,
0x72, 0x72, 0x68, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x75, 0x72, 0x72,
0x68, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x6d, 0x6f, 0x73, 0x74, 0x18,
0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x6d, 0x6f, 0x73, 0x74,
0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x61, 0x64, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52,
0x05, 0x72, 0x65, 0x61, 0x64, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x61, 0x69, 0x18, 0x0d,
0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x61, 0x69, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x73,
0x6f, 0x66, 0x66, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x6f, 0x66, 0x66,
0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05,
0x52, 0x06, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x65, 0x72,
0x67, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79,
0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x68, 0x6f, 0x77, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x11,
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x68, 0x6f, 0x77, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x73,
0x12, 0x14, 0x0a, 0x05, 0x64, 0x6f, 0x64, 0x67, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52,
0x05, 0x64, 0x6f, 0x64, 0x67, 0x65, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72,
0x74, 0x79, 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, 0x22, 0x76, 0x0a, 0x0c, 0x44, 0x42, 0x52, 0x61, 0x63, 0x65, 0x49, 0x6e, 0x76,
0x69, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76, 0x61,
0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61,
0x72, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c,
0x76, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01,
0x28, 0x03, 0x52, 0x07, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x22, 0xc5, 0x05, 0x0a, 0x09,
0x44, 0x42, 0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 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, 0x12, 0x0a, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x12,
0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65,
0x78, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x73, 0x6b, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x6e, 0x18, 0x07, 0x20, 0x01,
0x28, 0x05, 0x52, 0x03, 0x64, 0x61, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x66, 0x6d, 0x74,
0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x66, 0x6d, 0x74, 0x73, 0x12,
0x10, 0x0a, 0x03, 0x6d, 0x6c, 0x76, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x6c,
0x76, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09,
0x52, 0x05, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65,
0x72, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x44, 0x42, 0x50, 0x61,
0x72, 0x6b, 0x6f, 0x75, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x24, 0x0a,
0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x52,
0x61, 0x63, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74,
0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x62, 0x61, 0x74, 0x74, 0x69,
0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x62, 0x61, 0x74,
0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x62, 0x61, 0x74,
0x74, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x18,
0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x12,
0x1c, 0x0a, 0x09, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01,
0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x12,
0x1c, 0x0a, 0x09, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01,
0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x12, 0x25, 0x0a,
0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
0x44, 0x42, 0x52, 0x61, 0x63, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x06, 0x69, 0x6e,
0x76, 0x69, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a,
0x76, 0x69, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x11,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x52, 0x61, 0x63, 0x65, 0x4d, 0x65, 0x6d,
0x62, 0x65, 0x72, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72,
0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x65, 0x77,
0x61, 0x72, 0x64, 0x1a, 0x39, 0x0a, 0x0b, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 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, 0x22, 0xef,
0x01, 0x0a, 0x06, 0x44, 0x42, 0x52, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72,
0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x05, 0x72,
0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x52, 0x61, 0x63,
0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x72, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07,
0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74,
0x72, 0x61, 0x63, 0x6b, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x6d,
0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72,
0x6d, 0x6f, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x6d, 0x65, 0x6d, 0x62, 0x65,
0x72, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x52, 0x61, 0x63, 0x65,
0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x09, 0x72, 0x65, 0x64, 0x6d, 0x65, 0x6d, 0x62, 0x65,
0x72, 0x12, 0x2d, 0x0a, 0x0a, 0x62, 0x75, 0x6c, 0x65, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18,
0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x52, 0x61, 0x63, 0x65, 0x4d, 0x65,
0x6d, 0x62, 0x65, 0x72, 0x52, 0x0a, 0x62, 0x75, 0x6c, 0x65, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72,
0x2a, 0x22, 0x0a, 0x08, 0x52, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x08,
0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x70, 0x72,
0x6f, 0x70, 0x10, 0x01, 0x2a, 0x44, 0x0a, 0x0d, 0x52, 0x61, 0x63, 0x65, 0x54, 0x65, 0x61, 0x6d,
0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67,
0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12,
0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x0b, 0x0a,
0x07, 0x72, 0x61, 0x63, 0x65, 0x69, 0x6e, 0x67, 0x10, 0x03, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b,
0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x62, 0x65, 0x72, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x77,
0x65, 0x65, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x77,
0x65, 0x65, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0a, 0x77, 0x65, 0x65, 0x6b, 0x72,
0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x44, 0x42,
0x50, 0x61, 0x72, 0x6b, 0x6f, 0x75, 0x72, 0x2e, 0x57, 0x65, 0x65, 0x6b, 0x72, 0x65, 0x77, 0x61,
0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x77, 0x65, 0x65, 0x6b, 0x72, 0x65, 0x77,
0x61, 0x72, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x65, 0x6b, 0x69, 0x6e, 0x74, 0x65, 0x67,
0x72, 0x61, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x65, 0x65, 0x6b, 0x69,
0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65,
0x72, 0x74, 0x79, 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, 0x1a, 0x3d, 0x0a, 0x0f, 0x57, 0x65, 0x65, 0x6b, 0x72, 0x65, 0x77, 0x61,
0x72, 0x64, 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, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x22, 0xef, 0x01, 0x0a, 0x06, 0x44, 0x42, 0x52, 0x61, 0x63, 0x65, 0x12, 0x0e,
0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20,
0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68,
0x12, 0x1f, 0x0a, 0x05, 0x72, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x09, 0x2e, 0x52, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x72, 0x74, 0x79, 0x70,
0x65, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01,
0x28, 0x05, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x69,
0x6e, 0x6e, 0x65, 0x72, 0x6d, 0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09,
0x69, 0x6e, 0x6e, 0x65, 0x72, 0x6d, 0x6f, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x65, 0x64,
0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44,
0x42, 0x52, 0x61, 0x63, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x09, 0x72, 0x65, 0x64,
0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x0a, 0x62, 0x75, 0x6c, 0x65, 0x6d, 0x65,
0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x52,
0x61, 0x63, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0a, 0x62, 0x75, 0x6c, 0x65, 0x6d,
0x65, 0x6d, 0x62, 0x65, 0x72, 0x2a, 0x22, 0x0a, 0x08, 0x52, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70,
0x65, 0x12, 0x0c, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x10, 0x00, 0x12,
0x08, 0x0a, 0x04, 0x70, 0x72, 0x6f, 0x70, 0x10, 0x01, 0x2a, 0x44, 0x0a, 0x0d, 0x52, 0x61, 0x63,
0x65, 0x54, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x72, 0x65,
0x73, 0x74, 0x69, 0x6e, 0x67, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x69,
0x6e, 0x67, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67,
0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x72, 0x61, 0x63, 0x65, 0x69, 0x6e, 0x67, 0x10, 0x03, 0x42,
0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -642,7 +804,7 @@ func file_parkour_parkour_db_proto_rawDescGZIP() []byte {
}
var file_parkour_parkour_db_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_parkour_parkour_db_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_parkour_parkour_db_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
var file_parkour_parkour_db_proto_goTypes = []interface{}{
(RaceType)(0), // 0: RaceType
(RaceTeamState)(0), // 1: RaceTeamState
@ -650,21 +812,25 @@ var file_parkour_parkour_db_proto_goTypes = []interface{}{
(*DBRaceInvite)(nil), // 3: DBRaceInvite
(*DBParkour)(nil), // 4: DBParkour
(*DBRace)(nil), // 5: DBRace
nil, // 6: DBParkour.MountsEntry
nil, // 6: DBRaceMember.PropertyEntry
nil, // 7: DBParkour.PropertyEntry
nil, // 8: DBParkour.WeekrewardEntry
}
var file_parkour_parkour_db_proto_depIdxs = []int32{
6, // 0: DBParkour.mounts:type_name -> DBParkour.MountsEntry
1, // 1: DBParkour.state:type_name -> RaceTeamState
3, // 2: DBParkour.invite:type_name -> DBRaceInvite
2, // 3: DBParkour.member:type_name -> DBRaceMember
0, // 4: DBRace.rtype:type_name -> RaceType
2, // 5: DBRace.redmember:type_name -> DBRaceMember
2, // 6: DBRace.bulemember:type_name -> DBRaceMember
7, // [7:7] is the sub-list for method output_type
7, // [7:7] is the sub-list for method input_type
7, // [7:7] is the sub-list for extension type_name
7, // [7:7] is the sub-list for extension extendee
0, // [0:7] is the sub-list for field type_name
6, // 0: DBRaceMember.property:type_name -> DBRaceMember.PropertyEntry
7, // 1: DBParkour.property:type_name -> DBParkour.PropertyEntry
1, // 2: DBParkour.state:type_name -> RaceTeamState
3, // 3: DBParkour.invite:type_name -> DBRaceInvite
2, // 4: DBParkour.member:type_name -> DBRaceMember
8, // 5: DBParkour.weekreward:type_name -> DBParkour.WeekrewardEntry
0, // 6: DBRace.rtype:type_name -> RaceType
2, // 7: DBRace.redmember:type_name -> DBRaceMember
2, // 8: DBRace.bulemember:type_name -> DBRaceMember
9, // [9:9] is the sub-list for method output_type
9, // [9:9] is the sub-list for method input_type
9, // [9:9] is the sub-list for extension type_name
9, // [9:9] is the sub-list for extension extendee
0, // [0:9] is the sub-list for field type_name
}
func init() { file_parkour_parkour_db_proto_init() }
@ -728,7 +894,7 @@ func file_parkour_parkour_db_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_parkour_parkour_db_proto_rawDesc,
NumEnums: 2,
NumMessages: 5,
NumMessages: 7,
NumExtensions: 0,
NumServices: 0,
},

File diff suppressed because it is too large Load Diff

View File

@ -41,7 +41,6 @@ import (
"go_dreamfactory/modules/notify"
"go_dreamfactory/modules/oldtimes"
"go_dreamfactory/modules/pagoda"
"go_dreamfactory/modules/parkour"
"go_dreamfactory/modules/passon"
"go_dreamfactory/modules/pay"
"go_dreamfactory/modules/practice"
@ -133,7 +132,7 @@ func main() {
dispatch.NewModule(),
atlas.NewModule(),
practice.NewModule(),
parkour.NewModule(),
// parkour.NewModule(),
tools.NewModule(),
reputation.NewModule(),
oldtimes.NewModule(),

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 GameAchieveGroup struct {
_dataMap map[int32]*GameAchieveGroupData
_dataList []*GameAchieveGroupData
}
func NewGameAchieveGroup(_buf []map[string]interface{}) (*GameAchieveGroup, error) {
_dataList := make([]*GameAchieveGroupData, 0, len(_buf))
dataMap := make(map[int32]*GameAchieveGroupData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameAchieveGroupData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GameAchieveGroup{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameAchieveGroup) GetDataMap() map[int32]*GameAchieveGroupData {
return table._dataMap
}
func (table *GameAchieveGroup) GetDataList() []*GameAchieveGroupData {
return table._dataList
}
func (table *GameAchieveGroup) Get(key int32) *GameAchieveGroupData {
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 GameAchieveGroupData struct {
Id int32
AchieveGroupId string
AchieveGroupIcon string
}
const TypeId_GameAchieveGroupData = -1499893260
func (*GameAchieveGroupData) GetTypeId() int32 {
return -1499893260
}
func (_v *GameAchieveGroupData)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["achieve_group_id"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.AchieveGroupId error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.AchieveGroupId, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; if _v.AchieveGroupIcon, _ok_ = _buf["achieve_group_icon"].(string); !_ok_ { err = errors.New("achieve_group_icon error"); return } }
return
}
func DeserializeGameAchieveGroupData(_buf map[string]interface{}) (*GameAchieveGroupData, error) {
v := &GameAchieveGroupData{}
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 GameAchieveTask struct {
_dataMap map[int32]*GameAchieveTaskData
_dataList []*GameAchieveTaskData
}
func NewGameAchieveTask(_buf []map[string]interface{}) (*GameAchieveTask, error) {
_dataList := make([]*GameAchieveTaskData, 0, len(_buf))
dataMap := make(map[int32]*GameAchieveTaskData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameAchieveTaskData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Key] = _v
}
}
return &GameAchieveTask{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameAchieveTask) GetDataMap() map[int32]*GameAchieveTaskData {
return table._dataMap
}
func (table *GameAchieveTask) GetDataList() []*GameAchieveTaskData {
return table._dataList
}
func (table *GameAchieveTask) Get(key int32) *GameAchieveTaskData {
return table._dataMap[key]
}

View File

@ -0,0 +1,62 @@
//------------------------------------------------------------------------------
// <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 GameAchieveTaskData struct {
Key int32
TaskGroupFrom int32
TaskName string
TaskBuried int32
TaskIcon string
TaskQuality int32
TaskReward []*Gameatn
Jump int32
}
const TypeId_GameAchieveTaskData = 835767876
func (*GameAchieveTaskData) GetTypeId() int32 {
return 835767876
}
func (_v *GameAchieveTaskData)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 _tempNum_ float64; if _tempNum_, _ok_ = _buf["task_group_from"].(float64); !_ok_ { err = errors.New("task_group_from error"); return }; _v.TaskGroupFrom = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["task_name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.TaskName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.TaskName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["task_buried"].(float64); !_ok_ { err = errors.New("task_buried error"); return }; _v.TaskBuried = int32(_tempNum_) }
{ var _ok_ bool; if _v.TaskIcon, _ok_ = _buf["task_icon"].(string); !_ok_ { err = errors.New("task_icon error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["task_quality"].(float64); !_ok_ { err = errors.New("task_quality error"); return }; _v.TaskQuality = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["task_reward"].([]interface{}); !_ok_ { err = errors.New("task_reward error"); return }
_v.TaskReward = 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.TaskReward = append(_v.TaskReward, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["jump"].(float64); !_ok_ { err = errors.New("jump error"); return }; _v.Jump = int32(_tempNum_) }
return
}
func DeserializeGameAchieveTaskData(_buf map[string]interface{}) (*GameAchieveTaskData, error) {
v := &GameAchieveTaskData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -16,8 +16,10 @@ type GameMainStageData struct {
GroupId int32
PreviousGroupId []int32
Previoustage int32
Grouptype []int32
Episodetype int32
StageParam int32
Inherit int32
BattleFail int32
Venturemodelspeed float32
Venturemodelscale float32
@ -87,8 +89,23 @@ func (_v *GameMainStageData)Deserialize(_buf map[string]interface{}) (err error)
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["previoustage"].(float64); !_ok_ { err = errors.New("previoustage error"); return }; _v.Previoustage = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["grouptype"].([]interface{}); !_ok_ { err = errors.New("grouptype error"); return }
_v.Grouptype = 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.Grouptype = append(_v.Grouptype, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Episodetype"].(float64); !_ok_ { err = errors.New("Episodetype error"); return }; _v.Episodetype = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["stage_param"].(float64); !_ok_ { err = errors.New("stage_param error"); return }; _v.StageParam = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["inherit"].(float64); !_ok_ { err = errors.New("inherit error"); return }; _v.Inherit = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["battle_fail"].(float64); !_ok_ { err = errors.New("battle_fail error"); return }; _v.BattleFail = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["venturemodelspeed"].(float64); !_ok_ { err = errors.New("venturemodelspeed error"); return }; _v.Venturemodelspeed = float32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["venturemodelscale"].(float64); !_ok_ { err = errors.New("venturemodelscale error"); return }; _v.Venturemodelscale = float32(_tempNum_) }

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 GameTitle struct {
_dataMap map[string]*GameTitleData
_dataList []*GameTitleData
}
func NewGameTitle(_buf []map[string]interface{}) (*GameTitle, error) {
_dataList := make([]*GameTitleData, 0, len(_buf))
dataMap := make(map[string]*GameTitleData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameTitleData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Key] = _v
}
}
return &GameTitle{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameTitle) GetDataMap() map[string]*GameTitleData {
return table._dataMap
}
func (table *GameTitle) GetDataList() []*GameTitleData {
return table._dataList
}
func (table *GameTitle) Get(key string) *GameTitleData {
return table._dataMap[key]
}

View File

@ -0,0 +1,60 @@
//------------------------------------------------------------------------------
// <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 GameTitleData struct {
Key string
Name string
Color int32
Title string
Titleicon string
Form []int32
Txt string
}
const TypeId_GameTitleData = -430547162
func (*GameTitleData) GetTypeId() int32 {
return -430547162
}
func (_v *GameTitleData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; if _v.Key, _ok_ = _buf["key"].(string); !_ok_ { err = errors.New("key 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 _tempNum_ float64; if _tempNum_, _ok_ = _buf["color"].(float64); !_ok_ { err = errors.New("color error"); return }; _v.Color = int32(_tempNum_) }
{ var _ok_ bool; if _v.Title, _ok_ = _buf["title"].(string); !_ok_ { err = errors.New("title error"); return } }
{ var _ok_ bool; if _v.Titleicon, _ok_ = _buf["titleicon"].(string); !_ok_ { err = errors.New("titleicon error"); return } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["form"].([]interface{}); !_ok_ { err = errors.New("form error"); return }
_v.Form = 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.Form = append(_v.Form, _list_v_)
}
}
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["txt"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Txt error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Txt, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
return
}
func DeserializeGameTitleData(_buf map[string]interface{}) (*GameTitleData, error) {
v := &GameTitleData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -262,6 +262,9 @@ type Tables struct {
MainVenture *GameMainVenture
DragonLvItem *GameDragonLvItem
DragonWeeklyreward *GameDragonWeeklyreward
Title *GameTitle
AchieveGroup *GameAchieveGroup
AchieveTask *GameAchieveTask
}
func NewTables(loader JsonLoader) (*Tables, error) {
@ -1775,5 +1778,23 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.DragonWeeklyreward, err = NewGameDragonWeeklyreward(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_title") ; err != nil {
return nil, err
}
if tables.Title, err = NewGameTitle(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_achievegroup") ; err != nil {
return nil, err
}
if tables.AchieveGroup, err = NewGameAchieveGroup(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_achievetask") ; err != nil {
return nil, err
}
if tables.AchieveTask, err = NewGameAchieveTask(buf) ; err != nil {
return nil, err
}
return tables, nil
}

View File

@ -292,6 +292,7 @@ type GameGlobalData struct {
DoragonItem string
SignAccount int32
DragonFuntime int32
ChallengeNpcStory []int32
}
const TypeId_GameGlobalData = 477542761
@ -1141,6 +1142,20 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; if _v.DoragonItem, _ok_ = _buf["doragon_item"].(string); !_ok_ { err = errors.New("doragon_item error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["sign_account"].(float64); !_ok_ { err = errors.New("sign_account error"); return }; _v.SignAccount = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dragon_funtime"].(float64); !_ok_ { err = errors.New("dragon_funtime error"); return }; _v.DragonFuntime = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["challenge_npc_story"].([]interface{}); !_ok_ { err = errors.New("challenge_npc_story error"); return }
_v.ChallengeNpcStory = 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.ChallengeNpcStory = append(_v.ChallengeNpcStory, _list_v_)
}
}
return
}