diff --git a/bin/json/game_puggsyevent.json b/bin/json/game_puggsyevent.json new file mode 100644 index 000000000..74efb5bc0 --- /dev/null +++ b/bin/json/game_puggsyevent.json @@ -0,0 +1,120 @@ +[ + { + "event": 1001, + "node_id": 1, + "type": 1, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "event": 1002, + "node_id": 1, + "type": 2, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "event": 1003, + "node_id": 1, + "type": 2, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "event": 1004, + "node_id": 1, + "type": 3, + "value": 0, + "reward": [] + }, + { + "event": 1005, + "node_id": 1, + "type": 4, + "value": 0, + "reward": [] + }, + { + "event": 1006, + "node_id": 1, + "type": 1, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "event": 1007, + "node_id": 1, + "type": 2, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "event": 1008, + "node_id": 1, + "type": 2, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "event": 1009, + "node_id": 1, + "type": 3, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "event": 1010, + "node_id": 1, + "type": 4, + "value": 0, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + } +] \ No newline at end of file diff --git a/bin/json/game_puggsyfight.json b/bin/json/game_puggsyfight.json new file mode 100644 index 000000000..88661b006 --- /dev/null +++ b/bin/json/game_puggsyfight.json @@ -0,0 +1,127 @@ +[ + { + "boss_id": 810301, + "boss_name": { + "key": "guild_guild_boss_boss_name_1", + "text": "胡德先生" + }, + "boss_text": { + "key": "guild_guild_boss_boss_name_1", + "text": "他是一名懦弱的战士" + }, + "BattleReadyID": 11706001, + "heroId": "33003", + "skill": [ + 155005111, + 155005211, + 155005311 + ], + "boss": [ + 810301 + ] + }, + { + "boss_id": 810302, + "boss_name": { + "key": "guild_guild_boss_boss_name_2", + "text": "胡德先生" + }, + "boss_text": { + "key": "guild_guild_boss_boss_name_2", + "text": "他是一名懦弱的战士" + }, + "BattleReadyID": 11706001, + "heroId": "33003", + "skill": [ + 155007111, + 155007211, + 155007311 + ], + "boss": [ + 810302 + ] + }, + { + "boss_id": 810303, + "boss_name": { + "key": "guild_guild_boss_boss_name_3", + "text": "胡德先生" + }, + "boss_text": { + "key": "guild_guild_boss_boss_name_3", + "text": "他是一名懦弱的战士" + }, + "BattleReadyID": 11706001, + "heroId": "33003", + "skill": [ + 155006111, + 155006211, + 155006311 + ], + "boss": [ + 810303 + ] + }, + { + "boss_id": 810304, + "boss_name": { + "key": "guild_guild_boss_boss_name_4", + "text": "胡德先生" + }, + "boss_text": { + "key": "guild_guild_boss_boss_name_4", + "text": "他是一名懦弱的战士" + }, + "BattleReadyID": 11706001, + "heroId": "33003", + "skill": [ + 155005111, + 155005211, + 155005311 + ], + "boss": [ + 810304 + ] + }, + { + "boss_id": 810305, + "boss_name": { + "key": "guild_guild_boss_boss_name_5", + "text": "胡德先生" + }, + "boss_text": { + "key": "guild_guild_boss_boss_name_5", + "text": "他是一名懦弱的战士" + }, + "BattleReadyID": 11706001, + "heroId": "33003", + "skill": [ + 155005111, + 155005211, + 155005311 + ], + "boss": [ + 810305 + ] + }, + { + "boss_id": 810306, + "boss_name": { + "key": "guild_guild_boss_boss_name_6", + "text": "胡德先生" + }, + "boss_text": { + "key": "guild_guild_boss_boss_name_6", + "text": "他是一名懦弱的战士" + }, + "BattleReadyID": 11706001, + "heroId": "33003", + "skill": [ + 125001111, + 125001211 + ], + "boss": [ + 810306 + ] + } +] \ No newline at end of file diff --git a/bin/json/game_puggsyisland.json b/bin/json/game_puggsyisland.json new file mode 100644 index 000000000..169275263 --- /dev/null +++ b/bin/json/game_puggsyisland.json @@ -0,0 +1,200 @@ +[ + { + "node_id": 1, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_1", + "text": "伯克岛" + }, + "time": [ + 0 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_1", + "text": "{0}可航行至伯克岛" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_1", + "text": "航行抵达伯克岛" + } + }, + { + "node_id": 2, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_2", + "text": "伯克岛" + }, + "time": [ + 0 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_2", + "text": "{0}可航行至伯克岛" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_2", + "text": "航行抵达伯克岛" + } + }, + { + "node_id": 3, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_3", + "text": "伯克岛" + }, + "time": [ + 0 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_3", + "text": "{0}可航行至伯克岛" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_3", + "text": "航行抵达伯克岛" + } + }, + { + "node_id": 4, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_4", + "text": "伯克岛" + }, + "time": [ + 0 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_4", + "text": "{0}可航行至伯克岛" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_4", + "text": "航行抵达伯克岛" + } + }, + { + "node_id": 5, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_5", + "text": "伯克岛" + }, + "time": [ + 0 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_5", + "text": "{0}可航行至伯克岛" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_5", + "text": "航行抵达伯克岛" + } + }, + { + "node_id": 6, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_6", + "text": "战栗海岸" + }, + "time": [ + 3 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_6", + "text": "{0}可航行至战栗海岸" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_6", + "text": "航行抵达战栗海岸" + } + }, + { + "node_id": 7, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_7", + "text": "战栗海岸" + }, + "time": [ + 3 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_7", + "text": "{0}可航行至战栗海岸" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_7", + "text": "航行抵达战栗海岸" + } + }, + { + "node_id": 8, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_8", + "text": "战栗海岸" + }, + "time": [ + 3 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_8", + "text": "{0}可航行至战栗海岸" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_8", + "text": "航行抵达战栗海岸" + } + }, + { + "node_id": 9, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_9", + "text": "维京海峡" + }, + "time": [ + 6 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_9", + "text": "{0}可航行至维京海峡" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_9", + "text": "航行抵达维京海峡" + } + }, + { + "node_id": 10, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_10", + "text": "维京海峡" + }, + "time": [ + 6 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_10", + "text": "{0}可航行至维京海峡" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_10", + "text": "航行抵达维京海峡" + } + }, + { + "node_id": 11, + "puggsy_name": { + "key": "guild_guild_boss_boss_name_11", + "text": "维京海峡" + }, + "time": [ + 6 + ], + "unlock": { + "key": "guild_guild_boss_boss_name_11", + "text": "{0}可航行至维京海峡" + }, + "introduce": { + "key": "guild_guild_boss_boss_name_11", + "text": "航行抵达维京海峡" + } + } +] \ No newline at end of file diff --git a/bin/json/game_puggsyscore.json b/bin/json/game_puggsyscore.json new file mode 100644 index 000000000..a29d88d45 --- /dev/null +++ b/bin/json/game_puggsyscore.json @@ -0,0 +1,223 @@ +[ + { + "id": 1, + "boss_id": 810301, + "rank_low": 0, + "rank_up": 19999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 2, + "boss_id": 810301, + "rank_low": 20000, + "rank_up": 49999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 3, + "boss_id": 810301, + "rank_low": 50000, + "rank_up": 79999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 4, + "boss_id": 810301, + "rank_low": 80000, + "rank_up": 99999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 5, + "boss_id": 810301, + "rank_low": 100000, + "rank_up": 149999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 6, + "boss_id": 810301, + "rank_low": 150000, + "rank_up": 199999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 7, + "boss_id": 810301, + "rank_low": 200000, + "rank_up": 249999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 8, + "boss_id": 810301, + "rank_low": 250000, + "rank_up": 319999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 9, + "boss_id": 810301, + "rank_low": 320000, + "rank_up": 399999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 10, + "boss_id": 810301, + "rank_low": 400000, + "rank_up": 499999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 11, + "boss_id": 810301, + "rank_low": 500000, + "rank_up": 599999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 12, + "boss_id": 810301, + "rank_low": 600000, + "rank_up": 699999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 13, + "boss_id": 810301, + "rank_low": 700000, + "rank_up": 999999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 14, + "boss_id": 810301, + "rank_low": 1000000, + "rank_up": 1199999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 15, + "boss_id": 810301, + "rank_low": 1200000, + "rank_up": 1599999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 16, + "boss_id": 810301, + "rank_low": 1600000, + "rank_up": 3799999, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + }, + { + "id": 17, + "boss_id": 810301, + "rank_low": 3800000, + "rank_up": -1, + "reward": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ] + } +] \ No newline at end of file diff --git a/bin/json/game_puggsyskill.json b/bin/json/game_puggsyskill.json new file mode 100644 index 000000000..4d798ad6e --- /dev/null +++ b/bin/json/game_puggsyskill.json @@ -0,0 +1,2700 @@ +[ + { + "id": 100101, + "node_id": 1001, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 0, + "node_direction": 0, + "node_long": 0, + "name": { + "key": "horoscope_horoscope_name_1", + "text": "全体属性生命提升" + }, + "comicon": "Life", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hp", + "n": 0 + } + ] + }, + { + "id": 100102, + "node_id": 1001, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 0, + "node_direction": 0, + "node_long": 0, + "name": { + "key": "horoscope_horoscope_name_2", + "text": "全体属性生命提升" + }, + "comicon": "Life", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hp", + "n": 75 + } + ] + }, + { + "id": 100103, + "node_id": 1001, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 0, + "node_direction": 0, + "node_long": 0, + "name": { + "key": "horoscope_horoscope_name_3", + "text": "全体属性生命提升" + }, + "comicon": "Life", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hp", + "n": 150 + } + ] + }, + { + "id": 100104, + "node_id": 1001, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 0, + "node_direction": 0, + "node_long": 0, + "name": { + "key": "horoscope_horoscope_name_4", + "text": "全体属性生命提升" + }, + "comicon": "Life", + "lv": 3, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hp", + "n": 225 + } + ] + }, + { + "id": 100105, + "node_id": 1001, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 0, + "node_direction": 0, + "node_long": 0, + "name": { + "key": "horoscope_horoscope_name_5", + "text": "全体属性生命提升" + }, + "comicon": "Life", + "lv": 4, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hp", + "n": 300 + } + ] + }, + { + "id": 100201, + "node_id": 1002, + "front": [ + 100105 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_6", + "text": "热情之火属性攻击提升" + }, + "comicon": "Attack", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "atk", + "n": 0 + } + ] + }, + { + "id": 100202, + "node_id": 1002, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_7", + "text": "热情之火属性攻击提升" + }, + "comicon": "Attack", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "atk", + "n": 20 + } + ] + }, + { + "id": 100203, + "node_id": 1002, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_8", + "text": "热情之火属性攻击提升" + }, + "comicon": "Attack", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "atk", + "n": 40 + } + ] + }, + { + "id": 100204, + "node_id": 1002, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_9", + "text": "热情之火属性攻击提升" + }, + "comicon": "Attack", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "atk", + "n": 60 + } + ] + }, + { + "id": 100301, + "node_id": 1003, + "front": [ + 100204 + ], + "node_type": 1, + "pre_node": 1002, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_10", + "text": "热情之火属性防御提升" + }, + "comicon": "Defense", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "def", + "n": 0 + } + ] + }, + { + "id": 100302, + "node_id": 1003, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1002, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_11", + "text": "热情之火属性防御提升" + }, + "comicon": "Defense", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "def", + "n": 15 + } + ] + }, + { + "id": 100303, + "node_id": 1003, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1002, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_12", + "text": "热情之火属性防御提升" + }, + "comicon": "Defense", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "def", + "n": 30 + } + ] + }, + { + "id": 100304, + "node_id": 1003, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1002, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_13", + "text": "热情之火属性防御提升" + }, + "comicon": "Defense", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "def", + "n": 45 + } + ] + }, + { + "id": 100401, + "node_id": 1004, + "front": [ + 100304 + ], + "node_type": 1, + "pre_node": 1003, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_14", + "text": "热情之火属性生命提升" + }, + "comicon": "Life", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "hp", + "n": 0 + } + ] + }, + { + "id": 100402, + "node_id": 1004, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1003, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_15", + "text": "热情之火属性生命提升" + }, + "comicon": "Life", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "hp", + "n": 200 + } + ] + }, + { + "id": 100403, + "node_id": 1004, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1003, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_16", + "text": "热情之火属性生命提升" + }, + "comicon": "Life", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "hp", + "n": 400 + } + ] + }, + { + "id": 100404, + "node_id": 1004, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1003, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_17", + "text": "热情之火属性生命提升" + }, + "comicon": "Life", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 1, + "upgrade": [ + { + "a": "hp", + "n": 600 + } + ] + }, + { + "id": 100501, + "node_id": 1005, + "front": [ + 100404 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_18", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 0 + } + ] + }, + { + "id": 100502, + "node_id": 1005, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_19", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 20 + } + ] + }, + { + "id": 100503, + "node_id": 1005, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_20", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 40 + } + ] + }, + { + "id": 100601, + "node_id": 1006, + "front": [ + 100404 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_21", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 0 + } + ] + }, + { + "id": 100602, + "node_id": 1006, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_22", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 20 + } + ] + }, + { + "id": 100603, + "node_id": 1006, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_23", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 40 + } + ] + }, + { + "id": 100701, + "node_id": 1007, + "front": [ + 100404 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_24", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 0 + } + ] + }, + { + "id": 100702, + "node_id": 1007, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_25", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 20 + } + ] + }, + { + "id": 100703, + "node_id": 1007, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1004, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_26", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 40 + } + ] + }, + { + "id": 100801, + "node_id": 1008, + "front": [ + 100104 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_27", + "text": "感观之林属性攻击提升" + }, + "comicon": "Attack", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "atk", + "n": 0 + } + ] + }, + { + "id": 100802, + "node_id": 1008, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_28", + "text": "感观之林属性攻击提升" + }, + "comicon": "Attack", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "atk", + "n": 20 + } + ] + }, + { + "id": 100803, + "node_id": 1008, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_29", + "text": "感观之林属性攻击提升" + }, + "comicon": "Attack", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "atk", + "n": 40 + } + ] + }, + { + "id": 100804, + "node_id": 1008, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_30", + "text": "感观之林属性攻击提升" + }, + "comicon": "Attack", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "atk", + "n": 60 + } + ] + }, + { + "id": 100901, + "node_id": 1009, + "front": [ + 100804 + ], + "node_type": 1, + "pre_node": 1008, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_31", + "text": "感观之林属性防御提升" + }, + "comicon": "Defense", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "def", + "n": 0 + } + ] + }, + { + "id": 100902, + "node_id": 1009, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1008, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_32", + "text": "感观之林属性防御提升" + }, + "comicon": "Defense", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "def", + "n": 15 + } + ] + }, + { + "id": 100903, + "node_id": 1009, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1008, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_33", + "text": "感观之林属性防御提升" + }, + "comicon": "Defense", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "def", + "n": 30 + } + ] + }, + { + "id": 100904, + "node_id": 1009, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1008, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_34", + "text": "感观之林属性防御提升" + }, + "comicon": "Defense", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "def", + "n": 45 + } + ] + }, + { + "id": 101001, + "node_id": 1010, + "front": [ + 100904 + ], + "node_type": 1, + "pre_node": 1009, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_35", + "text": "感观之林属性生命提升" + }, + "comicon": "Life", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "hp", + "n": 0 + } + ] + }, + { + "id": 101002, + "node_id": 1010, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1009, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_36", + "text": "感观之林属性生命提升" + }, + "comicon": "Life", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "hp", + "n": 200 + } + ] + }, + { + "id": 101003, + "node_id": 1010, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1009, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_37", + "text": "感观之林属性生命提升" + }, + "comicon": "Life", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "hp", + "n": 400 + } + ] + }, + { + "id": 101004, + "node_id": 1010, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1009, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_38", + "text": "感观之林属性生命提升" + }, + "comicon": "Life", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 2, + "upgrade": [ + { + "a": "hp", + "n": 600 + } + ] + }, + { + "id": 101101, + "node_id": 1011, + "front": [ + 101004 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_39", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 0 + } + ] + }, + { + "id": 101102, + "node_id": 1011, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_40", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 20 + } + ] + }, + { + "id": 101103, + "node_id": 1011, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_41", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 40 + } + ] + }, + { + "id": 101201, + "node_id": 1012, + "front": [ + 101004 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_42", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 0 + } + ] + }, + { + "id": 101202, + "node_id": 1012, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_43", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 20 + } + ] + }, + { + "id": 101203, + "node_id": 1012, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_44", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 40 + } + ] + }, + { + "id": 101301, + "node_id": 1013, + "front": [ + 101004 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_45", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 0 + } + ] + }, + { + "id": 101302, + "node_id": 1013, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_46", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 20 + } + ] + }, + { + "id": 101303, + "node_id": 1013, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1010, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_47", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 40 + } + ] + }, + { + "id": 101401, + "node_id": 1014, + "front": [ + 100104 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_48", + "text": "包容之水属性攻击提升" + }, + "comicon": "Attack", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "atk", + "n": 0 + } + ] + }, + { + "id": 101402, + "node_id": 1014, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_49", + "text": "包容之水属性攻击提升" + }, + "comicon": "Attack", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "atk", + "n": 20 + } + ] + }, + { + "id": 101403, + "node_id": 1014, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_50", + "text": "包容之水属性攻击提升" + }, + "comicon": "Attack", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "atk", + "n": 40 + } + ] + }, + { + "id": 101404, + "node_id": 1014, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_51", + "text": "包容之水属性攻击提升" + }, + "comicon": "Attack", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "atk", + "n": 60 + } + ] + }, + { + "id": 101501, + "node_id": 1015, + "front": [ + 101404 + ], + "node_type": 1, + "pre_node": 1014, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_52", + "text": "包容之水属性防御提升" + }, + "comicon": "Defense", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "def", + "n": 0 + } + ] + }, + { + "id": 101502, + "node_id": 1015, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1014, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_53", + "text": "包容之水属性防御提升" + }, + "comicon": "Defense", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "def", + "n": 15 + } + ] + }, + { + "id": 101503, + "node_id": 1015, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1014, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_54", + "text": "包容之水属性防御提升" + }, + "comicon": "Defense", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "def", + "n": 30 + } + ] + }, + { + "id": 101504, + "node_id": 1015, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1014, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_55", + "text": "包容之水属性防御提升" + }, + "comicon": "Defense", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "def", + "n": 45 + } + ] + }, + { + "id": 101601, + "node_id": 1016, + "front": [ + 101504 + ], + "node_type": 1, + "pre_node": 1015, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_56", + "text": "包容之水属性生命提升" + }, + "comicon": "Life", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "hp", + "n": 0 + } + ] + }, + { + "id": 101602, + "node_id": 1016, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1015, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_57", + "text": "包容之水属性生命提升" + }, + "comicon": "Life", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "hp", + "n": 200 + } + ] + }, + { + "id": 101603, + "node_id": 1016, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1015, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_58", + "text": "包容之水属性生命提升" + }, + "comicon": "Life", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "hp", + "n": 400 + } + ] + }, + { + "id": 101604, + "node_id": 1016, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1015, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_59", + "text": "包容之水属性生命提升" + }, + "comicon": "Life", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 3, + "upgrade": [ + { + "a": "hp", + "n": 600 + } + ] + }, + { + "id": 101701, + "node_id": 1017, + "front": [ + 101604 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_60", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 0 + } + ] + }, + { + "id": 101702, + "node_id": 1017, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_61", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 20 + } + ] + }, + { + "id": 101703, + "node_id": 1017, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_62", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 40 + } + ] + }, + { + "id": 101801, + "node_id": 1018, + "front": [ + 101604 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_63", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 0 + } + ] + }, + { + "id": 101802, + "node_id": 1018, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_64", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 20 + } + ] + }, + { + "id": 101803, + "node_id": 1018, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_65", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 40 + } + ] + }, + { + "id": 101901, + "node_id": 1019, + "front": [ + 101604 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_66", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 0 + } + ] + }, + { + "id": 101902, + "node_id": 1019, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_67", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 20 + } + ] + }, + { + "id": 101903, + "node_id": 1019, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1016, + "node_direction": 180, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_68", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 40 + } + ] + }, + { + "id": 102001, + "node_id": 1020, + "front": [ + 100104 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_69", + "text": "荣耀之光属性攻击提升" + }, + "comicon": "Attack", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "atk", + "n": 0 + } + ] + }, + { + "id": 102002, + "node_id": 1020, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_70", + "text": "荣耀之光属性攻击提升" + }, + "comicon": "Attack", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "atk", + "n": 20 + } + ] + }, + { + "id": 102003, + "node_id": 1020, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_71", + "text": "荣耀之光属性攻击提升" + }, + "comicon": "Attack", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "atk", + "n": 40 + } + ] + }, + { + "id": 102004, + "node_id": 1020, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1001, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_72", + "text": "荣耀之光属性攻击提升" + }, + "comicon": "Attack", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "atk", + "n": 60 + } + ] + }, + { + "id": 102101, + "node_id": 1021, + "front": [ + 102004 + ], + "node_type": 1, + "pre_node": 1020, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_73", + "text": "荣耀之光属性防御提升" + }, + "comicon": "Defense", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "def", + "n": 0 + } + ] + }, + { + "id": 102102, + "node_id": 1021, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1020, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_74", + "text": "荣耀之光属性防御提升" + }, + "comicon": "Defense", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "def", + "n": 15 + } + ] + }, + { + "id": 102103, + "node_id": 1021, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1020, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_75", + "text": "荣耀之光属性防御提升" + }, + "comicon": "Defense", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "def", + "n": 30 + } + ] + }, + { + "id": 102104, + "node_id": 1021, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1020, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_76", + "text": "荣耀之光属性防御提升" + }, + "comicon": "Defense", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "def", + "n": 45 + } + ] + }, + { + "id": 102201, + "node_id": 1022, + "front": [ + 102104 + ], + "node_type": 1, + "pre_node": 1021, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_77", + "text": "荣耀之光属性生命提升" + }, + "comicon": "Life", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "hp", + "n": 0 + } + ] + }, + { + "id": 102202, + "node_id": 1022, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1021, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_78", + "text": "荣耀之光属性生命提升" + }, + "comicon": "Life", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "hp", + "n": 200 + } + ] + }, + { + "id": 102203, + "node_id": 1022, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1021, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_79", + "text": "荣耀之光属性生命提升" + }, + "comicon": "Life", + "lv": 2, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "hp", + "n": 400 + } + ] + }, + { + "id": 102204, + "node_id": 1022, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1021, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_80", + "text": "荣耀之光属性生命提升" + }, + "comicon": "Life", + "lv": 3, + "cost_item": [], + "AddGroup": 2, + "AddClassify": 4, + "upgrade": [ + { + "a": "hp", + "n": 600 + } + ] + }, + { + "id": 102301, + "node_id": 1023, + "front": [ + 102204 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_81", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 0 + } + ] + }, + { + "id": 102302, + "node_id": 1023, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_82", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 20 + } + ] + }, + { + "id": 102303, + "node_id": 1023, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 0, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_83", + "text": "全体属性攻击百分比提升" + }, + "comicon": "js_icon_sx5", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "atkpro", + "n": 40 + } + ] + }, + { + "id": 102401, + "node_id": 1024, + "front": [ + 102204 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_84", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 0 + } + ] + }, + { + "id": 102402, + "node_id": 1024, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_85", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 20 + } + ] + }, + { + "id": 102403, + "node_id": 1024, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 90, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_86", + "text": "全体属性防御百分比提升" + }, + "comicon": "js_icon_sx9", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "defpro", + "n": 40 + } + ] + }, + { + "id": 102501, + "node_id": 1025, + "front": [ + 102204 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_87", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 0, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 0 + } + ] + }, + { + "id": 102502, + "node_id": 1025, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_88", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 1, + "cost_item": [ + { + "a": "attr", + "t": "starcoin", + "n": 1 + } + ], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 20 + } + ] + }, + { + "id": 102503, + "node_id": 1025, + "front": [ + 0 + ], + "node_type": 1, + "pre_node": 1022, + "node_direction": 270, + "node_long": 120, + "name": { + "key": "horoscope_horoscope_name_89", + "text": "全体属性生命百分比提升" + }, + "comicon": "js_icon_sx10", + "lv": 2, + "cost_item": [], + "AddGroup": 1, + "AddClassify": 0, + "upgrade": [ + { + "a": "hppro", + "n": 40 + } + ] + } +] \ No newline at end of file diff --git a/modules/island/api_battle.go b/modules/island/api_battle.go index 8df5ac3e6..9f0aeb818 100644 --- a/modules/island/api_battle.go +++ b/modules/island/api_battle.go @@ -26,15 +26,15 @@ func (this *apiComp) BattleCheck(session comm.IUserSession, req *pb.IsLandBattle // /获取系统公告 func (this *apiComp) Battle(session comm.IUserSession, req *pb.IsLandBattleReq) (errdata *pb.ErrorData) { var ( - conf *cfg.GameHeroupstoryChapterData - bconf *cfg.GameHeroupstoryBattleData + conf *cfg.GamePuggsyEventData + bconf *cfg.GamePuggsyFightData record *pb.DBBattleRecord err error ) if errdata = this.BattleCheck(session, req); errdata != nil { return } - if conf, err = this.module.configure.getGameHeroupstoryChapter(req.Level); err != nil { + if conf, err = this.module.configure.getGamePuggsyEventData(req.Level); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), @@ -42,7 +42,7 @@ func (this *apiComp) Battle(session comm.IUserSession, req *pb.IsLandBattleReq) } return } - if bconf, err = this.module.configure.getGameHeroupstoryBattle(conf.Battle); err != nil { + if bconf, err = this.module.configure.getGamePuggsyFightData(conf.Value); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), @@ -54,7 +54,7 @@ func (this *apiComp) Battle(session comm.IUserSession, req *pb.IsLandBattleReq) Rulesid: bconf.BattleReadyID, Ptype: pb.PlayType_rtask, Format: req.Battle, - Mformat: bconf.FormatList, + Mformat: bconf.Boss, }); err != nil { return } diff --git a/modules/island/api_complete.go b/modules/island/api_complete.go index 7ab386d0a..a5c5b1d52 100644 --- a/modules/island/api_complete.go +++ b/modules/island/api_complete.go @@ -4,7 +4,7 @@ import ( "fmt" "go_dreamfactory/comm" "go_dreamfactory/pb" - "go_dreamfactory/sys/configure" + cfg "go_dreamfactory/sys/configure/structs" ) // 参数校验 @@ -16,19 +16,19 @@ func (this *apiComp) CompleteCheck(session comm.IUserSession, req *pb.IsLandComp // /获取自己的排行榜信息 func (this *apiComp) Complete(session comm.IUserSession, req *pb.IsLandCompleteReq) (errdata *pb.ErrorData) { var ( - info *pb.DBIsland - item *pb.DBIslandItem - award []*pb.UserAtno - ok bool - iswin bool - isfish bool - err error + info *pb.DBIsland + conf *cfg.GamePuggsyEventData + sconf *cfg.GamePuggsyScoreData + item *pb.DBIslandItem + award []*pb.UserAtno + ok bool + err error ) if errdata = this.CompleteCheck(session, req); errdata != nil { return } - if conf, err = this.module.configure.getGameHeroupstoryChapter(req.Level); err != nil { + if conf, err = this.module.configure.getGamePuggsyEventData(req.Level); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Title: pb.ErrorCode_DBError.ToString(), @@ -46,110 +46,50 @@ func (this *apiComp) Complete(session comm.IUserSession, req *pb.IsLandCompleteR return } - if item, ok = info.Item[conf.Hero]; !ok { + if item, ok = info.Islands[conf.NodeId]; !ok { + item = &pb.DBIslandItem{ + Id: conf.NodeId, + Level: make(map[int32]int32), + } + info.Islands[conf.NodeId] = item + return + } + + if _, ok = item.Level[req.Level]; ok { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ReqParameterError, Title: pb.ErrorCode_ReqParameterError.ToString(), - Message: fmt.Sprintf("no activation hero:%d", conf.Hero), - } - return - } - //前置判断 - if conf.Onlevel != 0 && item.Level[conf.Onlevel] == 0 { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - Message: fmt.Sprintf("%d onlevel no Complete", req.Level), + Message: fmt.Sprintf("level:%d done!", req.Level), } return } - //前置判断 - if len(conf.Onlevelstory) == 2 && item.Level[conf.Onlevelstory[0]] == conf.Onlevelstory[1] { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - Message: fmt.Sprintf("%d onlevel no Complete", req.Level), - } - return - } - - if conf.Leveltype != 1 && item.Level[req.Level] != 0 { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - Message: fmt.Sprintf("%d received", req.Level), - } - return - } - - if item.Level[req.Level] != 0 { - isfish = true - } - - if chapterconf, err = this.module.configure.getGameHeroupstoryChaptertxt(conf.Chapter); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ConfigNoFound, - Title: pb.ErrorCode_ConfigNoFound.ToString(), - Message: err.Error(), - } - return - } - - if conf.Leveltype == 1 { //剧情关卡 - item.Level[req.Level] = req.Story - } else if conf.Leveltype == 2 { //战斗管卡 - if errdata, iswin = this.module.battle.CheckBattleReport(session, req.Report); errdata != nil { + if conf.Type == 2 { //战斗管卡 + if errdata, _ = this.module.battle.CheckBattleReport(session, req.Report); errdata != nil { return } - if !iswin { + if sconf, err = this.module.configure.getGamePuggsyScoreData(req.Report.Harm); err != nil { errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - Message: "battle no win!", + Code: pb.ErrorCode_ConfigNoFound, + Title: pb.ErrorCode_ConfigNoFound.ToString(), + Message: err.Error(), } return } item.Level[req.Level] = 1 - } else if conf.Leveltype == 4 { - item.Level[req.Level] = 1 - item.Chapter[conf.Chapter] = configure.Now().Unix() - } else if conf.Leveltype == 5 { - if req.Report != nil { - if errdata, iswin = this.module.battle.CheckBattleReport(session, req.Report); errdata != nil { - return - } - if !iswin { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - Message: "battle no win!", - } - return - } + if errdata, award = this.module.DispenseAtno(session, sconf.Reward, true); errdata != nil { + return } - item.Level[req.Level] = 1 } else { item.Level[req.Level] = 1 - } - - if !isfish { - if errdata = this.module.DispenseRes(session, conf.Reward, true); errdata != nil { + if errdata, award = this.module.DispenseAtno(session, conf.Reward, true); errdata != nil { return } - award = make([]*pb.UserAssets, 0) - for _, v := range conf.Reward { - award = append(award, &pb.UserAssets{ - A: v.A, - T: v.T, - N: v.N, - }) - } } this.module.model.Change(session.GetUserId(), map[string]interface{}{ "islands": info.Islands, }) - session.SendMsg(string(this.module.GetType()), "complete", &pb.StorylineCompleteResp{Level: req.Level, Story: req.Story, Award: award}) + session.SendMsg(string(this.module.GetType()), "complete", &pb.IsLandCompleteResp{Level: req.Level, Award: award}) return } diff --git a/modules/island/configure.go b/modules/island/configure.go index fc6bfc042..d5914c632 100644 --- a/modules/island/configure.go +++ b/modules/island/configure.go @@ -2,6 +2,7 @@ package island import ( "fmt" + "go_dreamfactory/comm" "go_dreamfactory/modules" cfg "go_dreamfactory/sys/configure/structs" @@ -9,11 +10,10 @@ import ( ) const ( - game_item = "game_item.json" - game_potions = "game_potions.json" - - // game_propsgroup = "game_propsgroup.json" - // game_propsgrouplist = "game_propsgrouplist.json" + game_puggsyevent = "game_puggsyevent.json" + game_puggsyskill = "game_puggsyskill.json" + game_puggsyfight = "game_puggsyfight.json" + game_puggsyscore = "game_puggsyscore.json" ) // /背包配置管理组件 @@ -26,22 +26,24 @@ type ConfigureComp struct { func (this *ConfigureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { this.MCompConfigure.Init(service, module, comp, options) this.module = module.(*IsLand) - err = this.LoadConfigure(game_item, cfg.NewGameItem) - err = this.LoadConfigure(game_potions, cfg.NewGamePotions) + err = this.LoadConfigure(game_puggsyevent, cfg.NewGamePuggsyEvent) + err = this.LoadConfigure(game_puggsyskill, cfg.NewGamePuggsySkill) + err = this.LoadConfigure(game_puggsyfight, cfg.NewGamePuggsyFight) + err = this.LoadConfigure(game_puggsyscore, cfg.NewGamePuggsyScore) return } -// 读取物品配置 -func (this *ConfigureComp) GetMaterialConfigure(id int32) (configure *cfg.GamePotionsData, err error) { +//关卡 +func (this *ConfigureComp) getGamePuggsyEventData(id int32) (configure *cfg.GamePuggsyEventData, err error) { var ( v interface{} ok bool ) - if v, err = this.GetConfigure(game_potions); err != nil { + if v, err = this.GetConfigure(game_puggsyevent); err != nil { this.module.Errorf("err:%v", err) return } else { - if configure, ok = v.(*cfg.GamePotions).GetDataMap()[id]; !ok { + if configure, ok = v.(*cfg.GamePuggsyEvent).GetDataMap()[id]; !ok { err = fmt.Errorf("no found Material:%d configure", id) this.module.Errorf("err:%v", err) return @@ -49,3 +51,62 @@ func (this *ConfigureComp) GetMaterialConfigure(id int32) (configure *cfg.GamePo } return } + +//战斗表 +func (this *ConfigureComp) getGamePuggsyFightData(id int32) (configure *cfg.GamePuggsyFightData, err error) { + var ( + v interface{} + ok bool + ) + if v, err = this.GetConfigure(game_puggsyfight); err != nil { + this.module.Errorf("err:%v", err) + return + } else { + if configure, ok = v.(*cfg.GamePuggsyFight).GetDataMap()[id]; !ok { + err = fmt.Errorf("no found Material:%d configure", id) + this.module.Errorf("err:%v", err) + return + } + } + return +} + +//技能节点 +func (this *ConfigureComp) getGamePuggsySkillData(id int32) (configure *cfg.GamePuggsySkillData, err error) { + var ( + v interface{} + ok bool + ) + if v, err = this.GetConfigure(game_puggsyskill); err != nil { + this.module.Errorf("err:%v", err) + return + } else { + if configure, ok = v.(*cfg.GamePuggsySkill).GetDataMap()[id]; !ok { + err = fmt.Errorf("no found Material:%d configure", id) + this.module.Errorf("err:%v", err) + return + } + } + return +} + +// 获取伤害对应的评分组 +func (this *ConfigureComp) getGamePuggsyScoreData(harm int32) (results *cfg.GamePuggsyScoreData, err error) { + var ( + v interface{} + ) + + if v, err = this.GetConfigure(game_puggsyscore); err != nil { + return + } else { + for _, v := range v.(*cfg.GamePuggsyScore).GetDataList() { + if harm >= v.RankLow && (harm <= v.RankUp || v.RankUp == -1) { + results = v + return + } + } + err = comm.NewNotFoundConfErr(string(this.module.GetType()), game_puggsyscore, fmt.Sprintf(" harm%d", harm)) + this.module.Errorf("err:%v", err) + } + return +} diff --git a/sys/configure/structs/Game.PuggsyEvent.go b/sys/configure/structs/Game.PuggsyEvent.go new file mode 100644 index 000000000..1acad76f3 --- /dev/null +++ b/sys/configure/structs/Game.PuggsyEvent.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 GamePuggsyEvent struct { + _dataMap map[int32]*GamePuggsyEventData + _dataList []*GamePuggsyEventData +} + +func NewGamePuggsyEvent(_buf []map[string]interface{}) (*GamePuggsyEvent, error) { + _dataList := make([]*GamePuggsyEventData, 0, len(_buf)) + dataMap := make(map[int32]*GamePuggsyEventData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGamePuggsyEventData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.Event] = _v + } + } + return &GamePuggsyEvent{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GamePuggsyEvent) GetDataMap() map[int32]*GamePuggsyEventData { + return table._dataMap +} + +func (table *GamePuggsyEvent) GetDataList() []*GamePuggsyEventData { + return table._dataList +} + +func (table *GamePuggsyEvent) Get(key int32) *GamePuggsyEventData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.PuggsyEventData.go b/sys/configure/structs/Game.PuggsyEventData.go new file mode 100644 index 000000000..25f609671 --- /dev/null +++ b/sys/configure/structs/Game.PuggsyEventData.go @@ -0,0 +1,56 @@ +//------------------------------------------------------------------------------ +// +// 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 GamePuggsyEventData struct { + Event int32 + NodeId int32 + Type int32 + Value int32 + Reward []*Gameatn +} + +const TypeId_GamePuggsyEventData = 1772460253 + +func (*GamePuggsyEventData) GetTypeId() int32 { + return 1772460253 +} + +func (_v *GamePuggsyEventData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["event"].(float64); !_ok_ { err = errors.New("event error"); return }; _v.Event = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["node_id"].(float64); !_ok_ { err = errors.New("node_id error"); return }; _v.NodeId = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["value"].(float64); !_ok_ { err = errors.New("value error"); return }; _v.Value = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["reward"].([]interface{}); !_ok_ { err = errors.New("reward error"); return } + + _v.Reward = make([]*Gameatn, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatn + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } } + _v.Reward = append(_v.Reward, _list_v_) + } + } + + return +} + +func DeserializeGamePuggsyEventData(_buf map[string]interface{}) (*GamePuggsyEventData, error) { + v := &GamePuggsyEventData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.PuggsyFight.go b/sys/configure/structs/Game.PuggsyFight.go new file mode 100644 index 000000000..937ec9508 --- /dev/null +++ b/sys/configure/structs/Game.PuggsyFight.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 GamePuggsyFight struct { + _dataMap map[int32]*GamePuggsyFightData + _dataList []*GamePuggsyFightData +} + +func NewGamePuggsyFight(_buf []map[string]interface{}) (*GamePuggsyFight, error) { + _dataList := make([]*GamePuggsyFightData, 0, len(_buf)) + dataMap := make(map[int32]*GamePuggsyFightData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGamePuggsyFightData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.BossId] = _v + } + } + return &GamePuggsyFight{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GamePuggsyFight) GetDataMap() map[int32]*GamePuggsyFightData { + return table._dataMap +} + +func (table *GamePuggsyFight) GetDataList() []*GamePuggsyFightData { + return table._dataList +} + +func (table *GamePuggsyFight) Get(key int32) *GamePuggsyFightData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.PuggsyFightData.go b/sys/configure/structs/Game.PuggsyFightData.go new file mode 100644 index 000000000..8a136e3f1 --- /dev/null +++ b/sys/configure/structs/Game.PuggsyFightData.go @@ -0,0 +1,73 @@ +//------------------------------------------------------------------------------ +// +// 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 GamePuggsyFightData struct { + BossId int32 + BossName string + BossText string + BattleReadyID int32 + HeroId string + Skill []int32 + Boss []int32 +} + +const TypeId_GamePuggsyFightData = 386540371 + +func (*GamePuggsyFightData) GetTypeId() int32 { + return 386540371 +} + +func (_v *GamePuggsyFightData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["boss_id"].(float64); !_ok_ { err = errors.New("boss_id error"); return }; _v.BossId = int32(_tempNum_) } + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["boss_name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BossName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BossName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["boss_text"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BossText error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BossText, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BattleReadyID"].(float64); !_ok_ { err = errors.New("BattleReadyID error"); return }; _v.BattleReadyID = int32(_tempNum_) } + { var _ok_ bool; if _v.HeroId, _ok_ = _buf["heroId"].(string); !_ok_ { err = errors.New("heroId error"); return } } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["skill"].([]interface{}); !_ok_ { err = errors.New("skill error"); return } + + _v.Skill = 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.Skill = append(_v.Skill, _list_v_) + } + } + + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["boss"].([]interface{}); !_ok_ { err = errors.New("boss error"); return } + + _v.Boss = 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.Boss = append(_v.Boss, _list_v_) + } + } + + return +} + +func DeserializeGamePuggsyFightData(_buf map[string]interface{}) (*GamePuggsyFightData, error) { + v := &GamePuggsyFightData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.PuggsyIsLand.go b/sys/configure/structs/Game.PuggsyIsLand.go new file mode 100644 index 000000000..82f74c7a6 --- /dev/null +++ b/sys/configure/structs/Game.PuggsyIsLand.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 GamePuggsyIsLand struct { + _dataMap map[int32]*GamePuggsyIsLandData + _dataList []*GamePuggsyIsLandData +} + +func NewGamePuggsyIsLand(_buf []map[string]interface{}) (*GamePuggsyIsLand, error) { + _dataList := make([]*GamePuggsyIsLandData, 0, len(_buf)) + dataMap := make(map[int32]*GamePuggsyIsLandData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGamePuggsyIsLandData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.NodeId] = _v + } + } + return &GamePuggsyIsLand{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GamePuggsyIsLand) GetDataMap() map[int32]*GamePuggsyIsLandData { + return table._dataMap +} + +func (table *GamePuggsyIsLand) GetDataList() []*GamePuggsyIsLandData { + return table._dataList +} + +func (table *GamePuggsyIsLand) Get(key int32) *GamePuggsyIsLandData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.PuggsyIsLandData.go b/sys/configure/structs/Game.PuggsyIsLandData.go new file mode 100644 index 000000000..498a47672 --- /dev/null +++ b/sys/configure/structs/Game.PuggsyIsLandData.go @@ -0,0 +1,56 @@ +//------------------------------------------------------------------------------ +// +// 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 GamePuggsyIsLandData struct { + NodeId int32 + PuggsyName string + Time []int32 + Unlock string + Introduce string +} + +const TypeId_GamePuggsyIsLandData = 36699942 + +func (*GamePuggsyIsLandData) GetTypeId() int32 { + return 36699942 +} + +func (_v *GamePuggsyIsLandData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["node_id"].(float64); !_ok_ { err = errors.New("node_id error"); return }; _v.NodeId = int32(_tempNum_) } + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["puggsy_name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.PuggsyName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.PuggsyName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["time"].([]interface{}); !_ok_ { err = errors.New("time error"); return } + + _v.Time = 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.Time = append(_v.Time, _list_v_) + } + } + + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["unlock"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Unlock error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Unlock, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["introduce"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Introduce error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Introduce, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } + return +} + +func DeserializeGamePuggsyIsLandData(_buf map[string]interface{}) (*GamePuggsyIsLandData, error) { + v := &GamePuggsyIsLandData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.PuggsyScore.go b/sys/configure/structs/Game.PuggsyScore.go new file mode 100644 index 000000000..4af45642d --- /dev/null +++ b/sys/configure/structs/Game.PuggsyScore.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 GamePuggsyScore struct { + _dataMap map[int32]*GamePuggsyScoreData + _dataList []*GamePuggsyScoreData +} + +func NewGamePuggsyScore(_buf []map[string]interface{}) (*GamePuggsyScore, error) { + _dataList := make([]*GamePuggsyScoreData, 0, len(_buf)) + dataMap := make(map[int32]*GamePuggsyScoreData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGamePuggsyScoreData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.Id] = _v + } + } + return &GamePuggsyScore{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GamePuggsyScore) GetDataMap() map[int32]*GamePuggsyScoreData { + return table._dataMap +} + +func (table *GamePuggsyScore) GetDataList() []*GamePuggsyScoreData { + return table._dataList +} + +func (table *GamePuggsyScore) Get(key int32) *GamePuggsyScoreData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.PuggsyScoreData.go b/sys/configure/structs/Game.PuggsyScoreData.go new file mode 100644 index 000000000..e2cdffb0c --- /dev/null +++ b/sys/configure/structs/Game.PuggsyScoreData.go @@ -0,0 +1,56 @@ +//------------------------------------------------------------------------------ +// +// 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 GamePuggsyScoreData struct { + Id int32 + BossId int32 + RankLow int32 + RankUp int32 + Reward []*Gameatn +} + +const TypeId_GamePuggsyScoreData = -424957739 + +func (*GamePuggsyScoreData) GetTypeId() int32 { + return -424957739 +} + +func (_v *GamePuggsyScoreData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["boss_id"].(float64); !_ok_ { err = errors.New("boss_id error"); return }; _v.BossId = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["rank_low"].(float64); !_ok_ { err = errors.New("rank_low error"); return }; _v.RankLow = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["rank_up"].(float64); !_ok_ { err = errors.New("rank_up error"); return }; _v.RankUp = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["reward"].([]interface{}); !_ok_ { err = errors.New("reward error"); return } + + _v.Reward = make([]*Gameatn, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatn + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } } + _v.Reward = append(_v.Reward, _list_v_) + } + } + + return +} + +func DeserializeGamePuggsyScoreData(_buf map[string]interface{}) (*GamePuggsyScoreData, error) { + v := &GamePuggsyScoreData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.PuggsySkill.go b/sys/configure/structs/Game.PuggsySkill.go new file mode 100644 index 000000000..c6bc24567 --- /dev/null +++ b/sys/configure/structs/Game.PuggsySkill.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 GamePuggsySkill struct { + _dataMap map[int32]*GamePuggsySkillData + _dataList []*GamePuggsySkillData +} + +func NewGamePuggsySkill(_buf []map[string]interface{}) (*GamePuggsySkill, error) { + _dataList := make([]*GamePuggsySkillData, 0, len(_buf)) + dataMap := make(map[int32]*GamePuggsySkillData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGamePuggsySkillData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.Id] = _v + } + } + return &GamePuggsySkill{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GamePuggsySkill) GetDataMap() map[int32]*GamePuggsySkillData { + return table._dataMap +} + +func (table *GamePuggsySkill) GetDataList() []*GamePuggsySkillData { + return table._dataList +} + +func (table *GamePuggsySkill) Get(key int32) *GamePuggsySkillData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.PuggsySkillData.go b/sys/configure/structs/Game.PuggsySkillData.go new file mode 100644 index 000000000..c953b4172 --- /dev/null +++ b/sys/configure/structs/Game.PuggsySkillData.go @@ -0,0 +1,100 @@ +//------------------------------------------------------------------------------ +// +// 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 GamePuggsySkillData struct { + Id int32 + NodeId int32 + Front []int32 + NodeType int32 + PreNode int32 + NodeDirection int32 + NodeLong int32 + Name string + Comicon string + Lv int32 + CostItem []*Gameatn + AddGroup int32 + AddClassify int32 + Upgrade []*Gameatr +} + +const TypeId_GamePuggsySkillData = -562741996 + +func (*GamePuggsySkillData) GetTypeId() int32 { + return -562741996 +} + +func (_v *GamePuggsySkillData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["node_id"].(float64); !_ok_ { err = errors.New("node_id error"); return }; _v.NodeId = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["front"].([]interface{}); !_ok_ { err = errors.New("front error"); return } + + _v.Front = 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.Front = append(_v.Front, _list_v_) + } + } + + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["node_type"].(float64); !_ok_ { err = errors.New("node_type error"); return }; _v.NodeType = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["pre_node"].(float64); !_ok_ { err = errors.New("pre_node error"); return }; _v.PreNode = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["node_direction"].(float64); !_ok_ { err = errors.New("node_direction error"); return }; _v.NodeDirection = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["node_long"].(float64); !_ok_ { err = errors.New("node_long error"); return }; _v.NodeLong = int32(_tempNum_) } + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } + { var _ok_ bool; if _v.Comicon, _ok_ = _buf["comicon"].(string); !_ok_ { err = errors.New("comicon error"); return } } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lv"].(float64); !_ok_ { err = errors.New("lv error"); return }; _v.Lv = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["cost_item"].([]interface{}); !_ok_ { err = errors.New("cost_item error"); return } + + _v.CostItem = 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.CostItem = append(_v.CostItem, _list_v_) + } + } + + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["AddGroup"].(float64); !_ok_ { err = errors.New("AddGroup error"); return }; _v.AddGroup = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["AddClassify"].(float64); !_ok_ { err = errors.New("AddClassify error"); return }; _v.AddClassify = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["upgrade"].([]interface{}); !_ok_ { err = errors.New("upgrade error"); return } + + _v.Upgrade = make([]*Gameatr, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatr + { 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 = DeserializeGameatr(_x_); err != nil { return } } + _v.Upgrade = append(_v.Upgrade, _list_v_) + } + } + + return +} + +func DeserializeGamePuggsySkillData(_buf map[string]interface{}) (*GamePuggsySkillData, error) { + v := &GamePuggsySkillData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Tables.go b/sys/configure/structs/Tables.go index 3189299f9..b2d206427 100644 --- a/sys/configure/structs/Tables.go +++ b/sys/configure/structs/Tables.go @@ -283,6 +283,11 @@ type Tables struct { RepeatAll *GameRepeatAll TDMonster *GameTDMonster TDMonsterAppear *GameTDMonsterAppear + PuggsyIsLand *GamePuggsyIsLand + PuggsyEvent *GamePuggsyEvent + PuggsyFight *GamePuggsyFight + PuggsyScore *GamePuggsyScore + PuggsySkill *GamePuggsySkill } func NewTables(loader JsonLoader) (*Tables, error) { @@ -1922,5 +1927,35 @@ func NewTables(loader JsonLoader) (*Tables, error) { if tables.TDMonsterAppear, err = NewGameTDMonsterAppear(buf) ; err != nil { return nil, err } + if buf, err = loader("game_puggsyisland") ; err != nil { + return nil, err + } + if tables.PuggsyIsLand, err = NewGamePuggsyIsLand(buf) ; err != nil { + return nil, err + } + if buf, err = loader("game_puggsyevent") ; err != nil { + return nil, err + } + if tables.PuggsyEvent, err = NewGamePuggsyEvent(buf) ; err != nil { + return nil, err + } + if buf, err = loader("game_puggsyfight") ; err != nil { + return nil, err + } + if tables.PuggsyFight, err = NewGamePuggsyFight(buf) ; err != nil { + return nil, err + } + if buf, err = loader("game_puggsyscore") ; err != nil { + return nil, err + } + if tables.PuggsyScore, err = NewGamePuggsyScore(buf) ; err != nil { + return nil, err + } + if buf, err = loader("game_puggsyskill") ; err != nil { + return nil, err + } + if tables.PuggsySkill, err = NewGamePuggsySkill(buf) ; err != nil { + return nil, err + } return tables, nil }