diff --git a/bin/json/game_worldbattle.json b/bin/json/game_worldbattle.json
new file mode 100644
index 000000000..68bad6128
--- /dev/null
+++ b/bin/json/game_worldbattle.json
@@ -0,0 +1,9 @@
+[
+ {
+ "id": 101,
+ "FormatList": [
+ 700011
+ ],
+ "captainId": "250011"
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_worldtask.json b/bin/json/game_worldtask.json
index de94e6994..afa8f3ce4 100644
--- a/bin/json/game_worldtask.json
+++ b/bin/json/game_worldtask.json
@@ -4,322 +4,1962 @@
"lock": 1,
"ontxe": 0,
"id_after": 10101,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "阿宝组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "600"
+ ],
"getafter_event": [
"2",
- "20"
+ "10001"
],
"completetask": 0,
"auto_accept": 0,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10101,
"lock": 1,
"ontxe": 10100,
"id_after": 10102,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "邦尼兔组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "dreamwork_restaurant_01",
+ "邦尼兔组件名",
+ "601"
+ ],
"getafter_event": [
"2",
- "20"
+ "10002"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10102,
"lock": 1,
"ontxe": 10101,
"id_after": 10103,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "波比组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "dreamwork_restaurant_01",
+ "波比组件名",
+ "602"
+ ],
"getafter_event": [
"2",
- "20"
+ "10003"
],
- "completetask": 0,
+ "completetask": 171,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10103,
"lock": 1,
"ontxe": 10102,
"id_after": 10104,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "阿宝组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "dreamwork_restaurant_01",
+ "阿宝组件名",
+ "603"
+ ],
"getafter_event": [
"2",
- "20"
+ "10004"
],
- "completetask": 0,
+ "completetask": 173,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10104,
"lock": 1,
"ontxe": 10103,
"id_after": 10105,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "阿宝组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "dreamwork_restaurant_01",
+ "波比组件名",
+ "604"
+ ],
"getafter_event": [
"2",
- "20"
+ "10004"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10105,
+ "lock": 1,
+ "ontxe": 10104,
+ "id_after": 10106,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "605"
+ ],
+ "getafter_event": [
+ "2",
+ "10006"
+ ],
+ "completetask": 110,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10106,
"lock": 1,
"ontxe": 10105,
"id_after": 10107,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "邦尼兔组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "邦尼兔组件名",
+ "606"
+ ],
"getafter_event": [
"2",
- "20"
+ "10007"
],
- "completetask": 0,
+ "completetask": 171,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10107,
"lock": 1,
"ontxe": 10106,
"id_after": 10108,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "阿宝组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "邦尼兔组件名",
+ "607"
+ ],
"getafter_event": [
"2",
- "20"
+ "10008"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10108,
"lock": 1,
"ontxe": 10107,
"id_after": 10109,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "邦尼兔组件名",
+ "608"
+ ],
"getafter_event": [
- "6",
- "跳转铁匠铺3D场景"
+ "2",
+ "10009"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10109,
"lock": 1,
"ontxe": 10108,
"id_after": 10110,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "阿宝组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "戈伯组件名",
+ "609"
+ ],
"getafter_event": [
"2",
- "20"
+ "10010"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10110,
"lock": 1,
"ontxe": 10109,
"id_after": 10111,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_smithy_01",
+ "戈伯铁匠铺组件名",
+ "610"
+ ],
"getafter_event": [
- "6",
- "跳转美食馆外面的3D场景"
+ "2",
+ "10011"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10111,
"lock": 1,
"ontxe": 10110,
"id_after": 10112,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "瓜哥组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝右屏组件名",
+ "611"
+ ],
"getafter_event": [
"2",
- "20"
+ "10012"
],
- "completetask": 0,
+ "completetask": 171,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10112,
"lock": 1,
"ontxe": 10111,
"id_after": 10113,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "瓜哥组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "瓜哥组件名",
+ "612"
+ ],
"getafter_event": [
"2",
- "20"
+ "10013"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10113,
"lock": 1,
"ontxe": 10112,
"id_after": 10114,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "test_library",
+ "贫嘴驴组件名",
+ "613"
+ ],
"getafter_event": [
- "6",
- "跳转美食馆内3D场景"
+ "2",
+ "10014"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10114,
"lock": 1,
"ontxe": 10113,
"id_after": 10115,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "test_library",
+ "贫嘴驴组件名",
+ "614"
+ ],
"getafter_event": [
- "3",
- "播放timeline"
+ "2",
+ "10015"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10115,
"lock": 1,
"ontxe": 10114,
"id_after": 10116,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "阿宝组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_boundary_02night",
+ "阿宝组件名",
+ "615"
+ ],
"getafter_event": [
"2",
- "20"
+ "10016"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10116,
"lock": 1,
"ontxe": 10115,
"id_after": 10117,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_boundary_02night",
+ "阿宝组件名",
+ "616"
+ ],
"getafter_event": [
- "6",
- "开启书籍玩法"
+ "2",
+ "10017"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
},
{
"key": 10117,
"lock": 1,
"ontxe": 10116,
"id_after": 10118,
+ "group": 1,
"des": 2,
"icon": "",
- "task_name": "",
- "task_display": "",
- "npc": "阿宝组件名",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "瓜哥组件名",
+ "617"
+ ],
"getafter_event": [
"2",
- "20"
+ "10018"
],
"completetask": 0,
"auto_accept": 1,
"overtips": 1,
- "reword": []
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10118,
+ "lock": 1,
+ "ontxe": 10117,
+ "id_after": 10119,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "瓜哥组件名",
+ "618"
+ ],
+ "getafter_event": [
+ "2",
+ "10019"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10119,
+ "lock": 1,
+ "ontxe": 10118,
+ "id_after": 10120,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "619"
+ ],
+ "getafter_event": [
+ "2",
+ "10020"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10120,
+ "lock": 1,
+ "ontxe": 10119,
+ "id_after": 10121,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "620"
+ ],
+ "getafter_event": [
+ "2",
+ "10021"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10121,
+ "lock": 1,
+ "ontxe": 10120,
+ "id_after": 10122,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "621"
+ ],
+ "getafter_event": [
+ "2",
+ "10022"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10122,
+ "lock": 1,
+ "ontxe": 10121,
+ "id_after": 10123,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "622"
+ ],
+ "getafter_event": [
+ "2",
+ "10023"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10123,
+ "lock": 1,
+ "ontxe": 10122,
+ "id_after": 10124,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "623"
+ ],
+ "getafter_event": [
+ "2",
+ "10024"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10124,
+ "lock": 1,
+ "ontxe": 10123,
+ "id_after": 10125,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "624"
+ ],
+ "getafter_event": [
+ "2",
+ "10025"
+ ],
+ "completetask": 171,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10125,
+ "lock": 1,
+ "ontxe": 10124,
+ "id_after": 10126,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "625"
+ ],
+ "getafter_event": [
+ "2",
+ "10026"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10126,
+ "lock": 1,
+ "ontxe": 10125,
+ "id_after": 10127,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "626"
+ ],
+ "getafter_event": [
+ "2",
+ "10027"
+ ],
+ "completetask": 171,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10127,
+ "lock": 1,
+ "ontxe": 10126,
+ "id_after": 10128,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "627"
+ ],
+ "getafter_event": [
+ "2",
+ "10028"
+ ],
+ "completetask": 171,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10128,
+ "lock": 1,
+ "ontxe": 10127,
+ "id_after": 10129,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "628"
+ ],
+ "getafter_event": [
+ "2",
+ "10029"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10129,
+ "lock": 1,
+ "ontxe": 10128,
+ "id_after": 10130,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "629"
+ ],
+ "getafter_event": [
+ "2",
+ "10030"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10130,
+ "lock": 1,
+ "ontxe": 10129,
+ "id_after": 10131,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "630"
+ ],
+ "getafter_event": [
+ "2",
+ "10031"
+ ],
+ "completetask": 158,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10131,
+ "lock": 1,
+ "ontxe": 10130,
+ "id_after": 10132,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "631"
+ ],
+ "getafter_event": [
+ "2",
+ "10033"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10132,
+ "lock": 1,
+ "ontxe": 10131,
+ "id_after": 10133,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "632"
+ ],
+ "getafter_event": [
+ "2",
+ "10034"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10133,
+ "lock": 1,
+ "ontxe": 10132,
+ "id_after": 10134,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "633"
+ ],
+ "getafter_event": [
+ "2",
+ "10035"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10134,
+ "lock": 1,
+ "ontxe": 10133,
+ "id_after": 10135,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "634"
+ ],
+ "getafter_event": [
+ "2",
+ "10036"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10135,
+ "lock": 1,
+ "ontxe": 10134,
+ "id_after": 10136,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "635"
+ ],
+ "getafter_event": [
+ "2",
+ "10037"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10136,
+ "lock": 1,
+ "ontxe": 10135,
+ "id_after": 10137,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "636"
+ ],
+ "getafter_event": [
+ "2",
+ "10038"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10137,
+ "lock": 1,
+ "ontxe": 10136,
+ "id_after": 10138,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "637"
+ ],
+ "getafter_event": [
+ "2",
+ "10039"
+ ],
+ "completetask": 171,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10138,
+ "lock": 1,
+ "ontxe": 10137,
+ "id_after": 10139,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_martialarts_01",
+ "阿宝组件名",
+ "638"
+ ],
+ "getafter_event": [
+ "2",
+ "10040"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10139,
+ "lock": 1,
+ "ontxe": 10138,
+ "id_after": 10140,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "639"
+ ],
+ "getafter_event": [
+ "2",
+ "10041"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10140,
+ "lock": 1,
+ "ontxe": 10139,
+ "id_after": 10141,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "640"
+ ],
+ "getafter_event": [
+ "2",
+ "10042"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10141,
+ "lock": 1,
+ "ontxe": 10140,
+ "id_after": 10142,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "641"
+ ],
+ "getafter_event": [
+ "2",
+ "10043"
+ ],
+ "completetask": 171,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10142,
+ "lock": 1,
+ "ontxe": 10141,
+ "id_after": 10143,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "642"
+ ],
+ "getafter_event": [
+ "2",
+ "10044"
+ ],
+ "completetask": 171,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10143,
+ "lock": 1,
+ "ontxe": 10142,
+ "id_after": 10144,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "643"
+ ],
+ "getafter_event": [
+ "2",
+ "10045"
+ ],
+ "completetask": 171,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10144,
+ "lock": 1,
+ "ontxe": 10143,
+ "id_after": 10145,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "644"
+ ],
+ "getafter_event": [
+ "2",
+ "10046"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10145,
+ "lock": 1,
+ "ontxe": 10144,
+ "id_after": 10146,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "645"
+ ],
+ "getafter_event": [
+ "2",
+ "10047"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10146,
+ "lock": 1,
+ "ontxe": 10145,
+ "id_after": 10147,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "646"
+ ],
+ "getafter_event": [
+ "2",
+ "10048"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10147,
+ "lock": 1,
+ "ontxe": 10146,
+ "id_after": 10148,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "647"
+ ],
+ "getafter_event": [
+ "2",
+ "10049"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10148,
+ "lock": 1,
+ "ontxe": 10147,
+ "id_after": 10149,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "阿宝组件名",
+ "648"
+ ],
+ "getafter_event": [
+ "2",
+ "10050"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10149,
+ "lock": 1,
+ "ontxe": 10148,
+ "id_after": 10150,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "波比组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10051"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10150,
+ "lock": 1,
+ "ontxe": 10149,
+ "id_after": 10151,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "波比组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10052"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10151,
+ "lock": 1,
+ "ontxe": 10150,
+ "id_after": 10152,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "杰克组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10053"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10152,
+ "lock": 1,
+ "ontxe": 10151,
+ "id_after": 10153,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "杰克组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10054"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10153,
+ "lock": 1,
+ "ontxe": 10152,
+ "id_after": 10154,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "冰霜杰克组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10055"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10154,
+ "lock": 1,
+ "ontxe": 10153,
+ "id_after": 10155,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "原始人岛地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10056"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10155,
+ "lock": 1,
+ "ontxe": 10154,
+ "id_after": 10156,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "原始人岛地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10057"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10156,
+ "lock": 1,
+ "ontxe": 10155,
+ "id_after": 10157,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "杰克地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10058"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10157,
+ "lock": 1,
+ "ontxe": 10156,
+ "id_after": 10158,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "杰克组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10059"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10158,
+ "lock": 1,
+ "ontxe": 10157,
+ "id_after": 10159,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "原始人岛地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10060"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10159,
+ "lock": 1,
+ "ontxe": 10158,
+ "id_after": 10160,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "瓜哥组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10061"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10160,
+ "lock": 1,
+ "ontxe": 10159,
+ "id_after": 10161,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "瓜哥组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10062"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10161,
+ "lock": 1,
+ "ontxe": 10160,
+ "id_after": 10162,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "原始人岛地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10063"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10162,
+ "lock": 1,
+ "ontxe": 10161,
+ "id_after": 10163,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "原始人岛地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10064"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10163,
+ "lock": 1,
+ "ontxe": 10162,
+ "id_after": 10164,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "原始人岛地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10065"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10164,
+ "lock": 1,
+ "ontxe": 10163,
+ "id_after": 10165,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_02",
+ "作战部地图组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10066"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
+ },
+ {
+ "key": 10165,
+ "lock": 1,
+ "ontxe": 10164,
+ "id_after": 10166,
+ "group": 1,
+ "des": 2,
+ "icon": "",
+ "task_name": "新剧情",
+ "task_display": "新剧情文本",
+ "npc": [
+ "scenes_ boundary_03",
+ "布兰奇组件名"
+ ],
+ "getafter_event": [
+ "2",
+ "10067"
+ ],
+ "completetask": 0,
+ "auto_accept": 1,
+ "overtips": 1,
+ "reword": [
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 100
+ }
+ ]
}
]
\ No newline at end of file
diff --git a/cmd/v2/FyneApp.toml b/cmd/v2/FyneApp.toml
index b3007e4b6..9d5c6f92b 100644
--- a/cmd/v2/FyneApp.toml
+++ b/cmd/v2/FyneApp.toml
@@ -4,5 +4,5 @@ Website = "http://legu.cc"
Icon = "app.png"
Name = "RobotGUI"
ID = "cc.legu.app"
- Version = "1.0.19"
- Build = 22
+ Version = "1.0.20"
+ Build = 23
diff --git a/cmd/v2/ui/protocol.go b/cmd/v2/ui/protocol.go
index 48abeed08..4dbf9509d 100644
--- a/cmd/v2/ui/protocol.go
+++ b/cmd/v2/ui/protocol.go
@@ -19,6 +19,7 @@ import (
"go_dreamfactory/modules/sys"
"go_dreamfactory/modules/task"
"go_dreamfactory/modules/user"
+ "go_dreamfactory/modules/worldtask"
"go_dreamfactory/pb"
"strings"
@@ -121,6 +122,8 @@ var (
ff(comm.ModuleTroll, "getlist"): &formview.TrollGetlistView{},
// growtask
ff(comm.ModuleGrowtask, growtask.GrowtaskSubTypeList): &formview.GrowtaskListView{},
+ //worldtask
+ ff(comm.ModuleWorldtask, worldtask.WorldtaskSubtypeMine): &formview.WorldtaskMineView{},
}
)
@@ -146,6 +149,7 @@ var (
string(comm.ModuleSociaty),
string(comm.ModuleTroll),
string(comm.ModuleGrowtask),
+ string(comm.ModuleWorldtask),
},
"gm": {ff(comm.ModuleGM, "cmd")},
"sys": {
@@ -246,6 +250,9 @@ var (
"growtask": {
ff(comm.ModuleGrowtask, growtask.GrowtaskSubTypeList),
},
+ "worldtask": {
+ ff(comm.ModuleWorldtask, worldtask.WorldtaskSubtypeMine),
+ },
}
)
@@ -896,6 +903,19 @@ var (
SubType: growtask.GrowtaskSubTypeList,
Enabled: true,
},
+ // worldtask
+ string(comm.ModuleWorldtask): {
+ NavLabel: "世界任务",
+ MainType: string(comm.ModuleWorldtask),
+ Enabled: true,
+ },
+ ff(comm.ModuleWorldtask, worldtask.WorldtaskSubtypeMine): {
+ NavLabel: "我的任务",
+ Desc: "世界任务剧情",
+ MainType: string(comm.ModuleWorldtask),
+ SubType: worldtask.WorldtaskSubtypeMine,
+ Enabled: true,
+ },
}
)
diff --git a/cmd/v2/ui/views/worldtask_mine.go b/cmd/v2/ui/views/worldtask_mine.go
new file mode 100644
index 000000000..6ce51fec5
--- /dev/null
+++ b/cmd/v2/ui/views/worldtask_mine.go
@@ -0,0 +1,119 @@
+package formview
+
+import (
+ "fmt"
+ "go_dreamfactory/cmd/v2/lib/common"
+ "go_dreamfactory/cmd/v2/model"
+ "go_dreamfactory/cmd/v2/service"
+ "go_dreamfactory/cmd/v2/service/observer"
+ "go_dreamfactory/comm"
+ "go_dreamfactory/modules/worldtask"
+ "go_dreamfactory/pb"
+
+ "fyne.io/fyne/v2"
+ "fyne.io/fyne/v2/container"
+ "fyne.io/fyne/v2/dialog"
+ "fyne.io/fyne/v2/theme"
+ "fyne.io/fyne/v2/widget"
+ "github.com/sirupsen/logrus"
+ "github.com/spf13/cast"
+)
+
+type WorldtaskMineView struct {
+ mineReq func()
+ BaseformView
+ itemList *common.ItemList
+ flag bool
+ juqingBtn *widget.Button
+}
+
+func (this *WorldtaskMineView) CreateView(t *model.TestCase) fyne.CanvasObject {
+ this.itemList = common.NewItemList()
+ this.itemList.ItemList = this.itemList.CreateList()
+
+ this.mineReq = func() {
+ if err := service.GetPttService().SendToClient(
+ t.MainType,
+ worldtask.WorldtaskSubtypeMine,
+ &pb.WorldtaskMineReq{}); err != nil {
+ logrus.Error(err)
+ }
+ }
+ defer this.mineReq()
+
+ // 刷新
+ refreshBtn := widget.NewButtonWithIcon("", theme.ViewRefreshIcon(), func() {
+ this.itemList.Reset()
+ this.mineReq()
+ })
+
+ // 接取任务
+ this.juqingBtn = widget.NewButton("接取任务", func() {
+ taskIdEntry := widget.NewEntry()
+ taskIdEntry.PlaceHolder = "任务ID"
+ form := widget.NewForm(
+ widget.NewFormItem("任务ID", taskIdEntry),
+ )
+
+ dconf := dialog.NewCustom("接取任务", "关闭", form, this.w)
+
+ form.OnSubmit = func() {
+ if err := service.GetPttService().SendToClient(
+ t.MainType,
+ worldtask.WorldtaskSubtypeFinish,
+ &pb.WorldtaskFinishReq{
+ TaskId: cast.ToInt32(taskIdEntry.Text),
+ }); err != nil {
+ logrus.Error(err)
+ }
+ dconf.Hide()
+ this.mineReq()
+ }
+ form.SubmitText = "确定"
+ dconf.Resize(fyne.NewSize(400, 200))
+ dconf.Show()
+ })
+
+ barBtn := container.NewHBox(refreshBtn, this.juqingBtn)
+
+ c := container.NewBorder(barBtn, nil, nil, nil, this.itemList.ItemList)
+ this.mineData()
+ return c
+}
+
+func (this *WorldtaskMineView) mineData() {
+ if this.flag {
+ return
+ }
+ this.obs.AddListener(observer.EVENT_REQ_RSP, observer.Listener{
+ OnNotify: func(d interface{}, args ...interface{}) {
+ data := d.(*pb.UserMessage)
+
+ if !(data.MainType == string(comm.ModuleWorldtask) &&
+ data.SubType == worldtask.WorldtaskSubtypeMine) {
+ return
+ }
+
+ rsp := &pb.WorldtaskMineResp{}
+ if !comm.ProtoUnmarshal(data, rsp) {
+ logrus.Error("unmarshal err")
+ return
+ }
+ if rsp.Task == nil {
+ logrus.Debug(rsp.Task)
+ return
+ }
+
+ for _, v := range rsp.Task.TaskList {
+ item := common.Item{
+ Id: cast.ToString(v.TaskId),
+ Text: fmt.Sprintf("%d - 状态:%v", v.TaskId, v.Status),
+ }
+ this.itemList.AddItem(item)
+ }
+ this.juqingBtn.Disabled()
+ this.juqingBtn.Refresh()
+ },
+ })
+ this.flag = true
+}
diff --git a/comm/const.go b/comm/const.go
index 9a9f689c4..8d58e4aee 100644
--- a/comm/const.go
+++ b/comm/const.go
@@ -384,7 +384,9 @@ const (
Rtype67 TaskType = 67 //商店购物消耗xx货币xx个
Rtype68 TaskType = 68 //任意渠道消耗xx金币
Rtype69 TaskType = 69 //与其他玩家切磋xx次
- Rtype70 TaskType = 70 //通关随机任务XX关卡
+ Rtype70 TaskType = 70 //通关世界任务XX关卡
+ Rtype71 TaskType = 71 //主角等级达到X级
+ Rtype72 TaskType = 72 //完成一次捏人
)
const (
diff --git a/comm/imodule.go b/comm/imodule.go
index af56ffe3c..de01724ce 100644
--- a/comm/imodule.go
+++ b/comm/imodule.go
@@ -246,4 +246,9 @@ type (
IMartialhall interface {
Reddot(uid string) bool
}
+ // 世界任务
+ IWorldtask interface {
+ // 任务条件达成通知
+ TaskcondNotify(uid string, condId int32) error
+ }
)
diff --git a/modules/rtask/module.go b/modules/rtask/module.go
index 07d94b775..b66cb71f5 100644
--- a/modules/rtask/module.go
+++ b/modules/rtask/module.go
@@ -268,13 +268,21 @@ func (this *ModuleRtask) SendToRtask(session comm.IUserSession, rtaskType comm.T
//任务完成则推送
if code := this.CheckCondi(uid, v.cfg.Id); code == pb.ErrorCode_Success {
+ //任务条件达成推送
if err := this.SendMsgToUser("taskcond", "finished", &pb.TaskcondFinishedPush{
CondId: v.cfg.Id,
}, uid); err != nil {
log.Errorf("任务条件达成推送失败 err:%v", err)
}
+ module, err := this.service.GetModule(comm.ModuleWorldtask)
+ if err == nil {
+ if worldtask, ok := module.(comm.IWorldtask); ok {
+ if err := worldtask.TaskcondNotify(uid, v.cfg.Id); err != nil {
+ log.Errorf("任务条件达成通知 失败 err:%v", err)
+ }
+ }
+ }
}
-
}
return
diff --git a/modules/sociaty/api_cross_sign.go b/modules/sociaty/api_cross_sign.go
index aeeedcc5e..5c8e720c3 100644
--- a/modules/sociaty/api_cross_sign.go
+++ b/modules/sociaty/api_cross_sign.go
@@ -53,6 +53,7 @@ func (this *apiComp) Sign(session comm.IUserSession, req *pb.SociatySignReq) (co
if code = this.module.DispenseRes(session, v.Reward, true); code == pb.ErrorCode_Success {
signCfgId = v.Id
}
+ break
}
}
diff --git a/modules/worldtask/api.go b/modules/worldtask/api.go
index 5863aa405..2b7f0d4e2 100644
--- a/modules/worldtask/api.go
+++ b/modules/worldtask/api.go
@@ -7,8 +7,12 @@ import (
)
const (
- WorldtaskSubtypeStory = "story"
- WorldtaskSubtypeVerifycondPush = "verifycond"
+ WorldtaskSubtypeMine = "mine"
+ WorldtaskSubtypeAccept = "accept"
+ WorldtaskSubtypeFinish = "finish"
+ WorldtaskNexttaskPush = "nexttask"
+ WorldtaskBattleStart = "battlestart"
+ WorldtaskBattleFinish = "battlefinish"
)
type apiComp struct {
diff --git a/modules/worldtask/api_battlefinish.go b/modules/worldtask/api_battlefinish.go
index 4fc1467a8..87b118b9f 100644
--- a/modules/worldtask/api_battlefinish.go
+++ b/modules/worldtask/api_battlefinish.go
@@ -9,9 +9,43 @@ import (
// 战斗结束的请求
func (this *apiComp) BattlefinishCheck(session comm.IUserSession, req *pb.WorldtaskBattleFinishReq) (code pb.ErrorCode) {
+ if req.TaskId == 0 || req.Report == nil {
+ code = pb.ErrorCode_ReqParameterError
+ }
return
}
func (this *apiComp) Battlefinish(session comm.IUserSession, req *pb.WorldtaskBattleFinishReq) (code pb.ErrorCode, data proto.Message) {
+ if code = this.BattlefinishCheck(session, req); code != pb.ErrorCode_Success {
+ return
+ }
+
+ taskConf, err := this.module.configure.getWorldtaskById(req.TaskId)
+ if err != nil || taskConf == nil {
+ code = pb.ErrorCode_ConfigNoFound
+ return
+ }
+
+ rsp := &pb.WorldtaskBattleFinishResp{
+ TaskId: req.TaskId,
+ }
+
+ battleModule, err := this.module.service.GetModule(comm.ModuleBattle)
+ if err != nil {
+ code = pb.ErrorCode_SystemError
+ return
+ }
+
+ if ibattle, ok := battleModule.(comm.IBattle); ok {
+ // var isWin bool
+ if code, _ = ibattle.CheckBattleReport(session, req.Report); code == pb.ErrorCode_Success {
+ //触发任务
+ this.module.ModuleRtask.SendToRtask(session, comm.Rtype70, 1, taskConf.Completetask)
+ }
+ }
+
+ if err := session.SendMsg(string(this.module.GetType()), WorldtaskBattleFinish, rsp); err != nil {
+ code = pb.ErrorCode_SystemError
+ }
return
}
diff --git a/modules/worldtask/api_battlestart.go b/modules/worldtask/api_battlestart.go
new file mode 100644
index 000000000..c12ef8c20
--- /dev/null
+++ b/modules/worldtask/api_battlestart.go
@@ -0,0 +1,71 @@
+package worldtask
+
+import (
+ "go_dreamfactory/comm"
+ "go_dreamfactory/lego/sys/log"
+ "go_dreamfactory/pb"
+
+ "google.golang.org/protobuf/proto"
+)
+
+// 战斗开始
+func (this *apiComp) BattlestartCheck(session comm.IUserSession, req *pb.WorldtaskBattleStartReq) (code pb.ErrorCode) {
+ return
+}
+
+func (this *apiComp) Battlestart(session comm.IUserSession, req *pb.WorldtaskBattleStartReq) (code pb.ErrorCode, data proto.Message) {
+ if code = this.BattlestartCheck(session, req); code != pb.ErrorCode_Success {
+ return
+ }
+
+ battleConf, err := this.module.configure.getWorldtaskBattleById(req.BattleConfId)
+ if err != nil || battleConf == nil {
+ code = pb.ErrorCode_ConfigNoFound
+ log.Errorf("world_battle %v no found", req.BattleConfId)
+ return
+ }
+
+ iBattle, err := this.module.service.GetModule(comm.ModuleBattle)
+ if err != nil {
+ code = pb.ErrorCode_SystemError
+ return
+ }
+
+ if b, y := iBattle.(comm.IBattle); y {
+ var (
+ record *pb.DBBattleRecord
+ resp *pb.WorldtaskBattleStartResp
+ )
+ code, record = b.CreatePveBattle(session, &pb.BattlePVEReq{
+ Ptype: pb.PlayType_rtask,
+ Format: &pb.BattleFormation{
+ Leadpos: req.Leadpos,
+ Format: req.Teamids,
+ },
+ Mformat: battleConf.FormatList,
+ })
+
+ if code != pb.ErrorCode_Success {
+ return
+ }
+
+ if record != nil {
+ resp = &pb.WorldtaskBattleStartResp{
+ Info: &pb.BattleInfo{
+ Id: record.Id,
+ Btype: record.Btype,
+ Ptype: record.Ptype,
+ RedCompId: record.RedCompId,
+ Redflist: record.Redflist,
+ BlueCompId: record.BlueCompId,
+ Buleflist: record.Buleflist,
+ },
+ }
+ }
+
+ if err := session.SendMsg(string(this.module.GetType()), WorldtaskBattleStart, resp); err != nil {
+ code = pb.ErrorCode_SystemError
+ }
+ }
+ return
+}
diff --git a/modules/worldtask/api_finish.go b/modules/worldtask/api_finish.go
new file mode 100644
index 000000000..82123060f
--- /dev/null
+++ b/modules/worldtask/api_finish.go
@@ -0,0 +1,79 @@
+package worldtask
+
+import (
+ "go_dreamfactory/comm"
+ "go_dreamfactory/pb"
+
+ "google.golang.org/protobuf/proto"
+)
+
+// 任务完成
+
+func (this *apiComp) FinishCheck(session comm.IUserSession, req *pb.WorldtaskFinishReq) (code pb.ErrorCode) {
+ if req.TaskId == 0 {
+ code = pb.ErrorCode_ReqParameterError
+ }
+ return
+}
+
+func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishReq) (code pb.ErrorCode, data proto.Message) {
+ if code = this.FinishCheck(session, req); code != pb.ErrorCode_Success {
+ return
+ }
+
+ uid := session.GetUserId()
+
+ // 获取用户信息
+ user := this.module.ModuleUser.GetUser(uid)
+ if user == nil {
+ code = pb.ErrorCode_UserSessionNobeing
+ return
+ }
+
+ // 当前任务配置
+ curTaskConf, err := this.module.configure.getWorldtaskById(req.TaskId)
+ if err != nil || curTaskConf == nil {
+ code = pb.ErrorCode_ConfigNoFound
+ return
+ }
+ rsp := &pb.WorldtaskFinishResp{}
+
+ // 判断玩家等级要求
+ if user.Lv < curTaskConf.Lock {
+ code = pb.ErrorCode_WorldtaskLvNotEnough
+ return
+ }
+
+ // 当前玩家世界任务
+ userTask, err := this.module.modelWorldtask.getWorldtask(uid)
+ if err != nil {
+ code = pb.ErrorCode_DBError
+ return
+ }
+ if userTask.Uid == "" {
+ userTask.Uid = uid
+ }
+
+ // 完成任务
+ if err := this.module.modelWorldtask.finishTask(req.GroupId, req.TaskId, userTask); err != nil {
+ code = pb.ErrorCode_WorldtaskFinish
+ return
+ }
+
+ // 任务完成推送
+ if err := this.module.SendMsgToUser(string(this.module.GetType()), WorldtaskNexttaskPush, &pb.WorldtaskNexttaskPush{
+ NextTaskId: curTaskConf.IdAfter,
+ }, uid); err != nil {
+ this.module.Errorf("WorldtaskNexttaskPush err:%v", err)
+ }
+
+ // 发奖
+ if code = this.module.DispenseRes(session, curTaskConf.Reword, true); code != pb.ErrorCode_Success {
+ this.module.Errorf("资源发放失败 err:%v", err)
+ }
+
+ if err := session.SendMsg(string(this.module.GetType()), WorldtaskSubtypeFinish, rsp); err != nil {
+ code = pb.ErrorCode_SystemError
+ }
+ return
+}
diff --git a/modules/worldtask/api_mine.go b/modules/worldtask/api_mine.go
new file mode 100644
index 000000000..afa2d4bce
--- /dev/null
+++ b/modules/worldtask/api_mine.go
@@ -0,0 +1,31 @@
+package worldtask
+
+import (
+ "go_dreamfactory/comm"
+ "go_dreamfactory/pb"
+
+ "google.golang.org/protobuf/proto"
+)
+
+// 我的世界任务
+func (this *apiComp) MineCheck(session comm.IUserSession, req *pb.WorldtaskMineReq) (code pb.ErrorCode) {
+ return
+}
+
+func (this *apiComp) Mine(session comm.IUserSession, req *pb.WorldtaskMineReq) (code pb.ErrorCode, data proto.Message) {
+ uid := session.GetUserId()
+ myWorldtask, err := this.module.modelWorldtask.getWorldtask(uid)
+ if err != nil {
+ code = pb.ErrorCode_DBError
+ return
+ }
+
+ rsp := &pb.WorldtaskMineResp{
+ Task: myWorldtask,
+ }
+
+ if err := session.SendMsg(string(this.module.GetType()), WorldtaskSubtypeMine, rsp); err != nil {
+ code = pb.ErrorCode_SystemError
+ }
+ return
+}
diff --git a/modules/worldtask/api_story.go b/modules/worldtask/api_story.go
deleted file mode 100644
index 483902996..000000000
--- a/modules/worldtask/api_story.go
+++ /dev/null
@@ -1,79 +0,0 @@
-package worldtask
-
-import (
- "go_dreamfactory/comm"
- "go_dreamfactory/pb"
-
- "google.golang.org/protobuf/proto"
-)
-
-// 剧情对话
-
-func (this *apiComp) StoryCheck(session comm.IUserSession, req *pb.WorldtaskStoryReq) (code pb.ErrorCode) {
- if req.TaskId == 0 {
- code = pb.ErrorCode_ReqParameterError
- }
- return
-}
-
-func (this *apiComp) Story(session comm.IUserSession, req *pb.WorldtaskStoryReq) (code pb.ErrorCode, data proto.Message) {
- if code = this.StoryCheck(session, req); code != pb.ErrorCode_Success {
- return
- }
-
- uid := session.GetUserId()
- gwtConf, err := this.module.configure.getWorldtaskCfg()
- if err != nil || gwtConf == nil {
- code = pb.ErrorCode_ConfigNoFound
- return
- }
-
- // 获取用户信息
- user := this.module.ModuleUser.GetUser(uid)
- if user == nil {
- code = pb.ErrorCode_UserSessionNobeing
- return
- }
-
- // 当前任务配置
- curTaskConf, ok := gwtConf.GetDataMap()[req.TaskId]
- if !ok {
- code = pb.ErrorCode_ConfigNoFound
- return
- }
- rsp := &pb.WorldtaskStoryResp{}
-
- // 判断玩家等级要求
- if user.Lv < curTaskConf.Lock {
- code = pb.ErrorCode_WorldtaskLvNotEnough
- return
- }
-
- // 下一个任务
- if curTaskConf.Ontxe == 0 && curTaskConf.AutoAccept == 0 {
- rsp.NextTaskId = 0
- } else if curTaskConf.Ontxe != 0 && curTaskConf.AutoAccept == 1 {
- rsp.NextTaskId = curTaskConf.IdAfter
- }
-
- // 当前玩家世界任务
- userTask, err := this.module.modelWorldtask.getWorldtask(uid)
- if err != nil {
- code = pb.ErrorCode_DBError
- return
- }
- if userTask.Uid == "" {
- userTask.Uid = uid
- }
-
- // 完成任务
- if err := this.module.modelWorldtask.finishTask(req.TaskId, userTask); err != nil {
- code = pb.ErrorCode_WorldtaskStory
- return
- }
-
- if err := session.SendMsg(string(this.module.GetType()), WorldtaskSubtypeStory, rsp); err != nil {
- code = pb.ErrorCode_SystemError
- }
- return
-}
diff --git a/modules/worldtask/configure.go b/modules/worldtask/configure.go
index 6ab05faad..0a2f7dc5c 100644
--- a/modules/worldtask/configure.go
+++ b/modules/worldtask/configure.go
@@ -8,7 +8,8 @@ import (
)
const (
- gameWorldTask = "game_worldtask.json"
+ gameWorldTask = "game_worldtask.json"
+ gameWorldtaskBattle = "game_worldbattle.json"
)
type configureComp struct {
@@ -18,7 +19,8 @@ type configureComp struct {
func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
err = this.MCompConfigure.Init(service, module, comp, options)
err = this.LoadMultiConfigure(map[string]interface{}{
- gameWorldTask: cfg.NewGameWorldTask,
+ gameWorldTask: cfg.NewGameWorldTask,
+ gameWorldtaskBattle: cfg.NewGameWorldBattle,
})
return
}
@@ -38,3 +40,41 @@ func (this *configureComp) getWorldtaskCfg() (data *cfg.GameWorldTask, err error
}
return
}
+
+func (this *configureComp) getWorldtaskById(taskId int32) (*cfg.GameWorldTaskData, error) {
+ gwt, err := this.getWorldtaskCfg()
+ if err != nil {
+ return nil, err
+ }
+ if data, ok := gwt.GetDataMap()[taskId]; ok {
+ return data, nil
+ }
+ return nil, fmt.Errorf("GameWorldTask config id:%v not found", taskId)
+}
+
+func (this *configureComp) getWorldtaskBattleCfg() (data *cfg.GameWorldBattle, err error) {
+ var (
+ v interface{}
+ ok bool
+ )
+ if v, err = this.GetConfigure(gameWorldtaskBattle); err != nil {
+ return
+ } else {
+ if data, ok = v.(*cfg.GameWorldBattle); !ok {
+ err = fmt.Errorf("%T is *cfg.GameWorldBattle", v)
+ return
+ }
+ }
+ return
+}
+
+func (this *configureComp) getWorldtaskBattleById(confId int32) (*cfg.GameWorldBattleData, error) {
+ gwt, err := this.getWorldtaskBattleCfg()
+ if err != nil {
+ return nil, err
+ }
+ if data, ok := gwt.GetDataMap()[confId]; ok {
+ return data, nil
+ }
+ return nil, fmt.Errorf("GameWorldBattleData config id:%v not found", confId)
+}
diff --git a/modules/worldtask/model_worldtask.go b/modules/worldtask/model_worldtask.go
index 9e4db5c3b..bbeb06089 100644
--- a/modules/worldtask/model_worldtask.go
+++ b/modules/worldtask/model_worldtask.go
@@ -1,6 +1,7 @@
package worldtask
import (
+ "errors"
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
@@ -31,23 +32,41 @@ func (this *ModelWorldtask) getWorldtask(uid string) (*pb.DBWorldtask, error) {
return d, nil
}
+// 接取任务
+func (this *ModelWorldtask) acceptTask(groupId, taskId int32, task *pb.DBWorldtask) error {
+ if task == nil {
+ return errors.New("worldtask is nil")
+ }
+
+ return nil
+}
+
// 完成任务
-func (this *ModelWorldtask) finishTask(taskId int32, task *pb.DBWorldtask) error {
+func (this *ModelWorldtask) finishTask(groupId, taskId int32, task *pb.DBWorldtask) error {
+ if task == nil {
+ return errors.New("worldtask is nil")
+ }
+ update := map[string]interface{}{}
+ if task.LastTaskIds == nil {
+ task.LastTaskIds = make(map[int32]int32)
+ }
if len(task.TaskList) == 0 {
+ update["uid"] = task.Uid
task.TaskList = append(task.TaskList, &pb.Worldtask{
TaskId: taskId,
Status: 1, //完成
})
+ task.LastTaskIds[groupId] = taskId
} else {
for _, v := range task.TaskList {
if v.TaskId == taskId {
v.Status = 1 //完成
+ task.LastTaskIds[groupId] = taskId
+ break
}
}
}
-
- update := map[string]interface{}{
- "taskList": task.TaskList,
- }
+ update["taskList"] = task.TaskList
+ update["lastTaskIds"] = task.LastTaskIds
return this.Change(task.Uid, update)
}
diff --git a/modules/worldtask/module.go b/modules/worldtask/module.go
index f7389dc17..fe3b131a4 100644
--- a/modules/worldtask/module.go
+++ b/modules/worldtask/module.go
@@ -1,12 +1,17 @@
package worldtask
import (
+ "fmt"
"go_dreamfactory/comm"
"go_dreamfactory/lego/base"
"go_dreamfactory/lego/core"
+ "go_dreamfactory/lego/sys/log"
"go_dreamfactory/modules"
+ "go_dreamfactory/pb"
)
+var _ comm.IWorldtask = (*Worldtask)(nil)
+
type Worldtask struct {
modules.ModuleBase
api *apiComp
@@ -33,3 +38,54 @@ func (this *Worldtask) OnInstallComp() {
func (this *Worldtask) GetType() core.M_Modules {
return comm.ModuleWorldtask
}
+
+// 任务条件达成通知
+func (this *Worldtask) TaskcondNotify(uid string, condId int32) error {
+ //下一个任务ID
+ var nextTaskId int32
+ // 获取用户信息
+ user := this.ModuleUser.GetUser(uid)
+ if user == nil {
+ return fmt.Errorf("玩家uid:%v not found", uid)
+ }
+
+ userTask, err := this.modelWorldtask.getWorldtask(uid)
+ if err != nil {
+ return err
+ }
+
+ if userTask.Uid != "" {
+ for _, id := range userTask.LastTaskIds {
+ taskConf, err := this.configure.getWorldtaskById(id)
+ if err != nil {
+ return err
+ }
+ if taskConf != nil {
+ if taskConf.AutoAccept == 1 { //自动截取,返回下一个任务
+ nextTaskId = taskConf.IdAfter
+ if nextTaskId == 0 {
+ this.Debug("已经是最后一个任务了")
+ return nil
+ }
+ nexttaskConf, err := this.configure.getWorldtaskById(nextTaskId)
+ if err != nil {
+ return err
+ }
+ // 判断玩家等级要求
+ if user.Lv < nexttaskConf.Lock {
+ return fmt.Errorf("等级不满足 uid:%v 要求lv:%v", uid, nexttaskConf.Lock)
+ }
+ //推送
+ if err := this.SendMsgToUser(string(this.GetType()), "nexttask", &pb.WorldtaskNexttaskPush{
+ NextTaskId: nextTaskId,
+ }, uid); err != nil {
+ log.Errorf("任务条件达成推送失败 err:%v", err)
+ }
+ }
+ }
+ }
+
+ }
+
+ return nil
+}
diff --git a/pb/errorcode.pb.go b/pb/errorcode.pb.go
index 0a5557943..ef3c4d2a0 100644
--- a/pb/errorcode.pb.go
+++ b/pb/errorcode.pb.go
@@ -260,8 +260,9 @@ const (
// pay
ErrorCode_PayBuyNumNotEnough ErrorCode = 3701 //支付次数不足
// worldtask
- ErrorCode_WorldtaskStory ErrorCode = 3801 //剧情任务失败
+ ErrorCode_WorldtaskFinish ErrorCode = 3801 //任务完成失败
ErrorCode_WorldtaskLvNotEnough ErrorCode = 3802 //等级不满足
+ ErrorCode_WorldtaskNoAccept ErrorCode = 3803 //不能接取
)
// Enum value maps for ErrorCode.
@@ -477,8 +478,9 @@ var (
3601: "GrowtaskReceive",
3602: "GrowtaskAdvReceive",
3701: "PayBuyNumNotEnough",
- 3801: "WorldtaskStory",
+ 3801: "WorldtaskFinish",
3802: "WorldtaskLvNotEnough",
+ 3803: "WorldtaskNoAccept",
}
ErrorCode_value = map[string]int32{
"Success": 0,
@@ -691,8 +693,9 @@ var (
"GrowtaskReceive": 3601,
"GrowtaskAdvReceive": 3602,
"PayBuyNumNotEnough": 3701,
- "WorldtaskStory": 3801,
+ "WorldtaskFinish": 3801,
"WorldtaskLvNotEnough": 3802,
+ "WorldtaskNoAccept": 3803,
}
)
@@ -727,7 +730,7 @@ var File_errorcode_proto protoreflect.FileDescriptor
var file_errorcode_proto_rawDesc = []byte{
0x0a, 0x0f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x2a, 0xd3, 0x25, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12,
+ 0x6f, 0x2a, 0xec, 0x25, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12,
0x0b, 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d,
0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x10, 0x0a, 0x12,
0x1b, 0x0a, 0x17, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
@@ -1025,11 +1028,12 @@ var file_errorcode_proto_rawDesc = []byte{
0x76, 0x65, 0x10, 0x91, 0x1c, 0x12, 0x17, 0x0a, 0x12, 0x47, 0x72, 0x6f, 0x77, 0x74, 0x61, 0x73,
0x6b, 0x41, 0x64, 0x76, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x10, 0x92, 0x1c, 0x12, 0x17,
0x0a, 0x12, 0x50, 0x61, 0x79, 0x42, 0x75, 0x79, 0x4e, 0x75, 0x6d, 0x4e, 0x6f, 0x74, 0x45, 0x6e,
- 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf5, 0x1c, 0x12, 0x13, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6c, 0x64,
- 0x74, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x10, 0xd9, 0x1d, 0x12, 0x19, 0x0a, 0x14,
- 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x76, 0x4e, 0x6f, 0x74, 0x45, 0x6e,
- 0x6f, 0x75, 0x67, 0x68, 0x10, 0xda, 0x1d, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62,
- 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x6f, 0x75, 0x67, 0x68, 0x10, 0xf5, 0x1c, 0x12, 0x14, 0x0a, 0x0f, 0x57, 0x6f, 0x72, 0x6c, 0x64,
+ 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x10, 0xd9, 0x1d, 0x12, 0x19, 0x0a,
+ 0x14, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x76, 0x4e, 0x6f, 0x74, 0x45,
+ 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x10, 0xda, 0x1d, 0x12, 0x16, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6c,
+ 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e, 0x6f, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x10, 0xdb, 0x1d,
+ 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
diff --git a/pb/worldtask_db.pb.go b/pb/worldtask_db.pb.go
index 13fa6ba5b..495f69c2d 100644
--- a/pb/worldtask_db.pb.go
+++ b/pb/worldtask_db.pb.go
@@ -25,8 +25,9 @@ type DBWorldtask struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid" bson:"uid"` //玩家ID
- TaskList []*Worldtask `protobuf:"bytes,2,rep,name=taskList,proto3" json:"taskList" bson:"taskList"` // 任务列表
+ Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid" bson:"uid"` //玩家ID
+ LastTaskIds map[int32]int32 `protobuf:"bytes,2,rep,name=lastTaskIds,proto3" json:"lastTaskIds" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3" bson:"lastTaskId"` //上一次完成的任务 key:groupId val:任务ID
+ TaskList []*Worldtask `protobuf:"bytes,3,rep,name=taskList,proto3" json:"taskList" bson:"taskList"` // 任务列表
}
func (x *DBWorldtask) Reset() {
@@ -68,6 +69,13 @@ func (x *DBWorldtask) GetUid() string {
return ""
}
+func (x *DBWorldtask) GetLastTaskIds() map[int32]int32 {
+ if x != nil {
+ return x.LastTaskIds
+ }
+ return nil
+}
+
func (x *DBWorldtask) GetTaskList() []*Worldtask {
if x != nil {
return x.TaskList
@@ -134,17 +142,25 @@ var File_worldtask_worldtask_db_proto protoreflect.FileDescriptor
var file_worldtask_worldtask_db_proto_rawDesc = []byte{
0x0a, 0x1c, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x2f, 0x77, 0x6f, 0x72, 0x6c,
- 0x64, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x47,
- 0x0a, 0x0b, 0x44, 0x42, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x12, 0x10, 0x0a,
- 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12,
- 0x26, 0x0a, 0x08, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28,
- 0x0b, 0x32, 0x0a, 0x2e, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x08, 0x74,
- 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x3b, 0x0a, 0x09, 0x57, 0x6f, 0x72, 0x6c, 0x64,
- 0x74, 0x61, 0x73, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74,
- 0x61, 0x74, 0x75, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x33,
+ 0x64, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc8,
+ 0x01, 0x0a, 0x0b, 0x44, 0x42, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x12, 0x10,
+ 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64,
+ 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x73, 0x18,
+ 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x44, 0x42, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74,
+ 0x61, 0x73, 0x6b, 0x2e, 0x4c, 0x61, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x73, 0x45,
+ 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64,
+ 0x73, 0x12, 0x26, 0x0a, 0x08, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x52,
+ 0x08, 0x74, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x1a, 0x3e, 0x0a, 0x10, 0x4c, 0x61, 0x73,
+ 0x74, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 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, 0x3b, 0x0a, 0x09, 0x57, 0x6f, 0x72,
+ 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x16,
+ 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
+ 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -159,18 +175,20 @@ func file_worldtask_worldtask_db_proto_rawDescGZIP() []byte {
return file_worldtask_worldtask_db_proto_rawDescData
}
-var file_worldtask_worldtask_db_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_worldtask_worldtask_db_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
var file_worldtask_worldtask_db_proto_goTypes = []interface{}{
(*DBWorldtask)(nil), // 0: DBWorldtask
(*Worldtask)(nil), // 1: Worldtask
+ nil, // 2: DBWorldtask.LastTaskIdsEntry
}
var file_worldtask_worldtask_db_proto_depIdxs = []int32{
- 1, // 0: DBWorldtask.taskList:type_name -> Worldtask
- 1, // [1:1] is the sub-list for method output_type
- 1, // [1:1] is the sub-list for method input_type
- 1, // [1:1] is the sub-list for extension type_name
- 1, // [1:1] is the sub-list for extension extendee
- 0, // [0:1] is the sub-list for field type_name
+ 2, // 0: DBWorldtask.lastTaskIds:type_name -> DBWorldtask.LastTaskIdsEntry
+ 1, // 1: DBWorldtask.taskList:type_name -> Worldtask
+ 2, // [2:2] is the sub-list for method output_type
+ 2, // [2:2] is the sub-list for method input_type
+ 2, // [2:2] is the sub-list for extension type_name
+ 2, // [2:2] is the sub-list for extension extendee
+ 0, // [0:2] is the sub-list for field type_name
}
func init() { file_worldtask_worldtask_db_proto_init() }
@@ -210,7 +228,7 @@ func file_worldtask_worldtask_db_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_worldtask_worldtask_db_proto_rawDesc,
NumEnums: 0,
- NumMessages: 2,
+ NumMessages: 3,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/pb/worldtask_msg.pb.go b/pb/worldtask_msg.pb.go
index d092e388f..fdb5b228c 100644
--- a/pb/worldtask_msg.pb.go
+++ b/pb/worldtask_msg.pb.go
@@ -20,17 +20,15 @@ const (
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
-// 剧情对话结束请求
-type WorldtaskStoryReq struct {
+// 我的世界任务
+type WorldtaskMineReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
-
- TaskId int32 `protobuf:"varint,1,opt,name=taskId,proto3" json:"taskId"` //任务ID
}
-func (x *WorldtaskStoryReq) Reset() {
- *x = WorldtaskStoryReq{}
+func (x *WorldtaskMineReq) Reset() {
+ *x = WorldtaskMineReq{}
if protoimpl.UnsafeEnabled {
mi := &file_worldtask_worldtask_msg_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -38,13 +36,13 @@ func (x *WorldtaskStoryReq) Reset() {
}
}
-func (x *WorldtaskStoryReq) String() string {
+func (x *WorldtaskMineReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WorldtaskStoryReq) ProtoMessage() {}
+func (*WorldtaskMineReq) ProtoMessage() {}
-func (x *WorldtaskStoryReq) ProtoReflect() protoreflect.Message {
+func (x *WorldtaskMineReq) ProtoReflect() protoreflect.Message {
mi := &file_worldtask_worldtask_msg_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -56,28 +54,21 @@ func (x *WorldtaskStoryReq) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WorldtaskStoryReq.ProtoReflect.Descriptor instead.
-func (*WorldtaskStoryReq) Descriptor() ([]byte, []int) {
+// Deprecated: Use WorldtaskMineReq.ProtoReflect.Descriptor instead.
+func (*WorldtaskMineReq) Descriptor() ([]byte, []int) {
return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{0}
}
-func (x *WorldtaskStoryReq) GetTaskId() int32 {
- if x != nil {
- return x.TaskId
- }
- return 0
-}
-
-type WorldtaskStoryResp struct {
+type WorldtaskMineResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- NextTaskId int32 `protobuf:"varint,1,opt,name=nextTaskId,proto3" json:"nextTaskId"` //任务ID
+ Task *DBWorldtask `protobuf:"bytes,1,opt,name=task,proto3" json:"task"`
}
-func (x *WorldtaskStoryResp) Reset() {
- *x = WorldtaskStoryResp{}
+func (x *WorldtaskMineResp) Reset() {
+ *x = WorldtaskMineResp{}
if protoimpl.UnsafeEnabled {
mi := &file_worldtask_worldtask_msg_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -85,13 +76,13 @@ func (x *WorldtaskStoryResp) Reset() {
}
}
-func (x *WorldtaskStoryResp) String() string {
+func (x *WorldtaskMineResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*WorldtaskStoryResp) ProtoMessage() {}
+func (*WorldtaskMineResp) ProtoMessage() {}
-func (x *WorldtaskStoryResp) ProtoReflect() protoreflect.Message {
+func (x *WorldtaskMineResp) ProtoReflect() protoreflect.Message {
mi := &file_worldtask_worldtask_msg_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -103,33 +94,302 @@ func (x *WorldtaskStoryResp) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use WorldtaskStoryResp.ProtoReflect.Descriptor instead.
-func (*WorldtaskStoryResp) Descriptor() ([]byte, []int) {
+// Deprecated: Use WorldtaskMineResp.ProtoReflect.Descriptor instead.
+func (*WorldtaskMineResp) Descriptor() ([]byte, []int) {
return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{1}
}
-func (x *WorldtaskStoryResp) GetNextTaskId() int32 {
+func (x *WorldtaskMineResp) GetTask() *DBWorldtask {
+ if x != nil {
+ return x.Task
+ }
+ return nil
+}
+
+// 完成任务
+type WorldtaskFinishReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ GroupId int32 `protobuf:"varint,1,opt,name=groupId,proto3" json:"groupId"` //分组ID
+ TaskId int32 `protobuf:"varint,2,opt,name=taskId,proto3" json:"taskId"` //任务ID
+}
+
+func (x *WorldtaskFinishReq) Reset() {
+ *x = WorldtaskFinishReq{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WorldtaskFinishReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorldtaskFinishReq) ProtoMessage() {}
+
+func (x *WorldtaskFinishReq) ProtoReflect() protoreflect.Message {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorldtaskFinishReq.ProtoReflect.Descriptor instead.
+func (*WorldtaskFinishReq) Descriptor() ([]byte, []int) {
+ return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *WorldtaskFinishReq) GetGroupId() int32 {
+ if x != nil {
+ return x.GroupId
+ }
+ return 0
+}
+
+func (x *WorldtaskFinishReq) GetTaskId() int32 {
+ if x != nil {
+ return x.TaskId
+ }
+ return 0
+}
+
+type WorldtaskFinishResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ GroupId int32 `protobuf:"varint,1,opt,name=groupId,proto3" json:"groupId"`
+ TaskId int32 `protobuf:"varint,2,opt,name=taskId,proto3" json:"taskId"`
+}
+
+func (x *WorldtaskFinishResp) Reset() {
+ *x = WorldtaskFinishResp{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WorldtaskFinishResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorldtaskFinishResp) ProtoMessage() {}
+
+func (x *WorldtaskFinishResp) ProtoReflect() protoreflect.Message {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorldtaskFinishResp.ProtoReflect.Descriptor instead.
+func (*WorldtaskFinishResp) Descriptor() ([]byte, []int) {
+ return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *WorldtaskFinishResp) GetGroupId() int32 {
+ if x != nil {
+ return x.GroupId
+ }
+ return 0
+}
+
+func (x *WorldtaskFinishResp) GetTaskId() int32 {
+ if x != nil {
+ return x.TaskId
+ }
+ return 0
+}
+
+//任务完成条件达成的推送
+type WorldtaskNexttaskPush struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ NextTaskId int32 `protobuf:"varint,1,opt,name=nextTaskId,proto3" json:"nextTaskId"` //下一个任务ID
+}
+
+func (x *WorldtaskNexttaskPush) Reset() {
+ *x = WorldtaskNexttaskPush{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WorldtaskNexttaskPush) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorldtaskNexttaskPush) ProtoMessage() {}
+
+func (x *WorldtaskNexttaskPush) ProtoReflect() protoreflect.Message {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorldtaskNexttaskPush.ProtoReflect.Descriptor instead.
+func (*WorldtaskNexttaskPush) Descriptor() ([]byte, []int) {
+ return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *WorldtaskNexttaskPush) GetNextTaskId() int32 {
if x != nil {
return x.NextTaskId
}
return 0
}
+// 开始战斗
+type WorldtaskBattleStartReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ BattleConfId int32 `protobuf:"varint,1,opt,name=battleConfId,proto3" json:"battleConfId"` //战斗配表ID
+ Leadpos int32 `protobuf:"varint,2,opt,name=leadpos,proto3" json:"leadpos"` //队长位置
+ Teamids []string `protobuf:"bytes,3,rep,name=teamids,proto3" json:"teamids"` //阵容信息
+}
+
+func (x *WorldtaskBattleStartReq) Reset() {
+ *x = WorldtaskBattleStartReq{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WorldtaskBattleStartReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorldtaskBattleStartReq) ProtoMessage() {}
+
+func (x *WorldtaskBattleStartReq) ProtoReflect() protoreflect.Message {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorldtaskBattleStartReq.ProtoReflect.Descriptor instead.
+func (*WorldtaskBattleStartReq) Descriptor() ([]byte, []int) {
+ return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *WorldtaskBattleStartReq) GetBattleConfId() int32 {
+ if x != nil {
+ return x.BattleConfId
+ }
+ return 0
+}
+
+func (x *WorldtaskBattleStartReq) GetLeadpos() int32 {
+ if x != nil {
+ return x.Leadpos
+ }
+ return 0
+}
+
+func (x *WorldtaskBattleStartReq) GetTeamids() []string {
+ if x != nil {
+ return x.Teamids
+ }
+ return nil
+}
+
+type WorldtaskBattleStartResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Info *BattleInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` //战斗信息
+}
+
+func (x *WorldtaskBattleStartResp) Reset() {
+ *x = WorldtaskBattleStartResp{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WorldtaskBattleStartResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WorldtaskBattleStartResp) ProtoMessage() {}
+
+func (x *WorldtaskBattleStartResp) ProtoReflect() protoreflect.Message {
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WorldtaskBattleStartResp.ProtoReflect.Descriptor instead.
+func (*WorldtaskBattleStartResp) Descriptor() ([]byte, []int) {
+ return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *WorldtaskBattleStartResp) GetInfo() *BattleInfo {
+ if x != nil {
+ return x.Info
+ }
+ return nil
+}
+
// 战斗完成
type WorldtaskBattleFinishReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- RtaskId int32 `protobuf:"varint,1,opt,name=rtaskId,proto3" json:"rtaskId"` //任务ID
- RtaskSubId int32 `protobuf:"varint,2,opt,name=rtaskSubId,proto3" json:"rtaskSubId"` //支线任务ID
- ChooseId int32 `protobuf:"varint,3,opt,name=chooseId,proto3" json:"chooseId"` //选项配置ID
+ TaskId int32 `protobuf:"varint,1,opt,name=taskId,proto3" json:"taskId"` //任务ID
+ Report *BattleReport `protobuf:"bytes,2,opt,name=report,proto3" json:"report"` //战报
}
func (x *WorldtaskBattleFinishReq) Reset() {
*x = WorldtaskBattleFinishReq{}
if protoimpl.UnsafeEnabled {
- mi := &file_worldtask_worldtask_msg_proto_msgTypes[2]
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -142,7 +402,7 @@ func (x *WorldtaskBattleFinishReq) String() string {
func (*WorldtaskBattleFinishReq) ProtoMessage() {}
func (x *WorldtaskBattleFinishReq) ProtoReflect() protoreflect.Message {
- mi := &file_worldtask_worldtask_msg_proto_msgTypes[2]
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -155,28 +415,21 @@ func (x *WorldtaskBattleFinishReq) ProtoReflect() protoreflect.Message {
// Deprecated: Use WorldtaskBattleFinishReq.ProtoReflect.Descriptor instead.
func (*WorldtaskBattleFinishReq) Descriptor() ([]byte, []int) {
- return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{2}
+ return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{7}
}
-func (x *WorldtaskBattleFinishReq) GetRtaskId() int32 {
+func (x *WorldtaskBattleFinishReq) GetTaskId() int32 {
if x != nil {
- return x.RtaskId
+ return x.TaskId
}
return 0
}
-func (x *WorldtaskBattleFinishReq) GetRtaskSubId() int32 {
+func (x *WorldtaskBattleFinishReq) GetReport() *BattleReport {
if x != nil {
- return x.RtaskSubId
+ return x.Report
}
- return 0
-}
-
-func (x *WorldtaskBattleFinishReq) GetChooseId() int32 {
- if x != nil {
- return x.ChooseId
- }
- return 0
+ return nil
}
type WorldtaskBattleFinishResp struct {
@@ -184,14 +437,13 @@ type WorldtaskBattleFinishResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- RtaskId int32 `protobuf:"varint,1,opt,name=rtaskId,proto3" json:"rtaskId"` //任务ID
- RtaskSubId int32 `protobuf:"varint,2,opt,name=rtaskSubId,proto3" json:"rtaskSubId"` //支线任务ID
+ TaskId int32 `protobuf:"varint,1,opt,name=taskId,proto3" json:"taskId"` //任务ID
}
func (x *WorldtaskBattleFinishResp) Reset() {
*x = WorldtaskBattleFinishResp{}
if protoimpl.UnsafeEnabled {
- mi := &file_worldtask_worldtask_msg_proto_msgTypes[3]
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -204,7 +456,7 @@ func (x *WorldtaskBattleFinishResp) String() string {
func (*WorldtaskBattleFinishResp) ProtoMessage() {}
func (x *WorldtaskBattleFinishResp) ProtoReflect() protoreflect.Message {
- mi := &file_worldtask_worldtask_msg_proto_msgTypes[3]
+ mi := &file_worldtask_worldtask_msg_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -217,19 +469,12 @@ func (x *WorldtaskBattleFinishResp) ProtoReflect() protoreflect.Message {
// Deprecated: Use WorldtaskBattleFinishResp.ProtoReflect.Descriptor instead.
func (*WorldtaskBattleFinishResp) Descriptor() ([]byte, []int) {
- return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{3}
+ return file_worldtask_worldtask_msg_proto_rawDescGZIP(), []int{8}
}
-func (x *WorldtaskBattleFinishResp) GetRtaskId() int32 {
+func (x *WorldtaskBattleFinishResp) GetTaskId() int32 {
if x != nil {
- return x.RtaskId
- }
- return 0
-}
-
-func (x *WorldtaskBattleFinishResp) GetRtaskSubId() int32 {
- if x != nil {
- return x.RtaskSubId
+ return x.TaskId
}
return 0
}
@@ -238,26 +483,48 @@ var File_worldtask_worldtask_msg_proto protoreflect.FileDescriptor
var file_worldtask_worldtask_msg_proto_rawDesc = []byte{
0x0a, 0x1d, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x2f, 0x77, 0x6f, 0x72, 0x6c,
- 0x64, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
- 0x2b, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x6f, 0x72,
- 0x79, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x12,
- 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65,
- 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x61, 0x73, 0x6b,
- 0x49, 0x64, 0x22, 0x70, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42,
- 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x18,
- 0x0a, 0x07, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
- 0x07, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x74, 0x61, 0x73,
- 0x6b, 0x53, 0x75, 0x62, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x74,
- 0x61, 0x73, 0x6b, 0x53, 0x75, 0x62, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x6f, 0x6f,
- 0x73, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x68, 0x6f, 0x6f,
- 0x73, 0x65, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x19, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73,
- 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73,
- 0x70, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x07, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x72,
- 0x74, 0x61, 0x73, 0x6b, 0x53, 0x75, 0x62, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
- 0x0a, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x53, 0x75, 0x62, 0x49, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e,
+ 0x64, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x17, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x6d,
+ 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x74,
+ 0x61, 0x73, 0x6b, 0x2f, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x64, 0x62,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x12, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74,
+ 0x61, 0x73, 0x6b, 0x4d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x22, 0x35, 0x0a, 0x11, 0x57, 0x6f,
+ 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4d, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12,
+ 0x20, 0x0a, 0x04, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e,
+ 0x44, 0x42, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x04, 0x74, 0x61, 0x73,
+ 0x6b, 0x22, 0x46, 0x0a, 0x12, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69,
+ 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70,
+ 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49,
+ 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x13, 0x57, 0x6f, 0x72,
+ 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70,
+ 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x05, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61,
+ 0x73, 0x6b, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b,
+ 0x49, 0x64, 0x22, 0x37, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x4e,
+ 0x65, 0x78, 0x74, 0x74, 0x61, 0x73, 0x6b, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1e, 0x0a, 0x0a, 0x6e,
+ 0x65, 0x78, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x71, 0x0a, 0x17, 0x57,
+ 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74,
+ 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65,
+ 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61,
+ 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65,
+ 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61,
+ 0x64, 0x70, 0x6f, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x73, 0x18,
+ 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x64, 0x73, 0x22, 0x3b,
+ 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c,
+ 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e,
+ 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c,
+ 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x59, 0x0a, 0x18, 0x57,
+ 0x6f, 0x72, 0x6c, 0x64, 0x74, 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69,
+ 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12,
+ 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x06,
+ 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x33, 0x0a, 0x19, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x74,
+ 0x61, 0x73, 0x6b, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52,
+ 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e,
0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
@@ -273,19 +540,30 @@ func file_worldtask_worldtask_msg_proto_rawDescGZIP() []byte {
return file_worldtask_worldtask_msg_proto_rawDescData
}
-var file_worldtask_worldtask_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
+var file_worldtask_worldtask_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_worldtask_worldtask_msg_proto_goTypes = []interface{}{
- (*WorldtaskStoryReq)(nil), // 0: WorldtaskStoryReq
- (*WorldtaskStoryResp)(nil), // 1: WorldtaskStoryResp
- (*WorldtaskBattleFinishReq)(nil), // 2: WorldtaskBattleFinishReq
- (*WorldtaskBattleFinishResp)(nil), // 3: WorldtaskBattleFinishResp
+ (*WorldtaskMineReq)(nil), // 0: WorldtaskMineReq
+ (*WorldtaskMineResp)(nil), // 1: WorldtaskMineResp
+ (*WorldtaskFinishReq)(nil), // 2: WorldtaskFinishReq
+ (*WorldtaskFinishResp)(nil), // 3: WorldtaskFinishResp
+ (*WorldtaskNexttaskPush)(nil), // 4: WorldtaskNexttaskPush
+ (*WorldtaskBattleStartReq)(nil), // 5: WorldtaskBattleStartReq
+ (*WorldtaskBattleStartResp)(nil), // 6: WorldtaskBattleStartResp
+ (*WorldtaskBattleFinishReq)(nil), // 7: WorldtaskBattleFinishReq
+ (*WorldtaskBattleFinishResp)(nil), // 8: WorldtaskBattleFinishResp
+ (*DBWorldtask)(nil), // 9: DBWorldtask
+ (*BattleInfo)(nil), // 10: BattleInfo
+ (*BattleReport)(nil), // 11: BattleReport
}
var file_worldtask_worldtask_msg_proto_depIdxs = []int32{
- 0, // [0:0] is the sub-list for method output_type
- 0, // [0:0] is the sub-list for method input_type
- 0, // [0:0] is the sub-list for extension type_name
- 0, // [0:0] is the sub-list for extension extendee
- 0, // [0:0] is the sub-list for field type_name
+ 9, // 0: WorldtaskMineResp.task:type_name -> DBWorldtask
+ 10, // 1: WorldtaskBattleStartResp.info:type_name -> BattleInfo
+ 11, // 2: WorldtaskBattleFinishReq.report:type_name -> BattleReport
+ 3, // [3:3] is the sub-list for method output_type
+ 3, // [3:3] is the sub-list for method input_type
+ 3, // [3:3] is the sub-list for extension type_name
+ 3, // [3:3] is the sub-list for extension extendee
+ 0, // [0:3] is the sub-list for field type_name
}
func init() { file_worldtask_worldtask_msg_proto_init() }
@@ -293,9 +571,11 @@ func file_worldtask_worldtask_msg_proto_init() {
if File_worldtask_worldtask_msg_proto != nil {
return
}
+ file_battle_battle_msg_proto_init()
+ file_worldtask_worldtask_db_proto_init()
if !protoimpl.UnsafeEnabled {
file_worldtask_worldtask_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WorldtaskStoryReq); i {
+ switch v := v.(*WorldtaskMineReq); i {
case 0:
return &v.state
case 1:
@@ -307,7 +587,7 @@ func file_worldtask_worldtask_msg_proto_init() {
}
}
file_worldtask_worldtask_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WorldtaskStoryResp); i {
+ switch v := v.(*WorldtaskMineResp); i {
case 0:
return &v.state
case 1:
@@ -319,7 +599,7 @@ func file_worldtask_worldtask_msg_proto_init() {
}
}
file_worldtask_worldtask_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WorldtaskBattleFinishReq); i {
+ switch v := v.(*WorldtaskFinishReq); i {
case 0:
return &v.state
case 1:
@@ -331,6 +611,66 @@ func file_worldtask_worldtask_msg_proto_init() {
}
}
file_worldtask_worldtask_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WorldtaskFinishResp); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_worldtask_worldtask_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WorldtaskNexttaskPush); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_worldtask_worldtask_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WorldtaskBattleStartReq); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_worldtask_worldtask_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WorldtaskBattleStartResp); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_worldtask_worldtask_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WorldtaskBattleFinishReq); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_worldtask_worldtask_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*WorldtaskBattleFinishResp); i {
case 0:
return &v.state
@@ -349,7 +689,7 @@ func file_worldtask_worldtask_msg_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_worldtask_worldtask_msg_proto_rawDesc,
NumEnums: 0,
- NumMessages: 4,
+ NumMessages: 9,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/sys/configure/structs/Game.WorldBattle.go b/sys/configure/structs/Game.WorldBattle.go
new file mode 100644
index 000000000..2de9c9079
--- /dev/null
+++ b/sys/configure/structs/Game.WorldBattle.go
@@ -0,0 +1,42 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+type GameWorldBattle struct {
+ _dataMap map[int32]*GameWorldBattleData
+ _dataList []*GameWorldBattleData
+}
+
+func NewGameWorldBattle(_buf []map[string]interface{}) (*GameWorldBattle, error) {
+ _dataList := make([]*GameWorldBattleData, 0, len(_buf))
+ dataMap := make(map[int32]*GameWorldBattleData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameWorldBattleData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Id] = _v
+ }
+ }
+ return &GameWorldBattle{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameWorldBattle) GetDataMap() map[int32]*GameWorldBattleData {
+ return table._dataMap
+}
+
+func (table *GameWorldBattle) GetDataList() []*GameWorldBattleData {
+ return table._dataList
+}
+
+func (table *GameWorldBattle) Get(key int32) *GameWorldBattleData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.WorldBattleData.go b/sys/configure/structs/Game.WorldBattleData.go
new file mode 100644
index 000000000..fba1047f0
--- /dev/null
+++ b/sys/configure/structs/Game.WorldBattleData.go
@@ -0,0 +1,52 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+import "errors"
+
+type GameWorldBattleData struct {
+ Id int32
+ FormatList []int32
+ CaptainId string
+}
+
+const TypeId_GameWorldBattleData = 1096332216
+
+func (*GameWorldBattleData) GetTypeId() int32 {
+ return 1096332216
+}
+
+func (_v *GameWorldBattleData)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 _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["FormatList"].([]interface{}); !_ok_ { err = errors.New("FormatList error"); return }
+
+ _v.FormatList = 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.FormatList = append(_v.FormatList, _list_v_)
+ }
+ }
+
+ { var _ok_ bool; if _v.CaptainId, _ok_ = _buf["captainId"].(string); !_ok_ { err = errors.New("captainId error"); return } }
+ return
+}
+
+func DeserializeGameWorldBattleData(_buf map[string]interface{}) (*GameWorldBattleData, error) {
+ v := &GameWorldBattleData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.WorldTaskData.go b/sys/configure/structs/Game.WorldTaskData.go
index 88aae3974..330bc4e8f 100644
--- a/sys/configure/structs/Game.WorldTaskData.go
+++ b/sys/configure/structs/Game.WorldTaskData.go
@@ -15,11 +15,12 @@ type GameWorldTaskData struct {
Lock int32
Ontxe int32
IdAfter int32
+ Group int32
Des int32
Icon string
TaskName string
TaskDisplay string
- Npc string
+ Npc []string
GetafterEvent []string
Completetask int32
AutoAccept int32
@@ -38,11 +39,25 @@ func (_v *GameWorldTaskData)Deserialize(_buf map[string]interface{}) (err error)
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lock"].(float64); !_ok_ { err = errors.New("lock error"); return }; _v.Lock = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ontxe"].(float64); !_ok_ { err = errors.New("ontxe error"); return }; _v.Ontxe = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id_after"].(float64); !_ok_ { err = errors.New("id_after error"); return }; _v.IdAfter = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["group"].(float64); !_ok_ { err = errors.New("group error"); return }; _v.Group = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["des"].(float64); !_ok_ { err = errors.New("des error"); return }; _v.Des = int32(_tempNum_) }
{ var _ok_ bool; if _v.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } }
{ var _ok_ bool; if _v.TaskName, _ok_ = _buf["task_name"].(string); !_ok_ { err = errors.New("task_name error"); return } }
{ var _ok_ bool; if _v.TaskDisplay, _ok_ = _buf["task_display"].(string); !_ok_ { err = errors.New("task_display error"); return } }
- { var _ok_ bool; if _v.Npc, _ok_ = _buf["npc"].(string); !_ok_ { err = errors.New("npc error"); return } }
+ {
+ var _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["npc"].([]interface{}); !_ok_ { err = errors.New("npc error"); return }
+
+ _v.Npc = make([]string, 0, len(_arr_))
+
+ for _, _e_ := range _arr_ {
+ var _list_v_ string
+ { if _list_v_, _ok_ = _e_.(string); !_ok_ { err = errors.New("_list_v_ error"); return } }
+ _v.Npc = append(_v.Npc, _list_v_)
+ }
+ }
+
{
var _arr_ []interface{}
var _ok_ bool