diff --git a/bin/json/game_hero.json b/bin/json/game_hero.json index 4c96cbc7b..03f901633 100644 --- a/bin/json/game_hero.json +++ b/bin/json/game_hero.json @@ -58,7 +58,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "13002", @@ -119,7 +133,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "13003", @@ -180,7 +208,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "13004", @@ -241,7 +283,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "13005", @@ -302,7 +358,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "14001", @@ -363,7 +433,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "14002", @@ -424,7 +508,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "14003", @@ -485,7 +583,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "14004", @@ -546,7 +658,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "14005", @@ -607,7 +733,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "14006", @@ -668,7 +808,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "14007", @@ -729,7 +883,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "15001", @@ -790,7 +958,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "15002", @@ -851,7 +1033,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "15003", @@ -912,7 +1108,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "15004", @@ -973,7 +1183,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "23001", @@ -1034,7 +1258,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "23002", @@ -1095,7 +1333,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "23003", @@ -1156,7 +1408,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "23004", @@ -1217,7 +1483,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24001", @@ -1278,7 +1558,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24002", @@ -1339,7 +1633,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24003", @@ -1400,7 +1708,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24004", @@ -1461,7 +1783,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24005", @@ -1522,7 +1858,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24006", @@ -1583,7 +1933,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24007", @@ -1644,7 +2008,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24008", @@ -1705,7 +2083,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "24009", @@ -1766,7 +2158,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "25001", @@ -1827,7 +2233,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "25002", @@ -1888,7 +2308,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "25003", @@ -1949,7 +2383,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "25004", @@ -2010,7 +2458,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "33001", @@ -2071,7 +2533,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "33002", @@ -2132,7 +2608,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "33003", @@ -2193,7 +2683,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "33004", @@ -2254,7 +2758,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "33005", @@ -2315,7 +2833,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "33006", @@ -2376,7 +2908,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34001", @@ -2437,7 +2983,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34002", @@ -2498,7 +3058,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34003", @@ -2559,7 +3133,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34004", @@ -2620,7 +3208,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34005", @@ -2681,7 +3283,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34006", @@ -2742,7 +3358,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34007", @@ -2803,7 +3433,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "34008", @@ -2864,7 +3508,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "35001", @@ -2925,7 +3583,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "35002", @@ -2986,7 +3658,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "35003", @@ -3047,7 +3733,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "35004", @@ -3108,7 +3808,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "35005", @@ -3169,7 +3883,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "35006", @@ -3230,7 +3958,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43001", @@ -3291,7 +4033,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43002", @@ -3352,7 +4108,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43003", @@ -3413,7 +4183,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43004", @@ -3474,7 +4258,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43005", @@ -3535,7 +4333,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43006", @@ -3596,7 +4408,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43007", @@ -3657,7 +4483,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44001", @@ -3718,7 +4558,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44002", @@ -3779,7 +4633,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44003", @@ -3840,7 +4708,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44004", @@ -3901,7 +4783,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44006", @@ -3962,7 +4858,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "45001", @@ -4023,7 +4933,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "45002", @@ -4084,7 +5008,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "45003", @@ -4145,7 +5083,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "45004", @@ -4206,7 +5158,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44005", @@ -4267,7 +5233,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "15005", @@ -4328,7 +5308,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43901", @@ -4389,7 +5383,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43902", @@ -4450,7 +5458,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43903", @@ -4511,7 +5533,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "42911", @@ -4572,7 +5608,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43911", @@ -4633,7 +5683,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44911", @@ -4694,7 +5758,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "43921", @@ -4755,7 +5833,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "44921", @@ -4816,7 +5908,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "45921", @@ -4877,7 +5983,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51001", @@ -4938,7 +6058,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51002", @@ -4999,7 +6133,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51003", @@ -5060,7 +6208,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51004", @@ -5121,7 +6283,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51005", @@ -5182,7 +6358,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51006", @@ -5243,7 +6433,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51007", @@ -5304,7 +6508,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "54005", @@ -5365,7 +6583,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51010", @@ -5426,7 +6658,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51011", @@ -5487,7 +6733,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51012", @@ -5548,7 +6808,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51013", @@ -5609,7 +6883,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "51014", @@ -5670,7 +6958,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "54001", @@ -5731,7 +7033,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "53001", @@ -5792,7 +7108,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "53002", @@ -5853,7 +7183,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "53003", @@ -5914,7 +7258,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "54002", @@ -5975,7 +7333,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "53005", @@ -6036,7 +7408,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "53006", @@ -6097,7 +7483,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "55001", @@ -6158,7 +7558,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "55002", @@ -6219,7 +7633,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "55003", @@ -6280,7 +7708,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "55004", @@ -6341,7 +7783,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "55005", @@ -6402,7 +7858,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "55006", @@ -6463,7 +7933,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "55007", @@ -6524,7 +8008,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "11021", @@ -6585,7 +8083,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "12003", @@ -6648,7 +8160,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "63002", @@ -6709,7 +8235,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "63003", @@ -6770,7 +8310,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "63004", @@ -6831,7 +8385,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "64003", @@ -6892,7 +8460,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "74002", @@ -6953,7 +8535,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "74003", @@ -7014,7 +8610,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "74004", @@ -7075,7 +8685,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "83002", @@ -7136,7 +8760,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "83006", @@ -7197,7 +8835,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "84002", @@ -7258,7 +8910,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "94002", @@ -7319,7 +8985,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "94005", @@ -7380,7 +9060,21 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] }, { "hid": "101004", @@ -7441,6 +9135,20 @@ ], "angle": 0, "deviation": 0, - "show": 1 + "show": 1, + "herofrag": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ], + "heroskillup": [ + { + "a": "item", + "t": "625001", + "n": 1 + } + ] } ] \ No newline at end of file diff --git a/bin/json/game_item.json b/bin/json/game_item.json index 52886d0d3..96fdb73b1 100644 --- a/bin/json/game_item.json +++ b/bin/json/game_item.json @@ -6332,5 +6332,49 @@ "key": "itemtipstxt_10017", "text": "体力药剂不足" } + }, + { + "id": "625001", + "name": { + "key": "itemname_90001", + "text": "阿宝碎片" + }, + "usetype": 3, + "color": 5, + "bagtype": 1, + "index": 99, + "special_type": 0, + "time": 0, + "effects": "effect_ui_wuping_2", + "box_id": 0, + "synthetize_num": 0, + "access": [ + 155 + ], + "use_skip": 155, + "upper_limit": 999, + "uselv": 0, + "isani": 0, + "star": 0, + "race": 0, + "img": "ytx_js_25001", + "ico": "ytx_js_25001", + "intr": { + "key": "itemdesc_625001", + "text": "阿宝天赋点" + }, + "sale": [ + { + "a": "attr", + "t": "gold", + "n": 1000 + } + ], + "synthetize_deplete": [], + "decompose_deplete": [], + "tipstxt": { + "key": "itemtipstxt_625001", + "text": "阿宝的天赋点不足" + } } ] \ No newline at end of file diff --git a/comm/const.go b/comm/const.go index b1bcbfd38..5a9efeef1 100644 --- a/comm/const.go +++ b/comm/const.go @@ -78,7 +78,6 @@ const ( ModuleEnchant core.M_Modules = "enchant" //附魔 ModuleAutoBattle core.M_Modules = "autobattle" //自动战斗 ModuleMline core.M_Modules = "mline" //主线模块 - ModuleRTimePVP core.M_Modules = "rtimepvp" //实时pvp ) //数据表名定义处 @@ -562,6 +561,10 @@ const ( Rtype155 TaskType = 155 //调整助战英雄n次 Rtype156 TaskType = 156 //完成工会任务n次 Rtype157 TaskType = 157 //战斗在xx系统中完成xx事件 + Rtype158 TaskType = 158 //主线第X章关卡总星数达到N星 + Rtype159 TaskType = 159 //主线第X章关卡全部达到三星 + Rtype160 TaskType = 160 //主线总星数达到X星 + Rtype161 TaskType = 161 //在自动战斗过程中完成另一场战斗 ) const ( diff --git a/modules/battle/modelBattle.go b/modules/battle/modelBattle.go index acdea1c33..d424dca15 100644 --- a/modules/battle/modelBattle.go +++ b/modules/battle/modelBattle.go @@ -482,7 +482,9 @@ func (this *modelBattleComp) createMasterRoles(comp, wheel int, fid int32) (capt NormalSkill: hero.NormalSkill, Property: hero.Property, Isboos: v.IsBoss, + Monsterid: v.Monster, } + for i, v := range roles[i].NormalSkill { if i == 0 { v.SkillLv = monst.Skill1 diff --git a/modules/gateway/agent.go b/modules/gateway/agent.go index b0de4c975..22d6ccbf8 100644 --- a/modules/gateway/agent.go +++ b/modules/gateway/agent.go @@ -313,6 +313,9 @@ func (this *Agent) messageDistribution(msg *pb.UserMessage) (err error) { return } } else { //跨集群调用 + if msg.ServicePath != "" { //客户端是否制定目标服务器 /wroker/woker0 + servicePath = msg.ServicePath + } if err = this.gateway.Service().AcrossClusterRpcCall(context.Background(), serviceTag, servicePath, string(comm.Rpc_GatewayRoute), req, reply); err != nil { this.gateway.Error("[UserResponse]", log.Field{Key: "uid", Value: this.uId}, diff --git a/modules/hero/model_hero.go b/modules/hero/model_hero.go index c1508f357..f7b999c1c 100644 --- a/modules/hero/model_hero.go +++ b/modules/hero/model_hero.go @@ -135,7 +135,7 @@ func (this *ModelHero) initHeroOverlying(uid string, heroCfgId string, count int ) hero = this.InitHero(uid, heroCfgId) if hero != nil { - hero.SameCount = count + hero.SameCount = 1 // 新需求 不需要判断叠加 if this.moduleHero.IsCross() { if model, err = this.moduleHero.GetDBModuleByUid(uid, this.TableName, this.Expired); err != nil { this.moduleHero.Errorln(err) @@ -171,35 +171,38 @@ func (this *ModelHero) createHeroOverlying(uid string, heroCfgId string, count i this.moduleHero.Errorf("err:%v", err) } } + for _, obj := range heros { + if obj.HeroID == heroCfgId { // z + return + } + } + for _, h := range heros { + if h.HeroID == heroCfgId && + h.IsOverlying { + h.SameCount += count + data := map[string]interface{}{ + "sameCount": h.SameCount, //叠加数 + } + hero = h - if len(heros) >= 0 { - for _, h := range heros { - if h.HeroID == heroCfgId && - h.IsOverlying { - h.SameCount += count - data := map[string]interface{}{ - "sameCount": h.SameCount, //叠加数 - } - hero = h - - if this.moduleHero.IsCross() { - if model, err := this.moduleHero.GetDBModuleByUid(uid, this.TableName, this.Expired); err != nil { - this.moduleHero.Errorln(err) - } else { - if err := model.ChangeList(uid, h.Id, data); err != nil { - return nil, err - } - } + if this.moduleHero.IsCross() { + if model, err := this.moduleHero.GetDBModuleByUid(uid, this.TableName, this.Expired); err != nil { + this.moduleHero.Errorln(err) } else { - if err := this.ChangeList(uid, h.Id, data); err != nil { + if err := model.ChangeList(uid, h.Id, data); err != nil { return nil, err } } - - return + } else { + if err := this.ChangeList(uid, h.Id, data); err != nil { + return nil, err + } } + + return } } + return this.initHeroOverlying(uid, heroCfgId, count) } @@ -881,3 +884,52 @@ func (this *ModelHero) resetTalentProperty(hero *pb.DBHero) { } } + +// 创建一条英雄信息,如果有这个英雄 则转换成对应的碎片 +func (this *ModelHero) createHero(session comm.IUserSession, heroCfgId string, count int32) (hero *pb.DBHero, bFirst bool, err error) { + heros := make([]*pb.DBHero, 0) + uid := session.GetUserId() + if this.moduleHero.IsCross() { + if dbModel, err := this.moduleHero.GetDBModuleByUid(uid, this.TableName, this.Expired); err != nil { + this.moduleHero.Errorln(err) + + } else { + if err = dbModel.GetList(uid, &heros); err != nil { + this.moduleHero.Errorf("err:%v", err) + } + } + } else { + if err = this.GetList(uid, &heros); err != nil { + this.moduleHero.Errorf("err:%v", err) + } + } + bFirst = true + for _, obj := range heros { + if obj.HeroID == heroCfgId { + hero = obj + bFirst = false + break + } + } + if bFirst { // 没有当前英雄 + count -= 1 + hero, err = this.initHeroOverlying(uid, heroCfgId, 1) + if err != nil { + return + } + } + + // 转碎片处理 + if count > 0 { + heroCfg := this.moduleHero.configure.GetHeroConfig(heroCfgId) + if heroCfg != nil { + res := make([]*cfg.Gameatn, 0) + for i := 0; i < int(count); i++ { + res = append(res, heroCfg.Herofrag...) + } + this.moduleHero.DispenseRes(session, res, true) + } + } + + return +} diff --git a/modules/hero/module.go b/modules/hero/module.go index faf671c6b..3c3d5826b 100644 --- a/modules/hero/module.go +++ b/modules/hero/module.go @@ -76,10 +76,12 @@ func (this *Hero) Start() (err error) { } //创建单个叠加英雄 -func (this *Hero) createRepeatHero(session comm.IUserSession, heroCfgId string, num int32) (hero *pb.DBHero, code pb.ErrorCode) { - var err error - hero, err = this.modelHero.createHeroOverlying(session.GetUserId(), heroCfgId, num) - if err == nil { +func (this *Hero) createRepeatHero(session comm.IUserSession, heroCfgId string, num int32) (hero *pb.DBHero, bFirst bool, code pb.ErrorCode) { + var ( + err error + ) + hero, bFirst, err = this.modelHero.createHero(session, heroCfgId, num) + if err == nil && bFirst { //go func(uid string, heroCfgId string) { // 携程处理 图鉴数据 if db.IsCross() { this.moduleFetter.SendRpcAddHero(session, heroCfgId) @@ -267,47 +269,33 @@ func (this *Hero) CreateRepeatHeros(session comm.IUserSession, heros map[string] var ( changeList []*pb.DBHero firstGet []string + bFirst bool ) for heroCfgId, num := range heros { if num == 0 { // 数量为0 不做处理 continue } - if hero, code = this.createRepeatHero(session, heroCfgId, num); code != pb.ErrorCode_Success { + if hero, bFirst, code = this.createRepeatHero(session, heroCfgId, num); code != pb.ErrorCode_Success { this.Errorf("create hero %s failed", heroCfgId) - return + continue } - if result, err1 := this.ModuleUser.GetUserExpand(session.GetUserId()); err1 == nil { - initUpdate := map[string]interface{}{} - sz := result.GetTujian() - if len(sz) == 0 { - sz = make(map[string]int32, 0) - } - - if _, ok := result.GetTujian()[heroCfgId]; !ok { - heroConf := this.modelHero.moduleHero.configure.GetHeroConfig(heroCfgId) - if heroConf != nil { - if heroConf.Handbook == -1 { - sz[heroCfgId] = 0 - } else { - sz[heroCfgId] = 1 - } - initUpdate["tujian"] = sz - this.ModuleUser.ChangeUserExpand(session.GetUserId(), initUpdate) - firstGet = append(firstGet, heroCfgId) - } - } + if bFirst { + firstGet = append(firstGet, heroCfgId) + changeList = append(changeList, hero) } - changeList = append(changeList, hero) } - if bPush && len(changeList) > 0 { //推送 - session.SendMsg("hero", "change", &pb.HeroChangePush{List: changeList}) - } - // 首次获得英雄 则推送 - if len(firstGet) > 0 { - session.SendMsg("hero", "firstget", &pb.HeroFirstGetPush{ - HeroId: firstGet, - }) + if bPush { //推送 + if len(changeList) > 0 { + session.SendMsg("hero", "change", &pb.HeroChangePush{List: changeList}) + } + + // 首次获得英雄 则推送 + if len(firstGet) > 0 { + session.SendMsg("hero", "firstget", &pb.HeroFirstGetPush{ + HeroId: firstGet, + }) + } } return diff --git a/modules/rtimepvp/api.go b/modules/rtimepvp/api.go deleted file mode 100644 index 2ea30dc96..000000000 --- a/modules/rtimepvp/api.go +++ /dev/null @@ -1,29 +0,0 @@ -package rtimepvp - -import ( - "go_dreamfactory/modules" - - "go_dreamfactory/lego/core" -) - -/* -装备模块 API -*/ -type apiComp struct { - modules.MCompGate - service core.IService - module *RTimePVP -} - -//组件初始化接口 -func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - this.MCompGate.Init(service, module, comp, options) - this.module = module.(*RTimePVP) - this.service = service - return -} - -func (this *apiComp) Start() (err error) { - err = this.MCompGate.Start() - return -} diff --git a/modules/rtimepvp/module.go b/modules/rtimepvp/module.go deleted file mode 100644 index d8decae43..000000000 --- a/modules/rtimepvp/module.go +++ /dev/null @@ -1,28 +0,0 @@ -package rtimepvp - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/lego/base" - "go_dreamfactory/lego/core" - "go_dreamfactory/modules" -) - -/* -模块名:实时PVP -描述:同步战斗模块 -开发:李伟 -*/ -func NewModule() core.IModule { - m := new(RTimePVP) - return m -} - -type RTimePVP struct { - modules.ModuleBase - service base.IRPCXService -} - -//模块名 -func (this *RTimePVP) GetType() core.M_Modules { - return comm.ModuleRTimePVP -} diff --git a/pb/arena_msg.pb.go b/pb/arena_msg.pb.go index 1d8ebd269..274e14864 100644 --- a/pb/arena_msg.pb.go +++ b/pb/arena_msg.pb.go @@ -1292,6 +1292,70 @@ func (x *ArenaPlotRewardResp) GetNpc() map[int32]*DBNpc { return nil } +//实时pvp推送 +type ArenaRTimePvpPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RoomId string `protobuf:"bytes,1,opt,name=RoomId,proto3" json:"RoomId"` + ServicePath string `protobuf:"bytes,2,opt,name=servicePath,proto3" json:"servicePath"` + Info *BattleInfo `protobuf:"bytes,3,opt,name=info,proto3" json:"info"` +} + +func (x *ArenaRTimePvpPush) Reset() { + *x = ArenaRTimePvpPush{} + if protoimpl.UnsafeEnabled { + mi := &file_arena_arena_msg_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ArenaRTimePvpPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ArenaRTimePvpPush) ProtoMessage() {} + +func (x *ArenaRTimePvpPush) ProtoReflect() protoreflect.Message { + mi := &file_arena_arena_msg_proto_msgTypes[24] + 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 ArenaRTimePvpPush.ProtoReflect.Descriptor instead. +func (*ArenaRTimePvpPush) Descriptor() ([]byte, []int) { + return file_arena_arena_msg_proto_rawDescGZIP(), []int{24} +} + +func (x *ArenaRTimePvpPush) GetRoomId() string { + if x != nil { + return x.RoomId + } + return "" +} + +func (x *ArenaRTimePvpPush) GetServicePath() string { + if x != nil { + return x.ServicePath + } + return "" +} + +func (x *ArenaRTimePvpPush) GetInfo() *BattleInfo { + if x != nil { + return x.Info + } + return nil +} + var File_arena_arena_msg_proto protoreflect.FileDescriptor var file_arena_arena_msg_proto_rawDesc = []byte{ @@ -1406,7 +1470,14 @@ var file_arena_arena_msg_proto_rawDesc = []byte{ 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x44, 0x42, 0x4e, 0x70, 0x63, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x01, 0x22, 0x6e, 0x0a, 0x11, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x52, 0x54, 0x69, 0x6d, 0x65, 0x50, + 0x76, 0x70, 0x50, 0x75, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, + 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, + 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, + 0x6f, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } @@ -1422,7 +1493,7 @@ func file_arena_arena_msg_proto_rawDescGZIP() []byte { return file_arena_arena_msg_proto_rawDescData } -var file_arena_arena_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 25) +var file_arena_arena_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 26) var file_arena_arena_msg_proto_goTypes = []interface{}{ (*ArenaInfoReq)(nil), // 0: ArenaInfoReq (*ArenaInfoResp)(nil), // 1: ArenaInfoResp @@ -1448,36 +1519,38 @@ var file_arena_arena_msg_proto_goTypes = []interface{}{ (*ArenaPlotResp)(nil), // 21: ArenaPlotResp (*ArenaPlotRewardReq)(nil), // 22: ArenaPlotRewardReq (*ArenaPlotRewardResp)(nil), // 23: ArenaPlotRewardResp - nil, // 24: ArenaPlotRewardResp.NpcEntry - (*DBArenaUser)(nil), // 25: DBArenaUser - (*ArenaPlayer)(nil), // 26: ArenaPlayer - (*BattleFormation)(nil), // 27: BattleFormation - (ErrorCode)(0), // 28: ErrorCode - (*BattleInfo)(nil), // 29: BattleInfo - (*BattleReport)(nil), // 30: BattleReport - (*DBNpc)(nil), // 31: DBNpc + (*ArenaRTimePvpPush)(nil), // 24: ArenaRTimePvpPush + nil, // 25: ArenaPlotRewardResp.NpcEntry + (*DBArenaUser)(nil), // 26: DBArenaUser + (*ArenaPlayer)(nil), // 27: ArenaPlayer + (*BattleFormation)(nil), // 28: BattleFormation + (ErrorCode)(0), // 29: ErrorCode + (*BattleInfo)(nil), // 30: BattleInfo + (*BattleReport)(nil), // 31: BattleReport + (*DBNpc)(nil), // 32: DBNpc } var file_arena_arena_msg_proto_depIdxs = []int32{ - 25, // 0: ArenaInfoResp.info:type_name -> DBArenaUser - 25, // 1: ArenaOtherInfoResp.info:type_name -> DBArenaUser - 26, // 2: ArenaMatcheResp.players:type_name -> ArenaPlayer - 27, // 3: ArenaChallengeReq.battle:type_name -> BattleFormation - 28, // 4: ArenaChallengeResp.code:type_name -> ErrorCode - 29, // 5: ArenaChallengeResp.info:type_name -> BattleInfo - 30, // 6: ArenaChallengeRewardReq.report:type_name -> BattleReport - 26, // 7: ArenaRankResp.players:type_name -> ArenaPlayer - 25, // 8: ArenaRankResp.info:type_name -> DBArenaUser - 27, // 9: ArenaPlotReq.battle:type_name -> BattleFormation - 28, // 10: ArenaPlotResp.code:type_name -> ErrorCode - 29, // 11: ArenaPlotResp.info:type_name -> BattleInfo - 30, // 12: ArenaPlotRewardReq.report:type_name -> BattleReport - 24, // 13: ArenaPlotRewardResp.npc:type_name -> ArenaPlotRewardResp.NpcEntry - 31, // 14: ArenaPlotRewardResp.NpcEntry.value:type_name -> DBNpc - 15, // [15:15] is the sub-list for method output_type - 15, // [15:15] is the sub-list for method input_type - 15, // [15:15] is the sub-list for extension type_name - 15, // [15:15] is the sub-list for extension extendee - 0, // [0:15] is the sub-list for field type_name + 26, // 0: ArenaInfoResp.info:type_name -> DBArenaUser + 26, // 1: ArenaOtherInfoResp.info:type_name -> DBArenaUser + 27, // 2: ArenaMatcheResp.players:type_name -> ArenaPlayer + 28, // 3: ArenaChallengeReq.battle:type_name -> BattleFormation + 29, // 4: ArenaChallengeResp.code:type_name -> ErrorCode + 30, // 5: ArenaChallengeResp.info:type_name -> BattleInfo + 31, // 6: ArenaChallengeRewardReq.report:type_name -> BattleReport + 27, // 7: ArenaRankResp.players:type_name -> ArenaPlayer + 26, // 8: ArenaRankResp.info:type_name -> DBArenaUser + 28, // 9: ArenaPlotReq.battle:type_name -> BattleFormation + 29, // 10: ArenaPlotResp.code:type_name -> ErrorCode + 30, // 11: ArenaPlotResp.info:type_name -> BattleInfo + 31, // 12: ArenaPlotRewardReq.report:type_name -> BattleReport + 25, // 13: ArenaPlotRewardResp.npc:type_name -> ArenaPlotRewardResp.NpcEntry + 30, // 14: ArenaRTimePvpPush.info:type_name -> BattleInfo + 32, // 15: ArenaPlotRewardResp.NpcEntry.value:type_name -> DBNpc + 16, // [16:16] is the sub-list for method output_type + 16, // [16:16] is the sub-list for method input_type + 16, // [16:16] is the sub-list for extension type_name + 16, // [16:16] is the sub-list for extension extendee + 0, // [0:16] is the sub-list for field type_name } func init() { file_arena_arena_msg_proto_init() } @@ -1777,6 +1850,18 @@ func file_arena_arena_msg_proto_init() { return nil } } + file_arena_arena_msg_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArenaRTimePvpPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -1784,7 +1869,7 @@ func file_arena_arena_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_arena_arena_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 25, + NumMessages: 26, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/battle_db.pb.go b/pb/battle_db.pb.go index 6a75d67da..c71d39316 100644 --- a/pb/battle_db.pb.go +++ b/pb/battle_db.pb.go @@ -271,6 +271,7 @@ type BattleRole struct { Property map[string]int32 `protobuf:"bytes,12,rep,name=property,proto3" json:"property" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 属性相关 Ishelp bool `protobuf:"varint,13,opt,name=ishelp,proto3" json:"ishelp"` //是否是助战英雄 Isboos int32 `protobuf:"varint,14,opt,name=isboos,proto3" json:"isboos"` //是否是boos + Monsterid int32 `protobuf:"varint,15,opt,name=monsterid,proto3" json:"monsterid"` //怪物id } func (x *BattleRole) Reset() { @@ -403,6 +404,13 @@ func (x *BattleRole) GetIsboos() int32 { return 0 } +func (x *BattleRole) GetMonsterid() int32 { + if x != nil { + return x.Monsterid + } + return 0 +} + //战斗阵型信息 type DBBattleFormt struct { state protoimpl.MessageState @@ -624,7 +632,7 @@ var File_battle_battle_db_proto protoreflect.FileDescriptor var file_battle_battle_db_proto_rawDesc = []byte{ 0x0a, 0x16, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xea, 0x03, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, + 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x88, 0x04, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x03, @@ -651,70 +659,71 @@ var file_battle_battle_db_proto_rawDesc = []byte{ 0x65, 0x72, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x68, 0x65, 0x6c, 0x70, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x68, 0x65, 0x6c, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x62, 0x6f, 0x6f, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x69, 0x73, - 0x62, 0x6f, 0x6f, 0x73, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0x9e, 0x01, 0x0a, 0x0d, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, - 0x72, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1f, 0x0a, - 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x25, - 0x0a, 0x07, 0x73, 0x79, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x07, 0x73, 0x79, - 0x73, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x2b, 0x0a, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x74, - 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x74, 0x65, - 0x61, 0x6d, 0x22, 0xbd, 0x03, 0x0a, 0x0e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, - 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x21, 0x0a, 0x05, 0x62, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, - 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, - 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x70, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, - 0x64, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, - 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, - 0x64, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, - 0x6d, 0x70, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, - 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, - 0x69, 0x73, 0x74, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, - 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, - 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x52, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x43, 0x6f, 0x6d, 0x70, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x74, 0x61, 0x73, - 0x6b, 0x73, 0x2a, 0x39, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x07, 0x0a, 0x03, 0x6e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x65, - 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x70, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x70, - 0x76, 0x62, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x65, 0x76, 0x65, 0x10, 0x04, 0x2a, 0xb3, 0x01, - 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x6e, 0x75, - 0x6c, 0x6c, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, - 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x10, 0x02, 0x12, 0x09, - 0x0a, 0x05, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x68, 0x75, 0x6e, - 0x74, 0x69, 0x6e, 0x67, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, - 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x6d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, - 0x79, 0x10, 0x06, 0x12, 0x09, 0x0a, 0x05, 0x61, 0x72, 0x65, 0x6e, 0x61, 0x10, 0x07, 0x12, 0x0b, - 0x0a, 0x07, 0x61, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, 0x10, 0x08, 0x12, 0x10, 0x0a, 0x0c, 0x68, - 0x65, 0x72, 0x6f, 0x74, 0x65, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x09, 0x12, 0x0a, 0x0a, - 0x06, 0x63, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, 0x65, 0x6e, 0x63, - 0x68, 0x61, 0x6e, 0x74, 0x10, 0x0b, 0x12, 0x0b, 0x0a, 0x07, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x79, 0x10, 0x0c, 0x2a, 0x1f, 0x0a, 0x0c, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x69, 0x6e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x65, - 0x6e, 0x64, 0x10, 0x02, 0x2a, 0x2b, 0x0a, 0x0c, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x43, 0x6f, 0x6d, 0x70, 0x12, 0x08, 0x0a, 0x04, 0x64, 0x72, 0x61, 0x77, 0x10, 0x00, 0x12, 0x07, - 0x0a, 0x03, 0x72, 0x65, 0x64, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x62, 0x75, 0x6c, 0x65, 0x10, - 0x02, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x33, + 0x62, 0x6f, 0x6f, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, 0x69, + 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, + 0x69, 0x64, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, + 0x9e, 0x01, 0x0a, 0x0d, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, + 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1f, 0x0a, 0x04, 0x74, + 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x25, 0x0a, 0x07, + 0x73, 0x79, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, + 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x07, 0x73, 0x79, 0x73, 0x74, + 0x65, 0x61, 0x6d, 0x12, 0x2b, 0x0a, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x74, 0x65, 0x61, + 0x6d, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x74, 0x65, 0x61, 0x6d, + 0x22, 0xbd, 0x03, 0x0a, 0x0e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x21, 0x0a, 0x05, 0x62, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, + 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, + 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, + 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, + 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x66, + 0x6c, 0x69, 0x73, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, 0x64, 0x66, + 0x6c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, + 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, + 0x74, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, + 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x52, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, + 0x6d, 0x70, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, + 0x73, 0x6b, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, + 0x2a, 0x39, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, + 0x0a, 0x03, 0x6e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x65, 0x10, 0x01, + 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x70, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x62, + 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x65, 0x76, 0x65, 0x10, 0x04, 0x2a, 0xb3, 0x01, 0x0a, 0x08, + 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x6e, 0x75, 0x6c, 0x6c, + 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x10, 0x01, + 0x12, 0x0a, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, + 0x72, 0x74, 0x61, 0x73, 0x6b, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x68, 0x75, 0x6e, 0x74, 0x69, + 0x6e, 0x67, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x10, 0x05, + 0x12, 0x0f, 0x0a, 0x0b, 0x6d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x10, + 0x06, 0x12, 0x09, 0x0a, 0x05, 0x61, 0x72, 0x65, 0x6e, 0x61, 0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07, + 0x61, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, 0x10, 0x08, 0x12, 0x10, 0x0a, 0x0c, 0x68, 0x65, 0x72, + 0x6f, 0x74, 0x65, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x10, 0x09, 0x12, 0x0a, 0x0a, 0x06, 0x63, + 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, 0x65, 0x6e, 0x63, 0x68, 0x61, + 0x6e, 0x74, 0x10, 0x0b, 0x12, 0x0b, 0x0a, 0x07, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x79, 0x10, + 0x0c, 0x2a, 0x1f, 0x0a, 0x0c, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x12, 0x06, 0x0a, 0x02, 0x69, 0x6e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x65, 0x6e, 0x64, + 0x10, 0x02, 0x2a, 0x2b, 0x0a, 0x0c, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, + 0x6d, 0x70, 0x12, 0x08, 0x0a, 0x04, 0x64, 0x72, 0x61, 0x77, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, + 0x72, 0x65, 0x64, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x62, 0x75, 0x6c, 0x65, 0x10, 0x02, 0x42, + 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/pb/comm.pb.go b/pb/comm.pb.go index 81da18eee..bd439f32f 100644 --- a/pb/comm.pb.go +++ b/pb/comm.pb.go @@ -86,8 +86,9 @@ type UserMessage struct { MainType string `protobuf:"bytes,1,opt,name=MainType,proto3" json:"MainType"` //用户消息处理 模块名 例如:user 对应项目中 user的模块 SubType string `protobuf:"bytes,2,opt,name=SubType,proto3" json:"SubType"` //用户消息处理函数名 例如:login 对应项目中 user的模块中 // api_login 的处理函数 - Data *anypb.Any `protobuf:"bytes,3,opt,name=data,proto3" json:"data"` - Sec string `protobuf:"bytes,4,opt,name=sec,proto3" json:"sec"` //密文 + ServicePath string `protobuf:"bytes,3,opt,name=servicePath,proto3" json:"servicePath"` // 消息路由地址 部分消息前端确定转发给谁 \worker\worker0 + Data *anypb.Any `protobuf:"bytes,4,opt,name=data,proto3" json:"data"` + Sec string `protobuf:"bytes,5,opt,name=sec,proto3" json:"sec"` //密文 } func (x *UserMessage) Reset() { @@ -136,6 +137,13 @@ func (x *UserMessage) GetSubType() string { return "" } +func (x *UserMessage) GetServicePath() string { + if x != nil { + return x.ServicePath + } + return "" +} + func (x *UserMessage) GetData() *anypb.Any { if x != nil { return x.Data @@ -1771,185 +1779,187 @@ var file_comm_proto_rawDesc = []byte{ 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, - 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x7f, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, - 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x63, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x65, 0x63, 0x22, 0x8e, 0x02, 0x0a, 0x0c, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x70, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, - 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, 0x12, 0x2a, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, - 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x07, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, - 0x79, 0x52, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xad, 0x01, 0x0a, 0x0f, 0x52, - 0x50, 0x43, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x1e, - 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, - 0x0a, 0x0c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x12, 0x32, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x09, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x05, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x52, 0x05, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x69, 0x0a, 0x0d, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x55, + 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa1, 0x01, 0x0a, 0x0b, 0x55, 0x73, 0x65, + 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x69, 0x6e, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4d, 0x61, 0x69, 0x6e, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x74, 0x68, + 0x12, 0x28, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, + 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x65, 0x63, 0x22, 0x8e, 0x02, 0x0a, + 0x0c, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, + 0x02, 0x49, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x70, 0x12, 0x24, 0x0a, + 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, 0x12, 0x2a, 0x0a, 0x10, 0x47, + 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, + 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xad, 0x01, + 0x0a, 0x0f, 0x52, 0x50, 0x43, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6c, + 0x79, 0x12, 0x1e, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x0a, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x43, 0x6f, 0x64, + 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x09, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x05, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x05, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x69, 0x0a, + 0x0d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x12, 0x24, + 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0x37, 0x0a, 0x0f, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x55, 0x6e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x57, 0x6f, 0x72, - 0x6b, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x57, 0x6f, 0x72, - 0x6b, 0x65, 0x72, 0x49, 0x64, 0x22, 0x37, 0x0a, 0x0f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x6e, - 0x42, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, + 0x64, 0x22, 0x5f, 0x0a, 0x13, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x5f, - 0x0a, 0x13, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, - 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x05, 0x52, - 0x65, 0x70, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x55, 0x73, 0x65, - 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x05, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, - 0x99, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x55, 0x73, 0x65, - 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x4d, - 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4d, - 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x28, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x75, 0x0a, 0x13, 0x42, - 0x72, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, 0x44, 0x61, - 0x74, 0x61, 0x22, 0x36, 0x0a, 0x0e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, - 0x65, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, - 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xae, 0x01, 0x0a, 0x12, 0x4e, - 0x6f, 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, - 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, - 0x70, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, 0x12, - 0x2a, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, - 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0xae, 0x01, 0x0a, 0x12, - 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, - 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x49, 0x70, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, - 0x12, 0x2a, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x47, 0x61, 0x74, 0x65, - 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x09, - 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6b, 0x69, - 0x6c, 0x6c, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x6b, 0x69, 0x6c, - 0x6c, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x76, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x76, 0x22, 0x36, 0x0a, - 0x0a, 0x55, 0x73, 0x65, 0x72, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x41, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x41, 0x12, 0x0c, 0x0a, 0x01, 0x54, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x54, 0x12, 0x0c, 0x0a, 0x01, 0x4e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x01, 0x4e, 0x22, 0x42, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x41, 0x74, 0x6e, - 0x6f, 0x12, 0x0c, 0x0a, 0x01, 0x41, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x41, 0x12, - 0x0c, 0x0a, 0x01, 0x54, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x54, 0x12, 0x0c, 0x0a, - 0x01, 0x4e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x4e, 0x12, 0x0c, 0x0a, 0x01, 0x4f, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x4f, 0x22, 0x39, 0x0a, 0x09, 0x54, 0x61, 0x73, - 0x6b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x22, 0x54, 0x0a, 0x0a, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x22, 0x1a, 0x0a, 0x06, 0x55, 0x49, - 0x64, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0x1d, 0x0a, 0x07, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, - 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x0a, 0x0a, 0x08, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x65, - 0x71, 0x22, 0x0b, 0x0a, 0x09, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x22, 0x29, - 0x0a, 0x0f, 0x52, 0x50, 0x43, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x41, - 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x22, 0x41, 0x0a, 0x0f, 0x52, 0x50, 0x43, - 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x41, 0x32, 0x12, 0x16, 0x0a, 0x06, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x22, 0x59, 0x0a, 0x0f, - 0x52, 0x50, 0x43, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x41, 0x33, 0x12, + 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x22, + 0x0a, 0x05, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, + 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x05, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x22, 0x99, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, + 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x12, 0x1a, + 0x0a, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, + 0x62, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x53, 0x75, 0x62, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x75, + 0x0a, 0x13, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x43, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4d, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x53, 0x75, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x44, + 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, + 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x36, 0x0a, 0x0e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6c, + 0x6f, 0x73, 0x65, 0x65, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xae, 0x01, + 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, + 0x6e, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x49, 0x70, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, 0x65, + 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, + 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, 0x67, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, + 0x61, 0x67, 0x12, 0x2a, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x47, 0x61, + 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0xae, + 0x01, 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x6f, + 0x73, 0x65, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x49, 0x70, 0x12, 0x24, 0x0a, 0x0d, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x55, 0x73, + 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x54, 0x61, + 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x54, 0x61, 0x67, 0x12, 0x2a, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x47, + 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, + 0x3f, 0x0a, 0x09, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, + 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, + 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, + 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x76, + 0x22, 0x36, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x0c, + 0x0a, 0x01, 0x41, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x41, 0x12, 0x0c, 0x0a, 0x01, + 0x54, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x54, 0x12, 0x0c, 0x0a, 0x01, 0x4e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x4e, 0x22, 0x42, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, + 0x41, 0x74, 0x6e, 0x6f, 0x12, 0x0c, 0x0a, 0x01, 0x41, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x01, 0x41, 0x12, 0x0c, 0x0a, 0x01, 0x54, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x54, + 0x12, 0x0c, 0x0a, 0x01, 0x4e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x4e, 0x12, 0x0c, + 0x0a, 0x01, 0x4f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x4f, 0x22, 0x39, 0x0a, 0x09, + 0x54, 0x61, 0x73, 0x6b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x72, + 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x22, 0x54, 0x0a, 0x0a, 0x52, 0x74, 0x61, 0x73, 0x6b, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x22, 0x1a, 0x0a, + 0x06, 0x55, 0x49, 0x64, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0x1d, 0x0a, 0x07, 0x4e, 0x61, 0x6d, + 0x65, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x0a, 0x0a, 0x08, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x52, 0x65, 0x71, 0x22, 0x0b, 0x0a, 0x09, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x29, 0x0a, 0x0f, 0x52, 0x50, 0x43, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, + 0x65, 0x71, 0x41, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x22, 0x41, 0x0a, 0x0f, + 0x52, 0x50, 0x43, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x41, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, - 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x22, 0x71, 0x0a, 0x0f, 0x52, 0x50, 0x43, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x41, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x33, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x33, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x34, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x34, 0x22, 0x51, 0x0a, 0x0b, 0x52, 0x50, - 0x43, 0x52, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x74, - 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, - 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x22, 0xa1, 0x03, - 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x42, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, - 0x72, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x49, - 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x72, 0x65, 0x64, 0x69, 0x73, 0x49, 0x73, 0x43, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x72, 0x65, 0x64, 0x69, 0x73, - 0x49, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x64, - 0x69, 0x73, 0x41, 0x64, 0x64, 0x72, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, - 0x64, 0x69, 0x73, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x64, 0x69, 0x73, - 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x72, 0x65, 0x64, 0x69, 0x73, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x18, 0x0a, - 0x07, 0x72, 0x65, 0x64, 0x69, 0x73, 0x44, 0x62, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x72, 0x65, 0x64, 0x69, 0x73, 0x44, 0x62, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, - 0x64, 0x62, 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x4d, 0x6f, 0x6e, - 0x67, 0x6f, 0x64, 0x62, 0x55, 0x72, 0x6c, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, - 0x64, 0x62, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x2a, 0x43, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, - 0x74, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x48, 0x70, 0x10, 0x00, 0x12, - 0x07, 0x0a, 0x03, 0x41, 0x74, 0x6b, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x65, 0x66, 0x10, - 0x02, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x70, 0x65, 0x65, 0x64, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, - 0x43, 0x72, 0x69, 0x74, 0x10, 0x04, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x22, + 0x59, 0x0a, 0x0f, 0x52, 0x50, 0x43, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, + 0x41, 0x33, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x22, 0x71, 0x0a, 0x0f, 0x52, 0x50, + 0x43, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x41, 0x34, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x33, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x34, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x34, 0x22, 0x51, 0x0a, + 0x0b, 0x52, 0x50, 0x43, 0x52, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x74, 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x74, 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x22, 0xa1, 0x03, 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x42, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x69, 0x6e, 0x67, + 0x6c, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x72, 0x65, 0x64, 0x69, 0x73, 0x49, 0x73, 0x43, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x72, 0x65, + 0x64, 0x69, 0x73, 0x49, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, + 0x72, 0x65, 0x64, 0x69, 0x73, 0x41, 0x64, 0x64, 0x72, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x09, 0x72, 0x65, 0x64, 0x69, 0x73, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, + 0x64, 0x69, 0x73, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x69, 0x73, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x64, 0x69, 0x73, 0x44, 0x62, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x72, 0x65, 0x64, 0x69, 0x73, 0x44, 0x62, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x6f, + 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x55, 0x72, 0x6c, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x6f, + 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x2a, 0x43, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x48, 0x70, + 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x74, 0x6b, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x44, + 0x65, 0x66, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x70, 0x65, 0x65, 0x64, 0x10, 0x03, 0x12, + 0x08, 0x0a, 0x04, 0x43, 0x72, 0x69, 0x74, 0x10, 0x04, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, + 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/sys/configure/structs/game.heroData.go b/sys/configure/structs/game.heroData.go index 9f5b847df..5f048a86a 100644 --- a/sys/configure/structs/game.heroData.go +++ b/sys/configure/structs/game.heroData.go @@ -43,6 +43,8 @@ type GameHeroData struct { Angle int32 Deviation int32 Show int32 + Herofrag []*Gameatn + Heroskillup []*Gameatn } const TypeId_GameHeroData = 1513828672 @@ -129,6 +131,34 @@ func (_v *GameHeroData)Deserialize(_buf map[string]interface{}) (err error) { { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["angle"].(float64); !_ok_ { err = errors.New("angle error"); return }; _v.Angle = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["deviation"].(float64); !_ok_ { err = errors.New("deviation error"); return }; _v.Deviation = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["show"].(float64); !_ok_ { err = errors.New("show error"); return }; _v.Show = int32(_tempNum_) } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["herofrag"].([]interface{}); !_ok_ { err = errors.New("herofrag error"); return } + + _v.Herofrag = 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.Herofrag = append(_v.Herofrag, _list_v_) + } + } + + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["heroskillup"].([]interface{}); !_ok_ { err = errors.New("heroskillup error"); return } + + _v.Heroskillup = 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.Heroskillup = append(_v.Heroskillup, _list_v_) + } + } + return }