diff --git a/bin/json/game_cardpool.json b/bin/json/game_cardpool.json
new file mode 100644
index 000000000..8ed3a8d37
--- /dev/null
+++ b/bin/json/game_cardpool.json
@@ -0,0 +1,608 @@
+[
+ {
+ "key": 1,
+ "card_pool_type": "base_pool1",
+ "id": "24004",
+ "weight": 1000
+ },
+ {
+ "key": 2,
+ "card_pool_type": "base_pool1",
+ "id": "24004",
+ "weight": 1000
+ },
+ {
+ "key": 3,
+ "card_pool_type": "base_pool1",
+ "id": "24004",
+ "weight": 1000
+ },
+ {
+ "key": 4,
+ "card_pool_type": "base_pool2",
+ "id": "25001",
+ "weight": 1000
+ },
+ {
+ "key": 5,
+ "card_pool_type": "base_pool2",
+ "id": "25001",
+ "weight": 1000
+ },
+ {
+ "key": 6,
+ "card_pool_type": "base_pool2",
+ "id": "25001",
+ "weight": 1000
+ },
+ {
+ "key": 7,
+ "card_pool_type": "base_pool3",
+ "id": "25004",
+ "weight": 1000
+ },
+ {
+ "key": 8,
+ "card_pool_type": "base_pool3",
+ "id": "25004",
+ "weight": 1000
+ },
+ {
+ "key": 9,
+ "card_pool_type": "base_pool3",
+ "id": "25004",
+ "weight": 1000
+ },
+ {
+ "key": 10,
+ "card_pool_type": "base_pool4",
+ "id": "24008",
+ "weight": 1000
+ },
+ {
+ "key": 11,
+ "card_pool_type": "base_pool4",
+ "id": "24008",
+ "weight": 1000
+ },
+ {
+ "key": 12,
+ "card_pool_type": "base_pool4",
+ "id": "24008",
+ "weight": 1000
+ },
+ {
+ "key": 13,
+ "card_pool_type": "base_pool5",
+ "id": "24003",
+ "weight": 1000
+ },
+ {
+ "key": 14,
+ "card_pool_type": "base_pool5",
+ "id": "24003",
+ "weight": 1000
+ },
+ {
+ "key": 15,
+ "card_pool_type": "base_pool5",
+ "id": "24003",
+ "weight": 1000
+ },
+ {
+ "key": 16,
+ "card_pool_type": "base_pool6",
+ "id": "15005",
+ "weight": 1000
+ },
+ {
+ "key": 17,
+ "card_pool_type": "base_pool6",
+ "id": "15005",
+ "weight": 1000
+ },
+ {
+ "key": 18,
+ "card_pool_type": "base_pool6",
+ "id": "15005",
+ "weight": 1000
+ },
+ {
+ "key": 19,
+ "card_pool_type": "base_pool7",
+ "id": "24004",
+ "weight": 1000
+ },
+ {
+ "key": 20,
+ "card_pool_type": "base_pool7",
+ "id": "25001",
+ "weight": 1000
+ },
+ {
+ "key": 21,
+ "card_pool_type": "base_pool7",
+ "id": "25004",
+ "weight": 1000
+ },
+ {
+ "key": 22,
+ "card_pool_type": "base_pool7",
+ "id": "24008",
+ "weight": 1000
+ },
+ {
+ "key": 23,
+ "card_pool_type": "base_pool7",
+ "id": "24003",
+ "weight": 1000
+ },
+ {
+ "key": 24,
+ "card_pool_type": "base_pool7",
+ "id": "15005",
+ "weight": 1000
+ },
+ {
+ "key": 25,
+ "card_pool_type": "base_pool7",
+ "id": "14001",
+ "weight": 1000
+ },
+ {
+ "key": 26,
+ "card_pool_type": "base_pool7",
+ "id": "14003",
+ "weight": 1000
+ },
+ {
+ "key": 27,
+ "card_pool_type": "base_pool7",
+ "id": "34006",
+ "weight": 1000
+ },
+ {
+ "key": 28,
+ "card_pool_type": "base_pool7",
+ "id": "34002",
+ "weight": 1000
+ },
+ {
+ "key": 29,
+ "card_pool_type": "base_pool7",
+ "id": "24002",
+ "weight": 1000
+ },
+ {
+ "key": 30,
+ "card_pool_type": "base_pool7",
+ "id": "35001",
+ "weight": 1000
+ },
+ {
+ "key": 31,
+ "card_pool_type": "base_pool7",
+ "id": "15004",
+ "weight": 1000
+ },
+ {
+ "key": 32,
+ "card_pool_type": "base_pool7",
+ "id": "44005",
+ "weight": 1000
+ },
+ {
+ "key": 33,
+ "card_pool_type": "base_pool7",
+ "id": "44006",
+ "weight": 1000
+ },
+ {
+ "key": 54,
+ "card_pool_type": "camp1_pool",
+ "id": "13001",
+ "weight": 1000
+ },
+ {
+ "key": 55,
+ "card_pool_type": "camp1_pool",
+ "id": "13002",
+ "weight": 1000
+ },
+ {
+ "key": 56,
+ "card_pool_type": "camp1_pool",
+ "id": "13003",
+ "weight": 1000
+ },
+ {
+ "key": 57,
+ "card_pool_type": "camp1_pool",
+ "id": "13004",
+ "weight": 1000
+ },
+ {
+ "key": 58,
+ "card_pool_type": "camp1_pool",
+ "id": "13005",
+ "weight": 1000
+ },
+ {
+ "key": 59,
+ "card_pool_type": "camp1_pool",
+ "id": "14001",
+ "weight": 1000
+ },
+ {
+ "key": 60,
+ "card_pool_type": "camp1_pool",
+ "id": "14002",
+ "weight": 1000
+ },
+ {
+ "key": 61,
+ "card_pool_type": "camp1_pool",
+ "id": "14003",
+ "weight": 1000
+ },
+ {
+ "key": 62,
+ "card_pool_type": "camp1_pool",
+ "id": "14004",
+ "weight": 1000
+ },
+ {
+ "key": 63,
+ "card_pool_type": "camp1_pool",
+ "id": "14005",
+ "weight": 1000
+ },
+ {
+ "key": 64,
+ "card_pool_type": "camp1_pool",
+ "id": "14006",
+ "weight": 1000
+ },
+ {
+ "key": 65,
+ "card_pool_type": "camp1_pool",
+ "id": "14007",
+ "weight": 1000
+ },
+ {
+ "key": 66,
+ "card_pool_type": "camp1_pool",
+ "id": "15001",
+ "weight": 1000
+ },
+ {
+ "key": 67,
+ "card_pool_type": "camp1_pool",
+ "id": "15002",
+ "weight": 1000
+ },
+ {
+ "key": 68,
+ "card_pool_type": "camp1_pool",
+ "id": "15003",
+ "weight": 1000
+ },
+ {
+ "key": 69,
+ "card_pool_type": "camp1_pool",
+ "id": "15004",
+ "weight": 1000
+ },
+ {
+ "key": 70,
+ "card_pool_type": "camp2_pool",
+ "id": "23001",
+ "weight": 1000
+ },
+ {
+ "key": 71,
+ "card_pool_type": "camp2_pool",
+ "id": "23002",
+ "weight": 1000
+ },
+ {
+ "key": 72,
+ "card_pool_type": "camp2_pool",
+ "id": "23003",
+ "weight": 1000
+ },
+ {
+ "key": 73,
+ "card_pool_type": "camp2_pool",
+ "id": "23004",
+ "weight": 1000
+ },
+ {
+ "key": 74,
+ "card_pool_type": "camp2_pool",
+ "id": "24001",
+ "weight": 1000
+ },
+ {
+ "key": 75,
+ "card_pool_type": "camp2_pool",
+ "id": "24002",
+ "weight": 1000
+ },
+ {
+ "key": 76,
+ "card_pool_type": "camp2_pool",
+ "id": "24003",
+ "weight": 1000
+ },
+ {
+ "key": 77,
+ "card_pool_type": "camp2_pool",
+ "id": "24004",
+ "weight": 1000
+ },
+ {
+ "key": 78,
+ "card_pool_type": "camp2_pool",
+ "id": "24005",
+ "weight": 1000
+ },
+ {
+ "key": 79,
+ "card_pool_type": "camp2_pool",
+ "id": "24006",
+ "weight": 1000
+ },
+ {
+ "key": 80,
+ "card_pool_type": "camp2_pool",
+ "id": "24007",
+ "weight": 1000
+ },
+ {
+ "key": 81,
+ "card_pool_type": "camp2_pool",
+ "id": "24008",
+ "weight": 1000
+ },
+ {
+ "key": 82,
+ "card_pool_type": "camp2_pool",
+ "id": "24009",
+ "weight": 1000
+ },
+ {
+ "key": 83,
+ "card_pool_type": "camp2_pool",
+ "id": "25001",
+ "weight": 1000
+ },
+ {
+ "key": 84,
+ "card_pool_type": "camp2_pool",
+ "id": "25002",
+ "weight": 1000
+ },
+ {
+ "key": 85,
+ "card_pool_type": "camp2_pool",
+ "id": "25003",
+ "weight": 1000
+ },
+ {
+ "key": 86,
+ "card_pool_type": "camp2_pool",
+ "id": "25004",
+ "weight": 1000
+ },
+ {
+ "key": 87,
+ "card_pool_type": "camp3_pool",
+ "id": "33001",
+ "weight": 1000
+ },
+ {
+ "key": 88,
+ "card_pool_type": "camp3_pool",
+ "id": "33002",
+ "weight": 1000
+ },
+ {
+ "key": 89,
+ "card_pool_type": "camp3_pool",
+ "id": "33003",
+ "weight": 1000
+ },
+ {
+ "key": 90,
+ "card_pool_type": "camp3_pool",
+ "id": "33004",
+ "weight": 1000
+ },
+ {
+ "key": 91,
+ "card_pool_type": "camp3_pool",
+ "id": "33005",
+ "weight": 1000
+ },
+ {
+ "key": 92,
+ "card_pool_type": "camp3_pool",
+ "id": "33006",
+ "weight": 1000
+ },
+ {
+ "key": 93,
+ "card_pool_type": "camp3_pool",
+ "id": "34001",
+ "weight": 1000
+ },
+ {
+ "key": 94,
+ "card_pool_type": "camp3_pool",
+ "id": "34002",
+ "weight": 1000
+ },
+ {
+ "key": 95,
+ "card_pool_type": "camp3_pool",
+ "id": "34003",
+ "weight": 1000
+ },
+ {
+ "key": 96,
+ "card_pool_type": "camp3_pool",
+ "id": "34004",
+ "weight": 1000
+ },
+ {
+ "key": 97,
+ "card_pool_type": "camp3_pool",
+ "id": "34005",
+ "weight": 1000
+ },
+ {
+ "key": 98,
+ "card_pool_type": "camp3_pool",
+ "id": "34006",
+ "weight": 1000
+ },
+ {
+ "key": 99,
+ "card_pool_type": "camp3_pool",
+ "id": "34007",
+ "weight": 1000
+ },
+ {
+ "key": 100,
+ "card_pool_type": "camp3_pool",
+ "id": "34008",
+ "weight": 1000
+ },
+ {
+ "key": 101,
+ "card_pool_type": "camp3_pool",
+ "id": "35002",
+ "weight": 1000
+ },
+ {
+ "key": 102,
+ "card_pool_type": "camp3_pool",
+ "id": "35003",
+ "weight": 1000
+ },
+ {
+ "key": 103,
+ "card_pool_type": "camp3_pool",
+ "id": "35004",
+ "weight": 1000
+ },
+ {
+ "key": 104,
+ "card_pool_type": "camp3_pool",
+ "id": "35005",
+ "weight": 1000
+ },
+ {
+ "key": 105,
+ "card_pool_type": "camp3_pool",
+ "id": "35006",
+ "weight": 1000
+ },
+ {
+ "key": 106,
+ "card_pool_type": "camp4_pool",
+ "id": "43001",
+ "weight": 1000
+ },
+ {
+ "key": 107,
+ "card_pool_type": "camp4_pool",
+ "id": "43002",
+ "weight": 1000
+ },
+ {
+ "key": 108,
+ "card_pool_type": "camp4_pool",
+ "id": "43003",
+ "weight": 1000
+ },
+ {
+ "key": 109,
+ "card_pool_type": "camp4_pool",
+ "id": "43004",
+ "weight": 1000
+ },
+ {
+ "key": 110,
+ "card_pool_type": "camp4_pool",
+ "id": "43005",
+ "weight": 1000
+ },
+ {
+ "key": 111,
+ "card_pool_type": "camp4_pool",
+ "id": "43006",
+ "weight": 1000
+ },
+ {
+ "key": 112,
+ "card_pool_type": "camp4_pool",
+ "id": "43007",
+ "weight": 1000
+ },
+ {
+ "key": 113,
+ "card_pool_type": "camp4_pool",
+ "id": "44001",
+ "weight": 1000
+ },
+ {
+ "key": 114,
+ "card_pool_type": "camp4_pool",
+ "id": "44002",
+ "weight": 1000
+ },
+ {
+ "key": 115,
+ "card_pool_type": "camp4_pool",
+ "id": "44003",
+ "weight": 1000
+ },
+ {
+ "key": 116,
+ "card_pool_type": "camp4_pool",
+ "id": "44004",
+ "weight": 1000
+ },
+ {
+ "key": 117,
+ "card_pool_type": "camp4_pool",
+ "id": "44006",
+ "weight": 1000
+ },
+ {
+ "key": 118,
+ "card_pool_type": "camp4_pool",
+ "id": "45001",
+ "weight": 1000
+ },
+ {
+ "key": 119,
+ "card_pool_type": "camp4_pool",
+ "id": "45002",
+ "weight": 1000
+ },
+ {
+ "key": 120,
+ "card_pool_type": "camp4_pool",
+ "id": "45003",
+ "weight": 1000
+ },
+ {
+ "key": 121,
+ "card_pool_type": "camp4_pool",
+ "id": "45004",
+ "weight": 1000
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_drawcard.json b/bin/json/game_drawcard.json
index 5dd14b575..77c51eb0c 100644
--- a/bin/json/game_drawcard.json
+++ b/bin/json/game_drawcard.json
@@ -2,1931 +2,356 @@
{
"key": 1,
"recruitment_type": 1,
- "card_pool_type": "inevitable_20001",
+ "card_pool_type": "base_pool1",
"star": 3,
- "rece": 1,
- "id": "24001",
+ "rece": 2,
+ "id": "24004",
"weight": 1000
},
{
"key": 2,
"recruitment_type": 1,
- "card_pool_type": "inevitable_20010",
- "star": 3,
- "rece": 1,
- "id": "24001",
+ "card_pool_type": "base_pool1",
+ "star": 4,
+ "rece": 2,
+ "id": "24004",
"weight": 1000
},
{
"key": 3,
"recruitment_type": 1,
- "card_pool_type": "inevitable_20010",
- "star": 3,
- "rece": 1,
- "id": "24001",
+ "card_pool_type": "base_pool1",
+ "star": 5,
+ "rece": 2,
+ "id": "24004",
"weight": 1000
},
{
"key": 4,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
+ "card_pool_type": "base_pool2",
"star": 3,
"rece": 2,
- "id": "24002",
- "weight": 36
+ "id": "25001",
+ "weight": 1000
},
{
"key": 5,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
- "rece": 1,
- "id": "13003",
- "weight": 36
+ "card_pool_type": "base_pool2",
+ "star": 4,
+ "rece": 2,
+ "id": "25001",
+ "weight": 1000
},
{
"key": 6,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
- "rece": 4,
- "id": "43006",
- "weight": 9
+ "card_pool_type": "base_pool2",
+ "star": 5,
+ "rece": 2,
+ "id": "25001",
+ "weight": 1000
},
{
"key": 7,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
+ "card_pool_type": "base_pool3",
"star": 3,
- "rece": 4,
- "id": "43001",
- "weight": 9
+ "rece": 2,
+ "id": "25004",
+ "weight": 1000
},
{
"key": 8,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
- "rece": 1,
- "id": "13001",
- "weight": 36
+ "card_pool_type": "base_pool3",
+ "star": 4,
+ "rece": 2,
+ "id": "25004",
+ "weight": 1000
},
{
"key": 9,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
- "rece": 3,
- "id": "33002",
- "weight": 36
+ "card_pool_type": "base_pool3",
+ "star": 5,
+ "rece": 2,
+ "id": "25004",
+ "weight": 1000
},
{
"key": 10,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
+ "card_pool_type": "base_pool4",
"star": 3,
- "rece": 1,
- "id": "13005",
- "weight": 36
+ "rece": 2,
+ "id": "24008",
+ "weight": 1000
},
{
"key": 11,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
+ "card_pool_type": "base_pool4",
+ "star": 4,
"rece": 2,
- "id": "23004",
- "weight": 36
+ "id": "24008",
+ "weight": 1000
},
{
"key": 12,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
- "rece": 1,
- "id": "13004",
- "weight": 36
+ "card_pool_type": "base_pool4",
+ "star": 5,
+ "rece": 2,
+ "id": "24008",
+ "weight": 1000
},
{
"key": 13,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
+ "card_pool_type": "base_pool5",
"star": 3,
- "rece": 4,
- "id": "43003",
- "weight": 9
+ "rece": 2,
+ "id": "24003",
+ "weight": 1000
},
{
"key": 14,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
- "rece": 1,
- "id": "13002",
- "weight": 36
+ "card_pool_type": "base_pool5",
+ "star": 4,
+ "rece": 2,
+ "id": "24003",
+ "weight": 1000
},
{
"key": 15,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
- "star": 3,
- "rece": 3,
- "id": "33003",
- "weight": 36
+ "card_pool_type": "base_pool5",
+ "star": 5,
+ "rece": 2,
+ "id": "24003",
+ "weight": 1000
},
{
"key": 16,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20003",
+ "card_pool_type": "base_pool6",
"star": 3,
- "rece": 4,
- "id": "43002",
- "weight": 9
+ "rece": 1,
+ "id": "15005",
+ "weight": 1000
},
{
"key": 17,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool6",
"star": 4,
- "rece": 2,
- "id": "24004",
- "weight": 27
+ "rece": 1,
+ "id": "15005",
+ "weight": 1000
},
{
"key": 18,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24008",
- "weight": 27
+ "card_pool_type": "base_pool6",
+ "star": 5,
+ "rece": 1,
+ "id": "15005",
+ "weight": 1000
},
{
"key": 19,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
"rece": 2,
- "id": "24003",
- "weight": 27
+ "id": "24004",
+ "weight": 1000
},
{
"key": 20,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
+ "card_pool_type": "base_pool7",
+ "star": 5,
"rece": 2,
- "id": "24005",
- "weight": 27
+ "id": "25001",
+ "weight": 1000
},
{
"key": 21,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
- "rece": 1,
- "id": "14001",
- "weight": 27
+ "card_pool_type": "base_pool7",
+ "star": 5,
+ "rece": 2,
+ "id": "25004",
+ "weight": 1000
},
{
"key": 22,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
- "rece": 3,
- "id": "34007",
- "weight": 27
+ "rece": 2,
+ "id": "24008",
+ "weight": 1000
},
{
"key": 23,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
- "rece": 1,
- "id": "14003",
- "weight": 27
+ "rece": 2,
+ "id": "24003",
+ "weight": 1000
},
{
"key": 24,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
+ "card_pool_type": "base_pool7",
+ "star": 5,
"rece": 1,
- "id": "14007",
- "weight": 27
+ "id": "15005",
+ "weight": 1000
},
{
"key": 25,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
- "rece": 3,
- "id": "34006",
- "weight": 27
+ "rece": 1,
+ "id": "14001",
+ "weight": 1000
},
{
"key": 26,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
- "rece": 3,
- "id": "34002",
- "weight": 27
+ "rece": 1,
+ "id": "14003",
+ "weight": 1000
},
{
"key": 27,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
- "rece": 4,
- "id": "44005",
- "weight": 16
+ "rece": 3,
+ "id": "34006",
+ "weight": 1000
},
{
"key": 28,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
- "rece": 4,
- "id": "44006",
- "weight": 16
+ "rece": 3,
+ "id": "34002",
+ "weight": 1000
},
{
"key": 29,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
- "rece": 1,
- "id": "14005",
- "weight": 27
+ "card_pool_type": "base_pool7",
+ "star": 3,
+ "rece": 2,
+ "id": "24002",
+ "weight": 1000
},
{
"key": 30,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
+ "card_pool_type": "base_pool7",
+ "star": 5,
"rece": 2,
- "id": "24001",
- "weight": 27
+ "id": "35001",
+ "weight": 1000
},
{
"key": 31,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34008",
- "weight": 27
+ "card_pool_type": "base_pool7",
+ "star": 5,
+ "rece": 1,
+ "id": "15004",
+ "weight": 1000
},
{
"key": 32,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
- "rece": 3,
- "id": "34003",
- "weight": 27
+ "rece": 4,
+ "id": "44005",
+ "weight": 1000
},
{
"key": 33,
"recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24009",
- "weight": 27
- },
- {
- "key": 34,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34005",
- "weight": 27
- },
- {
- "key": 35,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20004",
+ "card_pool_type": "base_pool7",
"star": 4,
"rece": 4,
- "id": "44004",
- "weight": 16
- },
- {
- "key": 36,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 2,
- "id": "25001",
- "weight": 100
- },
- {
- "key": 37,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 2,
- "id": "25004",
- "weight": 100
- },
- {
- "key": 38,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15005",
- "weight": 100
- },
- {
- "key": 39,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 3,
- "id": "35006",
- "weight": 100
- },
- {
- "key": 40,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 4,
- "id": "45003",
- "weight": 0
- },
- {
- "key": 41,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 3,
- "id": "35001",
- "weight": 100
- },
- {
- "key": 42,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15004",
- "weight": 100
- },
- {
- "key": 43,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 4,
- "id": "45001",
- "weight": 0
- },
- {
- "key": 44,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 3,
- "id": "35005",
- "weight": 100
- },
- {
- "key": 45,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15002",
- "weight": 100
- },
- {
- "key": 46,
- "recruitment_type": 1,
- "card_pool_type": "pro_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15003",
- "weight": 100
- },
- {
- "key": 47,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 2,
- "id": "24002",
- "weight": 36
- },
- {
- "key": 48,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 1,
- "id": "13003",
- "weight": 36
- },
- {
- "key": 49,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 4,
- "id": "43006",
- "weight": 9
- },
- {
- "key": 50,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 4,
- "id": "43001",
- "weight": 9
- },
- {
- "key": 51,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 1,
- "id": "13001",
- "weight": 36
- },
- {
- "key": 52,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 3,
- "id": "33002",
- "weight": 36
- },
- {
- "key": 53,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 1,
- "id": "13005",
- "weight": 36
+ "id": "44006",
+ "weight": 1000
},
{
"key": 54,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
+ "recruitment_type": 2,
+ "card_pool_type": "camp1_pool",
"star": 3,
- "rece": 2,
- "id": "23004",
- "weight": 36
+ "rece": 1,
+ "id": "13001",
+ "weight": 1000
},
{
"key": 55,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
+ "recruitment_type": 2,
+ "card_pool_type": "camp1_pool",
"star": 3,
"rece": 1,
- "id": "13004",
- "weight": 36
+ "id": "13002",
+ "weight": 1000
},
{
"key": 56,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
+ "recruitment_type": 2,
+ "card_pool_type": "camp1_pool",
"star": 3,
- "rece": 4,
- "id": "43003",
- "weight": 9
+ "rece": 1,
+ "id": "13003",
+ "weight": 1000
},
{
"key": 57,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
+ "recruitment_type": 2,
+ "card_pool_type": "camp1_pool",
"star": 3,
"rece": 1,
- "id": "13002",
- "weight": 36
+ "id": "13004",
+ "weight": 1000
},
{
"key": 58,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
+ "recruitment_type": 2,
+ "card_pool_type": "camp1_pool",
"star": 3,
- "rece": 3,
- "id": "33003",
- "weight": 36
+ "rece": 1,
+ "id": "13005",
+ "weight": 1000
},
{
"key": 59,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20003",
- "star": 3,
- "rece": 4,
- "id": "43002",
- "weight": 9
+ "recruitment_type": 2,
+ "card_pool_type": "camp1_pool",
+ "star": 4,
+ "rece": 1,
+ "id": "14001",
+ "weight": 1000
},
{
"key": 60,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24004",
- "weight": 27
- },
- {
- "key": 61,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24008",
- "weight": 27
- },
- {
- "key": 62,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24003",
- "weight": 27
- },
- {
- "key": 63,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24005",
- "weight": 27
- },
- {
- "key": 64,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 1,
- "id": "14001",
- "weight": 27
- },
- {
- "key": 65,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34007",
- "weight": 27
- },
- {
- "key": 66,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 1,
- "id": "14003",
- "weight": 27
- },
- {
- "key": 67,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 1,
- "id": "14007",
- "weight": 27
- },
- {
- "key": 68,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34006",
- "weight": 27
- },
- {
- "key": 69,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34002",
- "weight": 27
- },
- {
- "key": 70,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 4,
- "id": "44005",
- "weight": 16
- },
- {
- "key": 71,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 4,
- "id": "44006",
- "weight": 16
- },
- {
- "key": 72,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 1,
- "id": "14005",
- "weight": 27
- },
- {
- "key": 73,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24001",
- "weight": 27
- },
- {
- "key": 74,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34008",
- "weight": 27
- },
- {
- "key": 75,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34003",
- "weight": 27
- },
- {
- "key": 76,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 2,
- "id": "24009",
- "weight": 27
- },
- {
- "key": 77,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 3,
- "id": "34005",
- "weight": 27
- },
- {
- "key": 78,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20004",
- "star": 4,
- "rece": 4,
- "id": "44004",
- "weight": 16
- },
- {
- "key": 79,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 2,
- "id": "25001",
- "weight": 18
- },
- {
- "key": 80,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 2,
- "id": "25004",
- "weight": 18
- },
- {
- "key": 81,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15005",
- "weight": 18
- },
- {
- "key": 82,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 3,
- "id": "35006",
- "weight": 18
- },
- {
- "key": 83,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 4,
- "id": "45003",
- "weight": 9
- },
- {
- "key": 84,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 3,
- "id": "35001",
- "weight": 18
- },
- {
- "key": 85,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15004",
- "weight": 18
- },
- {
- "key": 86,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 4,
- "id": "45001",
- "weight": 9
- },
- {
- "key": 87,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 3,
- "id": "35005",
- "weight": 18
- },
- {
- "key": 88,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15002",
- "weight": 18
- },
- {
- "key": 89,
- "recruitment_type": 1,
- "card_pool_type": "base_pool20005",
- "star": 5,
- "rece": 1,
- "id": "15003",
- "weight": 18
- },
- {
- "key": 90,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13003",
- "weight": 100
- },
- {
- "key": 91,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13001",
- "weight": 100
- },
- {
- "key": 92,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13005",
- "weight": 100
- },
- {
- "key": 93,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13004",
- "weight": 100
- },
- {
- "key": 94,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13002",
- "weight": 100
- },
- {
- "key": 95,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14001",
- "weight": 100
- },
- {
- "key": 96,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14003",
- "weight": 100
- },
- {
- "key": 97,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14007",
- "weight": 100
- },
- {
- "key": 98,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14005",
- "weight": 100
- },
- {
- "key": 99,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15005",
- "weight": 100
- },
- {
- "key": 100,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15004",
- "weight": 100
- },
- {
- "key": 101,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15002",
- "weight": 100
- },
- {
- "key": 102,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15003",
- "weight": 100
- },
- {
- "key": 103,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40003",
- "star": 3,
- "rece": 2,
- "id": "24002",
- "weight": 100
- },
- {
- "key": 104,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40003",
- "star": 3,
- "rece": 2,
- "id": "23004",
- "weight": 100
- },
- {
- "key": 105,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24004",
- "weight": 100
- },
- {
- "key": 106,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24008",
- "weight": 100
- },
- {
- "key": 107,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24003",
- "weight": 100
- },
- {
- "key": 108,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24005",
- "weight": 100
- },
- {
- "key": 109,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24001",
- "weight": 100
- },
- {
- "key": 110,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24009",
- "weight": 100
- },
- {
- "key": 111,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40005",
- "star": 5,
- "rece": 2,
- "id": "25001",
- "weight": 100
- },
- {
- "key": 112,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool40005",
- "star": 5,
- "rece": 2,
- "id": "25004",
- "weight": 100
- },
- {
- "key": 113,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50003",
- "star": 3,
- "rece": 3,
- "id": "33002",
- "weight": 100
- },
- {
- "key": 114,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50003",
- "star": 3,
- "rece": 3,
- "id": "33003",
- "weight": 100
- },
- {
- "key": 115,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34007",
- "weight": 100
- },
- {
- "key": 116,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34006",
- "weight": 100
- },
- {
- "key": 117,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34002",
- "weight": 100
- },
- {
- "key": 118,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34008",
- "weight": 100
- },
- {
- "key": 119,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34003",
- "weight": 100
- },
- {
- "key": 120,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34005",
- "weight": 100
- },
- {
- "key": 121,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50005",
- "star": 5,
- "rece": 3,
- "id": "35006",
- "weight": 100
- },
- {
- "key": 122,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50005",
- "star": 5,
- "rece": 3,
- "id": "35001",
- "weight": 100
- },
- {
- "key": 123,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool50005",
- "star": 5,
- "rece": 3,
- "id": "35005",
- "weight": 100
- },
- {
- "key": 124,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43006",
- "weight": 100
- },
- {
- "key": 125,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43001",
- "weight": 100
- },
- {
- "key": 126,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43003",
- "weight": 100
- },
- {
- "key": 127,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43002",
- "weight": 100
- },
- {
- "key": 128,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60004",
- "star": 4,
- "rece": 4,
- "id": "44005",
- "weight": 100
- },
- {
- "key": 129,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60004",
- "star": 4,
- "rece": 4,
- "id": "44006",
- "weight": 100
- },
- {
- "key": 130,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60004",
- "star": 4,
- "rece": 4,
- "id": "44004",
- "weight": 100
- },
- {
- "key": 131,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60005",
- "star": 5,
- "rece": 4,
- "id": "45003",
- "weight": 100
- },
- {
- "key": 132,
- "recruitment_type": 2,
- "card_pool_type": "pro_pool60005",
- "star": 5,
- "rece": 4,
- "id": "45001",
- "weight": 100
- },
- {
- "key": 133,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13003",
- "weight": 100
- },
- {
- "key": 134,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13001",
- "weight": 100
- },
- {
- "key": 135,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13005",
- "weight": 100
- },
- {
- "key": 136,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13004",
- "weight": 100
- },
- {
- "key": 137,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30003",
- "star": 3,
- "rece": 1,
- "id": "13002",
- "weight": 100
- },
- {
- "key": 138,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14001",
- "weight": 100
- },
- {
- "key": 139,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14003",
- "weight": 100
- },
- {
- "key": 140,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14007",
- "weight": 100
- },
- {
- "key": 141,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30004",
- "star": 4,
- "rece": 1,
- "id": "14005",
- "weight": 100
- },
- {
- "key": 142,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15005",
- "weight": 100
- },
- {
- "key": 143,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15004",
- "weight": 100
- },
- {
- "key": 144,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15002",
- "weight": 100
- },
- {
- "key": 145,
- "recruitment_type": 2,
- "card_pool_type": "base_pool30005",
- "star": 5,
- "rece": 1,
- "id": "15003",
- "weight": 100
- },
- {
- "key": 146,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40003",
- "star": 3,
- "rece": 2,
- "id": "24002",
- "weight": 100
- },
- {
- "key": 147,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40003",
- "star": 3,
- "rece": 2,
- "id": "23004",
- "weight": 100
- },
- {
- "key": 148,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24004",
- "weight": 100
- },
- {
- "key": 149,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24008",
- "weight": 100
- },
- {
- "key": 150,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24003",
- "weight": 100
- },
- {
- "key": 151,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24005",
- "weight": 100
- },
- {
- "key": 152,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24001",
- "weight": 100
- },
- {
- "key": 153,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40004",
- "star": 4,
- "rece": 2,
- "id": "24009",
- "weight": 100
- },
- {
- "key": 154,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40005",
- "star": 5,
- "rece": 2,
- "id": "25001",
- "weight": 100
- },
- {
- "key": 155,
- "recruitment_type": 2,
- "card_pool_type": "base_pool40005",
- "star": 5,
- "rece": 2,
- "id": "25004",
- "weight": 100
- },
- {
- "key": 156,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50003",
- "star": 3,
- "rece": 3,
- "id": "33002",
- "weight": 100
- },
- {
- "key": 157,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50003",
- "star": 3,
- "rece": 3,
- "id": "33003",
- "weight": 100
- },
- {
- "key": 158,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34007",
- "weight": 100
- },
- {
- "key": 159,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34006",
- "weight": 100
- },
- {
- "key": 160,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34002",
- "weight": 100
- },
- {
- "key": 161,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34008",
- "weight": 100
- },
- {
- "key": 162,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34003",
- "weight": 100
- },
- {
- "key": 163,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50004",
- "star": 4,
- "rece": 3,
- "id": "34005",
- "weight": 100
- },
- {
- "key": 164,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50005",
- "star": 5,
- "rece": 3,
- "id": "35006",
- "weight": 100
- },
- {
- "key": 165,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50005",
- "star": 5,
- "rece": 3,
- "id": "35001",
- "weight": 100
- },
- {
- "key": 166,
- "recruitment_type": 2,
- "card_pool_type": "base_pool50005",
- "star": 5,
- "rece": 3,
- "id": "35005",
- "weight": 100
- },
- {
- "key": 167,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43006",
- "weight": 100
- },
- {
- "key": 168,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43001",
- "weight": 100
- },
- {
- "key": 169,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43003",
- "weight": 100
- },
- {
- "key": 170,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60003",
- "star": 3,
- "rece": 4,
- "id": "43002",
- "weight": 100
- },
- {
- "key": 171,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60004",
- "star": 4,
- "rece": 4,
- "id": "44005",
- "weight": 100
- },
- {
- "key": 172,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60004",
- "star": 4,
- "rece": 4,
- "id": "44006",
- "weight": 100
- },
- {
- "key": 173,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60004",
- "star": 4,
- "rece": 4,
- "id": "44004",
- "weight": 100
- },
- {
- "key": 174,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60005",
- "star": 5,
- "rece": 4,
- "id": "45003",
- "weight": 100
- },
- {
- "key": 175,
- "recruitment_type": 2,
- "card_pool_type": "base_pool60005",
- "star": 5,
- "rece": 4,
- "id": "45001",
- "weight": 100
- },
- {
- "key": 176,
- "recruitment_type": 1,
- "card_pool_type": "base_pool1",
- "star": 3,
- "rece": 2,
- "id": "13002",
- "weight": 1000
- },
- {
- "key": 177,
- "recruitment_type": 1,
- "card_pool_type": "base_pool1",
- "star": 4,
- "rece": 2,
- "id": "13002",
- "weight": 1000
- },
- {
- "key": 178,
- "recruitment_type": 1,
- "card_pool_type": "base_pool1",
- "star": 5,
- "rece": 2,
- "id": "13002",
- "weight": 1000
- },
- {
- "key": 179,
- "recruitment_type": 1,
- "card_pool_type": "base_pool2",
- "star": 3,
- "rece": 2,
- "id": "25001",
- "weight": 1000
- },
- {
- "key": 180,
- "recruitment_type": 1,
- "card_pool_type": "base_pool2",
- "star": 4,
- "rece": 2,
- "id": "25001",
- "weight": 1000
- },
- {
- "key": 181,
- "recruitment_type": 1,
- "card_pool_type": "base_pool2",
- "star": 5,
- "rece": 2,
- "id": "25001",
- "weight": 1000
- },
- {
- "key": 182,
- "recruitment_type": 1,
- "card_pool_type": "base_pool3",
- "star": 3,
- "rece": 2,
- "id": "25004",
- "weight": 1000
- },
- {
- "key": 183,
- "recruitment_type": 1,
- "card_pool_type": "base_pool3",
- "star": 4,
- "rece": 2,
- "id": "25004",
- "weight": 1000
- },
- {
- "key": 184,
- "recruitment_type": 1,
- "card_pool_type": "base_pool3",
- "star": 5,
- "rece": 2,
- "id": "25004",
- "weight": 1000
- },
- {
- "key": 185,
- "recruitment_type": 1,
- "card_pool_type": "base_pool4",
- "star": 3,
- "rece": 2,
- "id": "24008",
- "weight": 1000
- },
- {
- "key": 186,
- "recruitment_type": 1,
- "card_pool_type": "base_pool4",
- "star": 4,
- "rece": 2,
- "id": "24008",
- "weight": 1000
- },
- {
- "key": 187,
- "recruitment_type": 1,
- "card_pool_type": "base_pool4",
- "star": 5,
- "rece": 2,
- "id": "24008",
- "weight": 1000
- },
- {
- "key": 188,
- "recruitment_type": 1,
- "card_pool_type": "base_pool5",
- "star": 3,
- "rece": 2,
- "id": "24003",
- "weight": 1000
- },
- {
- "key": 189,
- "recruitment_type": 1,
- "card_pool_type": "base_pool5",
- "star": 4,
- "rece": 2,
- "id": "24003",
- "weight": 1000
- },
- {
- "key": 190,
- "recruitment_type": 1,
- "card_pool_type": "base_pool5",
- "star": 5,
- "rece": 2,
- "id": "24003",
- "weight": 1000
- },
- {
- "key": 191,
- "recruitment_type": 1,
- "card_pool_type": "base_pool6",
- "star": 3,
- "rece": 1,
- "id": "34006",
- "weight": 1000
- },
- {
- "key": 192,
- "recruitment_type": 1,
- "card_pool_type": "base_pool6",
- "star": 4,
- "rece": 1,
- "id": "34006",
- "weight": 1000
- },
- {
- "key": 193,
- "recruitment_type": 1,
- "card_pool_type": "base_pool6",
- "star": 5,
- "rece": 1,
- "id": "34006",
- "weight": 1000
- },
- {
- "key": 194,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 2,
- "id": "24004",
- "weight": 1000
- },
- {
- "key": 195,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 5,
- "rece": 2,
- "id": "25001",
- "weight": 1000
- },
- {
- "key": 196,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 5,
- "rece": 2,
- "id": "25004",
- "weight": 1000
- },
- {
- "key": 197,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 2,
- "id": "24008",
- "weight": 1000
- },
- {
- "key": 198,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 2,
- "id": "24003",
- "weight": 1000
- },
- {
- "key": 199,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 5,
- "rece": 1,
- "id": "15005",
- "weight": 1000
- },
- {
- "key": 200,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 1,
- "id": "14001",
- "weight": 1000
- },
- {
- "key": 201,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 1,
- "id": "14003",
- "weight": 1000
- },
- {
- "key": 202,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 3,
- "id": "34006",
- "weight": 1000
- },
- {
- "key": 203,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 3,
- "id": "34002",
- "weight": 1000
- },
- {
- "key": 204,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 3,
- "rece": 2,
- "id": "24002",
- "weight": 1000
- },
- {
- "key": 205,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 5,
- "rece": 2,
- "id": "35001",
- "weight": 1000
- },
- {
- "key": 206,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 5,
- "rece": 1,
- "id": "15004",
- "weight": 1000
- },
- {
- "key": 207,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 4,
- "id": "44005",
- "weight": 1000
- },
- {
- "key": 208,
- "recruitment_type": 1,
- "card_pool_type": "base_pool7",
- "star": 4,
- "rece": 4,
- "id": "44006",
- "weight": 1000
- },
- {
- "key": 209,
- "recruitment_type": 2,
- "card_pool_type": "camp1_pool",
- "star": 3,
- "rece": 1,
- "id": "13001",
- "weight": 1000
- },
- {
- "key": 210,
- "recruitment_type": 2,
- "card_pool_type": "camp1_pool",
- "star": 3,
- "rece": 1,
- "id": "13002",
- "weight": 1000
- },
- {
- "key": 211,
- "recruitment_type": 2,
- "card_pool_type": "camp1_pool",
- "star": 3,
- "rece": 1,
- "id": "13003",
- "weight": 1000
- },
- {
- "key": 212,
- "recruitment_type": 2,
- "card_pool_type": "camp1_pool",
- "star": 3,
- "rece": 1,
- "id": "13004",
- "weight": 1000
- },
- {
- "key": 213,
- "recruitment_type": 2,
- "card_pool_type": "camp1_pool",
- "star": 3,
- "rece": 1,
- "id": "13005",
- "weight": 1000
- },
- {
- "key": 214,
- "recruitment_type": 2,
- "card_pool_type": "camp1_pool",
- "star": 4,
- "rece": 1,
- "id": "14001",
- "weight": 1000
- },
- {
- "key": 215,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 4,
@@ -1935,7 +360,7 @@
"weight": 1000
},
{
- "key": 216,
+ "key": 61,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 4,
@@ -1944,7 +369,7 @@
"weight": 1000
},
{
- "key": 217,
+ "key": 62,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 4,
@@ -1953,7 +378,7 @@
"weight": 1000
},
{
- "key": 218,
+ "key": 63,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 4,
@@ -1962,7 +387,7 @@
"weight": 1000
},
{
- "key": 219,
+ "key": 64,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 4,
@@ -1971,7 +396,7 @@
"weight": 1000
},
{
- "key": 220,
+ "key": 65,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 4,
@@ -1980,7 +405,7 @@
"weight": 1000
},
{
- "key": 221,
+ "key": 66,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 5,
@@ -1989,7 +414,7 @@
"weight": 1000
},
{
- "key": 222,
+ "key": 67,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 5,
@@ -1998,7 +423,7 @@
"weight": 1000
},
{
- "key": 223,
+ "key": 68,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 5,
@@ -2007,7 +432,7 @@
"weight": 1000
},
{
- "key": 224,
+ "key": 69,
"recruitment_type": 2,
"card_pool_type": "camp1_pool",
"star": 5,
@@ -2016,7 +441,7 @@
"weight": 1000
},
{
- "key": 225,
+ "key": 70,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 3,
@@ -2025,7 +450,7 @@
"weight": 1000
},
{
- "key": 226,
+ "key": 71,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 3,
@@ -2034,7 +459,7 @@
"weight": 1000
},
{
- "key": 227,
+ "key": 72,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 3,
@@ -2043,7 +468,7 @@
"weight": 1000
},
{
- "key": 228,
+ "key": 73,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 3,
@@ -2052,7 +477,7 @@
"weight": 1000
},
{
- "key": 229,
+ "key": 74,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2061,7 +486,7 @@
"weight": 1000
},
{
- "key": 230,
+ "key": 75,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 3,
@@ -2070,7 +495,7 @@
"weight": 1000
},
{
- "key": 231,
+ "key": 76,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2079,7 +504,7 @@
"weight": 1000
},
{
- "key": 232,
+ "key": 77,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2088,7 +513,7 @@
"weight": 1000
},
{
- "key": 233,
+ "key": 78,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2097,7 +522,7 @@
"weight": 1000
},
{
- "key": 234,
+ "key": 79,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2106,7 +531,7 @@
"weight": 1000
},
{
- "key": 235,
+ "key": 80,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2115,7 +540,7 @@
"weight": 1000
},
{
- "key": 236,
+ "key": 81,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2124,7 +549,7 @@
"weight": 1000
},
{
- "key": 237,
+ "key": 82,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 4,
@@ -2133,7 +558,7 @@
"weight": 1000
},
{
- "key": 238,
+ "key": 83,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 5,
@@ -2142,7 +567,7 @@
"weight": 1000
},
{
- "key": 239,
+ "key": 84,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 5,
@@ -2151,7 +576,7 @@
"weight": 1000
},
{
- "key": 240,
+ "key": 85,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 5,
@@ -2160,7 +585,7 @@
"weight": 1000
},
{
- "key": 241,
+ "key": 86,
"recruitment_type": 2,
"card_pool_type": "camp2_pool",
"star": 5,
@@ -2169,7 +594,7 @@
"weight": 1000
},
{
- "key": 242,
+ "key": 87,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 3,
@@ -2178,7 +603,7 @@
"weight": 1000
},
{
- "key": 243,
+ "key": 88,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 3,
@@ -2187,7 +612,7 @@
"weight": 1000
},
{
- "key": 244,
+ "key": 89,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 3,
@@ -2196,7 +621,7 @@
"weight": 1000
},
{
- "key": 245,
+ "key": 90,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 3,
@@ -2205,7 +630,7 @@
"weight": 1000
},
{
- "key": 246,
+ "key": 91,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 3,
@@ -2214,7 +639,7 @@
"weight": 1000
},
{
- "key": 247,
+ "key": 92,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 3,
@@ -2223,7 +648,7 @@
"weight": 1000
},
{
- "key": 248,
+ "key": 93,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2232,7 +657,7 @@
"weight": 1000
},
{
- "key": 249,
+ "key": 94,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2241,7 +666,7 @@
"weight": 1000
},
{
- "key": 250,
+ "key": 95,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2250,7 +675,7 @@
"weight": 1000
},
{
- "key": 251,
+ "key": 96,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2259,7 +684,7 @@
"weight": 1000
},
{
- "key": 252,
+ "key": 97,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2268,7 +693,7 @@
"weight": 1000
},
{
- "key": 253,
+ "key": 98,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2277,7 +702,7 @@
"weight": 1000
},
{
- "key": 254,
+ "key": 99,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2286,7 +711,7 @@
"weight": 1000
},
{
- "key": 255,
+ "key": 100,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 4,
@@ -2295,7 +720,7 @@
"weight": 1000
},
{
- "key": 256,
+ "key": 101,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 5,
@@ -2304,7 +729,7 @@
"weight": 1000
},
{
- "key": 257,
+ "key": 102,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 5,
@@ -2313,7 +738,7 @@
"weight": 1000
},
{
- "key": 258,
+ "key": 103,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 5,
@@ -2322,7 +747,7 @@
"weight": 1000
},
{
- "key": 259,
+ "key": 104,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 5,
@@ -2331,7 +756,7 @@
"weight": 1000
},
{
- "key": 260,
+ "key": 105,
"recruitment_type": 2,
"card_pool_type": "camp3_pool",
"star": 5,
@@ -2340,7 +765,7 @@
"weight": 1000
},
{
- "key": 261,
+ "key": 106,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 3,
@@ -2349,7 +774,7 @@
"weight": 1000
},
{
- "key": 262,
+ "key": 107,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 3,
@@ -2358,7 +783,7 @@
"weight": 1000
},
{
- "key": 263,
+ "key": 108,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 3,
@@ -2367,7 +792,7 @@
"weight": 1000
},
{
- "key": 264,
+ "key": 109,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 3,
@@ -2376,7 +801,7 @@
"weight": 1000
},
{
- "key": 265,
+ "key": 110,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 3,
@@ -2385,7 +810,7 @@
"weight": 1000
},
{
- "key": 266,
+ "key": 111,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 3,
@@ -2394,7 +819,7 @@
"weight": 1000
},
{
- "key": 267,
+ "key": 112,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 3,
@@ -2403,7 +828,7 @@
"weight": 1000
},
{
- "key": 268,
+ "key": 113,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2412,7 +837,7 @@
"weight": 1000
},
{
- "key": 269,
+ "key": 114,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2421,7 +846,7 @@
"weight": 1000
},
{
- "key": 270,
+ "key": 115,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2430,7 +855,7 @@
"weight": 1000
},
{
- "key": 271,
+ "key": 116,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2439,7 +864,7 @@
"weight": 1000
},
{
- "key": 272,
+ "key": 117,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2448,7 +873,7 @@
"weight": 1000
},
{
- "key": 273,
+ "key": 118,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2457,7 +882,7 @@
"weight": 1000
},
{
- "key": 274,
+ "key": 119,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2466,7 +891,7 @@
"weight": 1000
},
{
- "key": 275,
+ "key": 120,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
@@ -2475,7 +900,7 @@
"weight": 1000
},
{
- "key": 276,
+ "key": 121,
"recruitment_type": 2,
"card_pool_type": "camp4_pool",
"star": 4,
diff --git a/bin/json/game_drawpool.json b/bin/json/game_drawpool.json
index 94641b9b4..0586d078c 100644
--- a/bin/json/game_drawpool.json
+++ b/bin/json/game_drawpool.json
@@ -1,19 +1,32 @@
[
{
"key": 1,
- "recruitment_type": [],
- "star3w": 940,
- "star4w": 52,
- "star5w": 8,
- "protect": 100,
- "p3pool": "pro_pool20003",
- "p4pool": "pro_pool20004",
- "p5pool": "pro_pool20005",
- "n3pool": "base_pool20003",
- "n4pool": "base_pool20004",
- "n5pool": "base_pool20005",
+ "recruitment_type": [
+ {
+ "k": 3,
+ "s": "base_pool1"
+ },
+ {
+ "k": 6,
+ "s": "base_pool1"
+ },
+ {
+ "k": 9,
+ "s": "base_pool1"
+ }
+ ],
+ "star3w": 900,
+ "star4w": 94,
+ "star5w": 6,
+ "protect": 0,
+ "p3pool": "base_pool5",
+ "p4pool": "base_pool6",
+ "p5pool": "base_pool7",
+ "n3pool": "base_pool5",
+ "n4pool": "base_pool6",
+ "n5pool": "base_pool7",
"baodi4": 10,
- "baidi5": 100,
+ "baidi5": 90,
"etime": -1,
"permission": 1,
"consumeA": [
@@ -25,9 +38,9 @@
],
"consumeB": [
{
- "a": "attr",
- "t": "diamond",
- "n": 200
+ "a": "item",
+ "t": "10000001",
+ "n": 10
}
]
},
@@ -35,168 +48,179 @@
"key": 2,
"recruitment_type": [
{
- "k": 1,
- "s": "inevitable_10001"
+ "k": 3,
+ "s": "base_pool1"
},
{
- "k": 10,
- "s": "inevitable_10010"
+ "k": 6,
+ "s": "base_pool1"
+ },
+ {
+ "k": 9,
+ "s": "base_pool1"
}
],
- "star3w": 940,
- "star4w": 52,
- "star5w": 8,
- "protect": 100,
- "p3pool": "pro_pool20003",
- "p4pool": "pro_pool20004",
- "p5pool": "pro_pool20005",
- "n3pool": "base_pool20003",
- "n4pool": "base_pool20004",
- "n5pool": "base_pool20005",
+ "star3w": 900,
+ "star4w": 94,
+ "star5w": 6,
+ "protect": 50,
+ "p3pool": "base_pool6",
+ "p4pool": "base_pool7",
+ "p5pool": "base_pool8",
+ "n3pool": "base_pool6",
+ "n4pool": "base_pool7",
+ "n5pool": "base_pool8",
"baodi4": 10,
- "baidi5": 100,
+ "baidi5": 0,
"etime": -1,
"permission": 1,
"consumeA": [
{
"a": "item",
"t": "10000001",
- "n": 1
+ "n": 2
}
],
"consumeB": [
{
- "a": "attr",
- "t": "diamond",
- "n": 200
+ "a": "item",
+ "t": "10000001",
+ "n": 11
}
]
},
{
"key": 3,
- "recruitment_type": [],
- "star3w": 940,
- "star4w": 52,
- "star5w": 8,
- "protect": 100,
- "p3pool": "pro_pool30003",
- "p4pool": "pro_pool30004",
- "p5pool": "pro_pool30005",
- "n3pool": "base_pool30003",
- "n4pool": "base_pool30004",
- "n5pool": "base_pool30005",
+ "recruitment_type": [
+ {
+ "k": 3,
+ "s": "base_pool1"
+ },
+ {
+ "k": 6,
+ "s": "base_pool1"
+ },
+ {
+ "k": 9,
+ "s": "base_pool1"
+ }
+ ],
+ "star3w": 900,
+ "star4w": 94,
+ "star5w": 6,
+ "protect": 50,
+ "p3pool": "base_pool7",
+ "p4pool": "base_pool8",
+ "p5pool": "base_pool9",
+ "n3pool": "base_pool7",
+ "n4pool": "base_pool8",
+ "n5pool": "base_pool9",
"baodi4": 10,
- "baidi5": 100,
+ "baidi5": 0,
"etime": -1,
"permission": 1,
"consumeA": [
{
"a": "item",
- "t": "10000021",
- "n": 1
+ "t": "10000001",
+ "n": 3
}
],
"consumeB": [
{
"a": "item",
- "t": "10000031",
- "n": 10
+ "t": "10000001",
+ "n": 12
}
]
},
{
"key": 4,
- "recruitment_type": [],
- "star3w": 940,
- "star4w": 52,
- "star5w": 8,
- "protect": 100,
- "p3pool": "pro_pool40003",
- "p4pool": "pro_pool40004",
- "p5pool": "pro_pool40005",
- "n3pool": "base_pool40003",
- "n4pool": "base_pool40004",
- "n5pool": "base_pool40005",
+ "recruitment_type": [
+ {
+ "k": 3,
+ "s": "base_pool1"
+ },
+ {
+ "k": 6,
+ "s": "base_pool1"
+ },
+ {
+ "k": 9,
+ "s": "base_pool1"
+ }
+ ],
+ "star3w": 900,
+ "star4w": 94,
+ "star5w": 6,
+ "protect": 50,
+ "p3pool": "base_pool8",
+ "p4pool": "base_pool9",
+ "p5pool": "base_pool10",
+ "n3pool": "base_pool8",
+ "n4pool": "base_pool9",
+ "n5pool": "base_pool10",
"baodi4": 10,
- "baidi5": 100,
+ "baidi5": 0,
"etime": -1,
"permission": 1,
"consumeA": [
{
"a": "item",
- "t": "10000022",
- "n": 1
+ "t": "10000001",
+ "n": 4
}
],
"consumeB": [
{
"a": "item",
- "t": "10000032",
- "n": 10
+ "t": "10000001",
+ "n": 13
}
]
},
{
"key": 5,
- "recruitment_type": [],
- "star3w": 940,
- "star4w": 52,
- "star5w": 8,
- "protect": 100,
- "p3pool": "pro_pool50003",
- "p4pool": "pro_pool50004",
- "p5pool": "pro_pool50005",
- "n3pool": "base_pool50003",
- "n4pool": "base_pool50004",
- "n5pool": "base_pool50005",
+ "recruitment_type": [
+ {
+ "k": 3,
+ "s": "base_pool1"
+ },
+ {
+ "k": 6,
+ "s": "base_pool1"
+ },
+ {
+ "k": 9,
+ "s": "base_pool1"
+ }
+ ],
+ "star3w": 900,
+ "star4w": 94,
+ "star5w": 6,
+ "protect": 50,
+ "p3pool": "base_pool9",
+ "p4pool": "base_pool10",
+ "p5pool": "base_pool11",
+ "n3pool": "base_pool9",
+ "n4pool": "base_pool10",
+ "n5pool": "base_pool11",
"baodi4": 10,
- "baidi5": 100,
+ "baidi5": 0,
"etime": -1,
"permission": 1,
"consumeA": [
{
"a": "item",
- "t": "10000023",
- "n": 1
+ "t": "10000001",
+ "n": 5
}
],
"consumeB": [
{
"a": "item",
- "t": "10000033",
- "n": 10
- }
- ]
- },
- {
- "key": 6,
- "recruitment_type": [],
- "star3w": 940,
- "star4w": 52,
- "star5w": 8,
- "protect": 100,
- "p3pool": "pro_pool50003",
- "p4pool": "pro_pool50004",
- "p5pool": "pro_pool50005",
- "n3pool": "base_pool50003",
- "n4pool": "base_pool50004",
- "n5pool": "base_pool50005",
- "baodi4": 10,
- "baidi5": 100,
- "etime": -1,
- "permission": 1,
- "consumeA": [
- {
- "a": "item",
- "t": "10000024",
- "n": 1
- }
- ],
- "consumeB": [
- {
- "a": "item",
- "t": "10000034",
- "n": 10
+ "t": "10000001",
+ "n": 14
}
]
}
diff --git a/bin/json/game_drawweight.json b/bin/json/game_drawweight.json
index 7384d5a93..7b7c0e259 100644
--- a/bin/json/game_drawweight.json
+++ b/bin/json/game_drawweight.json
@@ -1,402 +1,542 @@
[
{
+ "id": 1,
+ "dtype": 1,
"key": 1,
"weight": 0
},
{
+ "id": 2,
+ "dtype": 1,
"key": 2,
"weight": 0
},
{
+ "id": 3,
+ "dtype": 1,
"key": 3,
"weight": 0
},
{
+ "id": 4,
+ "dtype": 1,
"key": 4,
"weight": 0
},
{
+ "id": 5,
+ "dtype": 1,
"key": 5,
"weight": 0
},
{
+ "id": 6,
+ "dtype": 1,
"key": 6,
"weight": 0
},
{
+ "id": 7,
+ "dtype": 1,
"key": 7,
"weight": 0
},
{
+ "id": 8,
+ "dtype": 1,
"key": 8,
"weight": 0
},
{
+ "id": 9,
+ "dtype": 1,
"key": 9,
"weight": 0
},
{
+ "id": 10,
+ "dtype": 1,
"key": 10,
"weight": 0
},
{
+ "id": 11,
+ "dtype": 1,
"key": 11,
"weight": 0
},
{
+ "id": 12,
+ "dtype": 1,
"key": 12,
"weight": 0
},
{
+ "id": 13,
+ "dtype": 1,
"key": 13,
"weight": 0
},
{
+ "id": 14,
+ "dtype": 1,
"key": 14,
"weight": 0
},
{
+ "id": 15,
+ "dtype": 1,
"key": 15,
"weight": 0
},
{
+ "id": 16,
+ "dtype": 1,
"key": 16,
"weight": 0
},
{
+ "id": 17,
+ "dtype": 1,
"key": 17,
"weight": 0
},
{
+ "id": 18,
+ "dtype": 1,
"key": 18,
"weight": 0
},
{
+ "id": 19,
+ "dtype": 1,
"key": 19,
"weight": 0
},
{
+ "id": 20,
+ "dtype": 1,
"key": 20,
"weight": 0
},
{
+ "id": 21,
+ "dtype": 1,
"key": 21,
"weight": 0
},
{
+ "id": 22,
+ "dtype": 1,
"key": 22,
"weight": 0
},
{
+ "id": 23,
+ "dtype": 1,
"key": 23,
"weight": 0
},
{
+ "id": 24,
+ "dtype": 1,
"key": 24,
"weight": 0
},
{
+ "id": 25,
+ "dtype": 1,
"key": 25,
"weight": 0
},
{
+ "id": 26,
+ "dtype": 1,
"key": 26,
"weight": 0
},
{
+ "id": 27,
+ "dtype": 1,
"key": 27,
"weight": 0
},
{
+ "id": 28,
+ "dtype": 1,
"key": 28,
"weight": 0
},
{
+ "id": 29,
+ "dtype": 1,
"key": 29,
"weight": 0
},
{
+ "id": 30,
+ "dtype": 1,
"key": 30,
"weight": 0
},
{
+ "id": 31,
+ "dtype": 1,
"key": 31,
"weight": 0
},
{
+ "id": 32,
+ "dtype": 1,
"key": 32,
"weight": 0
},
{
+ "id": 33,
+ "dtype": 1,
"key": 33,
"weight": 0
},
{
+ "id": 34,
+ "dtype": 1,
"key": 34,
"weight": 0
},
{
+ "id": 35,
+ "dtype": 1,
"key": 35,
"weight": 0
},
{
+ "id": 36,
+ "dtype": 1,
"key": 36,
"weight": 0
},
{
+ "id": 37,
+ "dtype": 1,
"key": 37,
"weight": 0
},
{
+ "id": 38,
+ "dtype": 1,
"key": 38,
"weight": 0
},
{
+ "id": 39,
+ "dtype": 1,
"key": 39,
"weight": 0
},
{
+ "id": 40,
+ "dtype": 1,
"key": 40,
"weight": 0
},
{
+ "id": 41,
+ "dtype": 1,
"key": 41,
"weight": 0
},
{
+ "id": 42,
+ "dtype": 1,
"key": 42,
"weight": 0
},
{
+ "id": 43,
+ "dtype": 1,
"key": 43,
"weight": 0
},
{
+ "id": 44,
+ "dtype": 1,
"key": 44,
"weight": 0
},
{
+ "id": 45,
+ "dtype": 1,
"key": 45,
"weight": 0
},
{
+ "id": 46,
+ "dtype": 1,
"key": 46,
"weight": 0
},
{
+ "id": 47,
+ "dtype": 1,
"key": 47,
"weight": 0
},
{
+ "id": 48,
+ "dtype": 1,
"key": 48,
"weight": 0
},
{
+ "id": 49,
+ "dtype": 1,
"key": 49,
"weight": 0
},
{
+ "id": 50,
+ "dtype": 1,
"key": 50,
"weight": 0
},
{
+ "id": 51,
+ "dtype": 1,
"key": 51,
"weight": 0
},
{
+ "id": 52,
+ "dtype": 1,
"key": 52,
"weight": 0
},
{
+ "id": 53,
+ "dtype": 1,
"key": 53,
"weight": 0
},
{
+ "id": 54,
+ "dtype": 1,
"key": 54,
"weight": 0
},
{
+ "id": 55,
+ "dtype": 1,
"key": 55,
"weight": 0
},
{
+ "id": 56,
+ "dtype": 1,
"key": 56,
"weight": 0
},
{
+ "id": 57,
+ "dtype": 1,
"key": 57,
"weight": 0
},
{
+ "id": 58,
+ "dtype": 1,
"key": 58,
"weight": 0
},
{
+ "id": 59,
+ "dtype": 1,
"key": 59,
"weight": 0
},
{
+ "id": 60,
+ "dtype": 1,
"key": 60,
"weight": 0
},
{
+ "id": 61,
+ "dtype": 1,
"key": 61,
- "weight": 0
+ "weight": 10
},
{
+ "id": 62,
+ "dtype": 1,
"key": 62,
- "weight": 0
+ "weight": 20
},
{
+ "id": 63,
+ "dtype": 1,
"key": 63,
- "weight": 0
+ "weight": 30
},
{
+ "id": 64,
+ "dtype": 1,
"key": 64,
- "weight": 0
+ "weight": 40
},
{
+ "id": 65,
+ "dtype": 1,
"key": 65,
- "weight": 0
+ "weight": 50
},
{
+ "id": 66,
+ "dtype": 1,
"key": 66,
- "weight": 0
+ "weight": 60
},
{
+ "id": 67,
+ "dtype": 1,
"key": 67,
- "weight": 0
+ "weight": 70
},
{
+ "id": 68,
+ "dtype": 1,
"key": 68,
- "weight": 0
+ "weight": 80
},
{
+ "id": 69,
+ "dtype": 1,
"key": 69,
- "weight": 0
+ "weight": 90
},
{
+ "id": 70,
+ "dtype": 1,
"key": 70,
- "weight": 0
+ "weight": 100
},
{
+ "id": 71,
+ "dtype": 1,
"key": 71,
- "weight": 0
+ "weight": 110
},
{
+ "id": 72,
+ "dtype": 1,
"key": 72,
- "weight": 0
+ "weight": 120
},
{
+ "id": 73,
+ "dtype": 1,
"key": 73,
- "weight": 0
+ "weight": 130
},
{
+ "id": 74,
+ "dtype": 1,
"key": 74,
- "weight": 0
+ "weight": 140
},
{
+ "id": 75,
+ "dtype": 1,
"key": 75,
- "weight": 0
+ "weight": 150
},
{
+ "id": 76,
+ "dtype": 1,
"key": 76,
- "weight": 0
+ "weight": 160
},
{
+ "id": 77,
+ "dtype": 1,
"key": 77,
- "weight": 0
+ "weight": 170
},
{
+ "id": 78,
+ "dtype": 1,
"key": 78,
- "weight": 0
+ "weight": 180
},
{
+ "id": 79,
+ "dtype": 1,
"key": 79,
- "weight": 0
+ "weight": 190
},
{
+ "id": 80,
+ "dtype": 1,
"key": 80,
- "weight": 0
+ "weight": 200
},
{
+ "id": 81,
+ "dtype": 1,
"key": 81,
- "weight": 2
+ "weight": 210
},
{
+ "id": 82,
+ "dtype": 1,
"key": 82,
- "weight": 12
+ "weight": 220
},
{
+ "id": 83,
+ "dtype": 1,
"key": 83,
- "weight": 23
+ "weight": 230
},
{
+ "id": 84,
+ "dtype": 1,
"key": 84,
- "weight": 55
+ "weight": 240
},
{
+ "id": 85,
+ "dtype": 1,
"key": 85,
- "weight": 127
+ "weight": 250
},
{
+ "id": 86,
+ "dtype": 1,
"key": 86,
- "weight": 208
+ "weight": 260
},
{
+ "id": 87,
+ "dtype": 1,
"key": 87,
- "weight": 303
+ "weight": 270
},
{
+ "id": 88,
+ "dtype": 1,
"key": 88,
- "weight": 414
+ "weight": 280
},
{
+ "id": 89,
+ "dtype": 1,
"key": 89,
- "weight": 546
+ "weight": 290
},
{
+ "id": 90,
+ "dtype": 1,
"key": 90,
- "weight": 705
- },
- {
- "key": 91,
- "weight": 901
- },
- {
- "key": 92,
- "weight": 1148
- },
- {
- "key": 93,
- "weight": 1468
- },
- {
- "key": 94,
- "weight": 1903
- },
- {
- "key": 95,
- "weight": 2523
- },
- {
- "key": 96,
- "weight": 3481
- },
- {
- "key": 97,
- "weight": 5158
- },
- {
- "key": 98,
- "weight": 8848
- },
- {
- "key": 99,
- "weight": 23608
- },
- {
- "key": 100,
- "weight": 999999
+ "weight": 300
}
]
\ No newline at end of file
diff --git a/bin/json/game_global.json b/bin/json/game_global.json
index e001d8ba6..255a324c8 100644
--- a/bin/json/game_global.json
+++ b/bin/json/game_global.json
@@ -46,104 +46,7 @@
"draw_toplimit": 9999,
"draw10_star4_max": 8,
"draw10_star5_max": 2,
- "draw_floor_star4": 20,
- "draw_floor_star5": 100,
"duplicate_removal": 1,
- "base_pool_cost": {
- "a": "item",
- "t": "10000001",
- "n": 1
- },
- "camp1_pool_cost": {
- "a": "item",
- "t": "10000001",
- "n": 1
- },
- "camp2_pool_cost": {
- "a": "item",
- "t": "10000001",
- "n": 1
- },
- "camp3_pool_cost": {
- "a": "item",
- "t": "10000001",
- "n": 1
- },
- "camp4_pool_cost": {
- "a": "item",
- "t": "10000001",
- "n": 1
- },
- "base_pool_10cost": {
- "a": "item",
- "t": "10000001",
- "n": 10
- },
- "camp1_pool_10cost": {
- "a": "item",
- "t": "10000001",
- "n": 10
- },
- "camp2_pool_10cost": {
- "a": "item",
- "t": "10000001",
- "n": 10
- },
- "camp3_pool_10cost": {
- "a": "item",
- "t": "10000001",
- "n": 10
- },
- "camp4_pool_10cost": {
- "a": "item",
- "t": "10000001",
- "n": 10
- },
- "camp1_pool1": "camp1_pool",
- "camp2_pool1": "camp2_pool",
- "camp3_pool1": "camp3_pool",
- "camp4_pool1": "camp4_pool",
- "base_pool1": {
- "s": 1,
- "e": 1,
- "p": "base_pool1"
- },
- "base_pool2": {
- "s": 2,
- "e": 2,
- "p": "base_pool2"
- },
- "base_pool3": {
- "s": 3,
- "e": 3,
- "p": "base_pool3"
- },
- "base_pool4": {
- "s": 4,
- "e": 4,
- "p": "base_pool4"
- },
- "base_pool5": {
- "s": 5,
- "e": 5,
- "p": "base_pool5"
- },
- "base_pool6": {
- "s": 6,
- "e": 6,
- "p": "base_pool6"
- },
- "base_pool7": {
- "s": 7,
- "e": 999999999,
- "p": "base_pool7"
- },
- "base_pool_star3": 333,
- "base_pool_star4": 333,
- "base_pool_star5": 334,
- "camp_pool_star3": 9500,
- "camp_pool_star4": 900,
- "camp_pool_star5": 100,
"gourmet": 36000,
"smithy_maxplayer": 20,
"smithy_maxtime": 36000,
@@ -390,17 +293,6 @@
7,
10
],
- "DrawCard_5StarsInRange": [
- 1,
- 29,
- 5
- ],
- "DrawCard_5StarsInRange1": [
- 30,
- 49,
- 5
- ],
- "DrawCard_5StarsInRange1_pool": "base_pool7",
"DrawCard_ContinuousRestriction_Star5": 20,
"DrawCard_ContinuousRestriction_Camp": 2,
"EquipmentConsumption": [
diff --git a/bin/json/game_signextra.json b/bin/json/game_signextra.json
index 91265c98d..633a546e7 100644
--- a/bin/json/game_signextra.json
+++ b/bin/json/game_signextra.json
@@ -19,7 +19,7 @@
"id": 2,
"txt": {
"key": "sign_sign_extra_txt_2",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{1}次领取"
},
"day": 14,
"groups": 1,
@@ -35,7 +35,7 @@
"id": 3,
"txt": {
"key": "sign_sign_extra_txt_3",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{2}次领取"
},
"day": 21,
"groups": 1,
@@ -51,7 +51,7 @@
"id": 4,
"txt": {
"key": "sign_sign_extra_txt_4",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{3}次领取"
},
"day": 7,
"groups": 2,
@@ -67,7 +67,7 @@
"id": 5,
"txt": {
"key": "sign_sign_extra_txt_5",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{4}次领取"
},
"day": 14,
"groups": 2,
@@ -83,7 +83,7 @@
"id": 6,
"txt": {
"key": "sign_sign_extra_txt_6",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{5}次领取"
},
"day": 21,
"groups": 2,
@@ -99,7 +99,7 @@
"id": 7,
"txt": {
"key": "sign_sign_extra_txt_7",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{6}次领取"
},
"day": 7,
"groups": 3,
@@ -115,7 +115,7 @@
"id": 8,
"txt": {
"key": "sign_sign_extra_txt_8",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{7}次领取"
},
"day": 14,
"groups": 3,
@@ -131,7 +131,7 @@
"id": 9,
"txt": {
"key": "sign_sign_extra_txt_9",
- "text": "累计完成拼图{0}次领取"
+ "text": "累计完成拼图{8}次领取"
},
"day": 21,
"groups": 3,
diff --git a/modules/hero/api_drawCard.go b/modules/hero/api_drawCard.go
index 9607d0188..0bff66560 100644
--- a/modules/hero/api_drawCard.go
+++ b/modules/hero/api_drawCard.go
@@ -1,15 +1,13 @@
package hero
import (
- "crypto/rand"
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
- "math/big"
)
func (this *apiComp) DrawCardCheck(session comm.IUserSession, req *pb.HeroDrawCardReq) (errdata *pb.ErrorData) {
- if req.DrawType < 0 && (req.DrawCount == 1 || req.DrawCount == 10) { // 只能是单抽或10抽
+ if req.DrawType < 0 || (req.DrawCount != 1 && req.DrawCount != 10) { // 只能是单抽或10抽
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
@@ -21,252 +19,161 @@ func (this *apiComp) DrawCardCheck(session comm.IUserSession, req *pb.HeroDrawCa
//抽卡
func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq) (errdata *pb.ErrorData) {
var (
- szCards []string // 最终抽到的卡牌
- drawCount int32 // 抽卡次数
- szStar []int32 //星级
- costRes []*cfg.Gameatn // 消耗
- star4Max int32 // 10连抽最大4星数量
- star5Max int32 // 10连抽最大5星数量
- cfgDraw *cfg.GameGlobalData
- costAtn *cfg.Gameatn
+ szCards []string // 最终抽到的卡牌
+ drawCount int32 // 抽卡次数
+ szStar []int32 //星级
+ costRes []*cfg.Gameatn // 消耗
+ star4Count int32 // 10连抽4星数量
+ star5Count int32 // 10连抽5星数量
+ cfgGlobal *cfg.GameGlobalData // 全局配置
heroRecord *pb.DBHeroRecord
- pool string // 当前抽对应的卡池
atno []*pb.UserAtno // 最终获得的资源
strPool []string // 10连跨多个卡池情况
update map[string]interface{}
normalDraw bool // 是否是普通抽
+ drawConf *cfg.GameDrawPoolData
+ err error
+
+ IsBaodiPool bool // 是否是保底卡池
+ appointmap map[int32]string // 指定次数抽卡到指定卡池
)
+ appointmap = make(map[int32]string)
+ szCards = make([]string, 0)
+ heroRecord, _ = this.module.modelRecord.GetHeroRecord(session.GetUserId())
+ if heroRecord.Baodi4 == nil {
+ heroRecord.Baodi4 = make(map[int32]int32)
+ }
+ if heroRecord.Baodi5 == nil {
+ heroRecord.Baodi5 = make(map[int32]int32)
+ }
+ if heroRecord.Count == nil {
+ heroRecord.Count = make(map[int32]int32)
+ }
+ // 准备数据
+ /////////////////////////////////////
+ drawConf, err = this.module.configure.GetHeroDrawConfigByType(req.DrawType + 1) // 获取新的抽卡配置
+ if err != nil {
+ errdata = &pb.ErrorData{
+ Code: pb.ErrorCode_ReqParameterError,
+ Title: pb.ErrorCode_ReqParameterError.ToString(),
+ Message: err.Error(),
+ }
+ return
+ }
+ for _, v := range drawConf.RecruitmentType {
+ appointmap[v.K] = v.S // 指定次抽数据
+ }
+
+ ////////////////////////////////////////////////////////
+
update = make(map[string]interface{})
- cfgDraw = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件
- if cfgDraw == nil {
+ cfgGlobal = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件
+ if cfgGlobal == nil {
return
}
if errdata = this.DrawCardCheck(session, req); errdata != nil {
return
}
- szCards = make([]string, 0)
- heroRecord, _ = this.module.modelRecord.GetHeroRecord(session.GetUserId())
- drawCount = heroRecord.Drawcount
-
- if req.DrawType == 0 { // 普通卡池抽卡
- normalDraw = true
- // 获取普通抽卡池
+ drawCount = heroRecord.Count[req.DrawType] // 获取当前阵容抽卡次数
+ if true { // 普通卡池抽卡
+ ////// 获取消耗 star
if req.DrawCount == 1 {
- costAtn = cfgDraw.BasePoolCost
+ costRes = drawConf.ConsumeA // 单抽消耗
} else {
- costAtn = cfgDraw.BasePool10cost
+ costRes = drawConf.ConsumeB // 十连消耗
}
- costRes = append(costRes, costAtn)
+
if errdata = this.module.CheckRes(session, costRes); errdata != nil { // 消耗数量不足直接返回
return
}
-
- for i := 0; i < int(req.DrawCount); i++ {
- drawCount += 1
- pool = this.module.modelHero.CheckPool(drawCount, cfgDraw)
-
- strPool = append(strPool, pool)
- ret := this.module.CheckCondition(session.GetUserId())
- if ret == true { // 命中插入5星英雄
- szStar = append(szStar, 5)
- heroRecord.Star5 = 0 // 重置保底
- star5Max++ // 记录当前 5星数量
+ // 校验是否达到保底卡池
+ if drawConf.Protect >= drawCount {
+ IsBaodiPool = true
+ }
+ ///// 获取消耗 end
+ for i := 1; i <= int(req.DrawCount); i++ { // 一张一张的抽
+ drawCount++
+ if v, ok := appointmap[drawCount]; ok { // 优先校验是否是指定抽
+ strPool = append(strPool, v) //找到了
continue
}
- // 3,4,5 星权重
- starWeight := []int32{cfgDraw.BasePoolStar3, cfgDraw.BasePoolStar4, cfgDraw.BasePoolStar5}
+ starWeight := []int32{drawConf.Star3w, drawConf.Star4w, drawConf.Star5w} // 随机获取三星
+ if drawConf.Permission != -1 && heroRecord.Baodi5[req.DrawType] > 0 { // 橙权递增
+ starWeight[2] += this.module.configure.GetHeroDrawWeightConfigById(drawConf.Permission, heroRecord.Baodi5[req.DrawType])
+ }
starIndex := comm.GetRandW(starWeight) // 3 4 5 星索引
-
- // 特殊规则 DrawCard_5StarsInRange 第2-30次抽奖必出一个5星英雄(普通卡池)
- inRangeConf := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange
- if len(inRangeConf) == 3 {
- iStart := inRangeConf[0] // 抽卡开始
- iEnd := inRangeConf[1] // 抽卡结束
- star := inRangeConf[2]
- if star >= 3 { // 保底必须三星+
- if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
- n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
- if n.Int64() < 1 { // 抽中
- starIndex = star - 3
- heroRecord.Inevitable = heroRecord.Drawcount
- update["inevitable"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- continue
- }
- }
- // 保底情况
- if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
- starIndex = star - 3
- heroRecord.Inevitable = heroRecord.Drawcount
- update["inevitable"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- continue
- }
+ if IsBaodiPool {
+ if starIndex == 0 {
+ strPool = append(strPool, drawConf.P3pool)
+ } else if starIndex == 1 {
+ star4Count++
+ heroRecord.Baodi4[req.DrawType] = 0
+ strPool = append(strPool, drawConf.P4pool)
+ } else if starIndex == 2 {
+ star5Count++
+ heroRecord.Baodi5[req.DrawType] = 0
+ strPool = append(strPool, drawConf.P5pool)
}
- }
- inRangeConf1 := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1
- if len(inRangeConf1) == 3 {
- iStart := inRangeConf1[0] // 抽卡开始
- iEnd := inRangeConf1[1] // 抽卡结束
- star := inRangeConf1[2]
- if star >= 3 { // 保底必须三星+
- if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
- n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
- if n.Int64() < 1 { // 抽中
- starIndex = star - 3
- heroRecord.Inevitable = heroRecord.Drawcount
- update["inevitable1"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- // 修改卡池
- newPoll := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1Pool
- if newPoll != "" {
- strPool[len(strPool)-1] = newPoll
- }
- continue
- }
- }
- // 保底情况
- if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
- starIndex = star - 3
- heroRecord.Inevitable1 = heroRecord.Drawcount
- update["inevitable1"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- // 修改卡池
- newPoll := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1Pool
- if newPoll != "" {
- strPool[len(strPool)-1] = newPoll
- }
- continue
- }
- }
- }
- heroRecord.Star4++ // 4星保底数量+1
- heroRecord.Star5++ // 5星保底数量+1
- if starIndex == 1 {
- heroRecord.Star4 = 0
- star4Max++
- } else if starIndex == 2 {
- star5Max++
- heroRecord.Star5 = 0
- }
- if star4Max >= cfgDraw.Draw10Star4Max || star5Max >= cfgDraw.Draw10Star5Max { // 达到10连抽最大(4,5星)数量 直接给三星
- starIndex = 0
} else {
- // 普通卡池保底
- if cfgDraw.DrawFloorStar4 <= heroRecord.Star4 {
- heroRecord.Star4 = 0
- starIndex = 1
- }
- if cfgDraw.DrawFloorStar5 <= heroRecord.Star5 {
- heroRecord.Star5 = 0
- starIndex = 2
+ if starIndex == 0 {
+ strPool = append(strPool, drawConf.N3pool)
+ } else if starIndex == 1 {
+ star4Count++
+ heroRecord.Baodi4[req.DrawType] = 0
+ strPool = append(strPool, drawConf.N4pool)
+ } else if starIndex == 2 {
+ star5Count++
+ heroRecord.Baodi5[req.DrawType] = 0
+ strPool = append(strPool, drawConf.N5pool)
}
}
-
- szStar = append(szStar, starIndex+3)
- if len(szStar) >= int(req.DrawCount) {
- break
+ // 判断是否必出5星
+ if heroRecord.Baodi5[req.DrawType] >= drawConf.Baidi5 {
+ heroRecord.Baodi5[req.DrawType] = 0
+ star5Count++
+ if IsBaodiPool {
+ strPool[len(strPool)-1] = drawConf.P5pool
+ } else {
+ strPool[len(strPool)-1] = drawConf.N5pool
+ }
+ continue
}
- }
- } else { // 所有阵营抽卡都走这里
- drawCount += req.DrawCount
- if req.DrawCount == 1 {
- switch req.DrawType {
- case 1:
- pool = cfgDraw.Camp1Pool1
-
- costAtn = cfgDraw.Camp1PoolCost
-
- case 2:
- pool = cfgDraw.Camp2Pool1
- costAtn = cfgDraw.Camp2PoolCost
- case 3:
- pool = cfgDraw.Camp3Pool1
- costAtn = cfgDraw.Camp3PoolCost
- case 4:
- pool = cfgDraw.Camp4Pool1
- costAtn = cfgDraw.Camp4PoolCost
+ // 判断是否必出4星
+ if heroRecord.Baodi4[req.DrawType] >= drawConf.Baodi4 {
+ heroRecord.Baodi4[req.DrawType] = 0
+ star4Count++
+ if IsBaodiPool {
+ strPool[len(strPool)-1] = drawConf.P4pool
+ } else {
+ strPool[len(strPool)-1] = drawConf.N4pool
+ }
+ continue
}
- strPool = append(strPool, pool)
- } else {
- costAtn = cfgDraw.Camp1PoolCost
- switch req.DrawType {
- case 1:
- pool = cfgDraw.Camp1Pool1
- costAtn = cfgDraw.Camp1Pool10cost
-
- case 2:
- pool = cfgDraw.Camp2Pool1
- costAtn = cfgDraw.Camp2Pool10cost
- case 3:
- pool = cfgDraw.Camp3Pool1
- costAtn = cfgDraw.Camp3Pool10cost
- case 4:
- pool = cfgDraw.Camp4Pool1
- costAtn = cfgDraw.Camp4Pool10cost
- }
- for i := 0; i < int(req.DrawCount); i++ {
- strPool = append(strPool, pool)
- }
- }
-
- costRes = append(costRes, costAtn)
-
- //阵营消耗
- if errdata = this.module.CheckRes(session, costRes); errdata != nil { // 消耗数量不足直接返回
- return
- }
- for {
- starWeight := []int32{cfgDraw.CampPoolStar3, cfgDraw.CampPoolStar4, cfgDraw.CampPoolStar5}
-
- starIndex := comm.GetRandW(starWeight)
- if starIndex == 1 {
- star4Max++
- } else if starIndex == 2 {
- star5Max++
- }
- if star4Max >= cfgDraw.Draw10Star4Max || star5Max >= cfgDraw.Draw10Star5Max {
- starIndex = 0
- }
- szStar = append(szStar, starIndex)
- if len(szStar) >= int(req.DrawCount) {
- break
+ heroRecord.Baodi5[req.DrawType]++
+ heroRecord.Baodi4[req.DrawType]++
+ if req.DrawType == 10 {
+ if star4Count >= cfgGlobal.Draw10Star4Max { // 10连抽最大4星数量
+ if IsBaodiPool {
+ strPool[len(strPool)-1] = drawConf.P3pool
+ } else {
+ strPool[len(strPool)-1] = drawConf.N3pool
+ }
+ }
+ if star5Count >= cfgGlobal.Draw10Star5Max { // 10连抽最大5星数量
+ if IsBaodiPool {
+ strPool[len(strPool)-1] = drawConf.P3pool
+ } else {
+ strPool[len(strPool)-1] = drawConf.N3pool
+ }
+ }
}
}
}
- for index, star := range szStar {
-
- _data, err := this.module.configure.GetPollByType(strPool[index])
+ // 通过卡池获得最终的英雄
+ for _, v := range strPool {
+ card, err := this.module.configure.GetHeroByPool(v)
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ConfigNoFound,
@@ -275,35 +182,7 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq
}
return
}
- sz := make([]int32, 0)
- for _, v := range _data[int32(star)] {
- sz = append(sz, v.Weight)
- }
- randomIndex := comm.GetRandW(sz)
-
- if v, ok := _data[int32(star)]; ok {
- if int32(len(v)) > randomIndex {
- cardId := v[randomIndex].Id
- if star == 5 { // 抽出5星英雄后A次抽奖内不会再抽到5星英雄(普通卡池+阵营卡池)
- curDrawCount := drawCount - req.DrawCount
- if drawCount <= 10 { // 前10次不计算(连续抽卡最多连续出A个相同阵营的英雄)
- szCards = append(szCards, cardId)
- continue
- }
- newID := this.module.ContinuousRestriction(session.GetUserId(), cardId, curDrawCount+int32(index+1), strPool[index])
- szCards = append(szCards, newID)
- continue
- }
- szCards = append(szCards, cardId)
- // 普通卡池 最多连续出A个相同阵营的英雄
- if req.DrawType == 0 {
- newId := this.module.DrawCardContinuousRestrictionCamp(cardId, heroRecord.Race, sz, v)
- if cardId != newId {
- szCards[len(szCards)-1] = newId
- }
- }
- }
- }
+ szCards = append(szCards, card)
}
// 消耗道具
@@ -312,11 +191,12 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq
}
heroRecord.Totalcount += req.DrawCount
heroRecord.Daycount += req.DrawCount
- update["star4"] = heroRecord.Star4
- update["star5"] = heroRecord.Star5
+
update["drawcount"] = drawCount
update["totalcount"] = heroRecord.Totalcount
update["daycount"] = heroRecord.Daycount
+ update["baodi4"] = heroRecord.Baodi4
+ update["baodi5"] = heroRecord.Baodi5
this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update)
rsp := &pb.HeroDrawCardResp{
Data: []*pb.AtnoData{},
@@ -343,6 +223,9 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq
}
session.SendMsg(string(this.module.GetType()), DrawCard, rsp)
+ if req.DrawType == 0 {
+ normalDraw = true
+ }
// 任务统计
this.module.SendTaskMsg(session, szStar, req.DrawCount, normalDraw)
return
diff --git a/modules/hero/api_drawCardFloor.go b/modules/hero/api_drawCardFloor.go
index d4692b62d..4f38b6e65 100644
--- a/modules/hero/api_drawCardFloor.go
+++ b/modules/hero/api_drawCardFloor.go
@@ -14,8 +14,8 @@ func (this *apiComp) DrawCardFloorCheck(session comm.IUserSession, req *pb.HeroD
func (this *apiComp) DrawCardFloor(session comm.IUserSession, req *pb.HeroDrawCardFloorReq) (errdata *pb.ErrorData) {
rsp := &pb.HeroDrawCardFloorResp{}
if heroRecord, err := this.module.modelRecord.GetHeroRecord(session.GetUserId()); err == nil {
- rsp.Star4 = heroRecord.Star4
- rsp.Star5 = heroRecord.Star5
+ rsp.Baodi4 = heroRecord.Baodi4
+ rsp.Baodi5 = heroRecord.Baodi5
rsp.Onebuy = heroRecord.Onebuy
rsp.Tenbuy = heroRecord.Tenbuy
}
diff --git a/modules/hero/api_drawCardv2.go b/modules/hero/api_drawCardv2.go
deleted file mode 100644
index a09f31478..000000000
--- a/modules/hero/api_drawCardv2.go
+++ /dev/null
@@ -1,349 +0,0 @@
-package hero
-
-import (
- "crypto/rand"
- "go_dreamfactory/comm"
- "go_dreamfactory/pb"
- cfg "go_dreamfactory/sys/configure/structs"
- "math/big"
-)
-
-func (this *apiComp) DrawCardV2Check(session comm.IUserSession, req *pb.HeroDrawCardReq) (errdata *pb.ErrorData) {
- if req.DrawType < 0 && (req.DrawCount == 1 || req.DrawCount == 10) { // 只能是单抽或10抽
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_ReqParameterError,
- Title: pb.ErrorCode_ReqParameterError.ToString(),
- }
- }
- return
-}
-
-//抽卡
-func (this *apiComp) DrawCardV2(session comm.IUserSession, req *pb.HeroDrawCardReq) (errdata *pb.ErrorData) {
- var (
- szCards []string // 最终抽到的卡牌
- drawCount int32 // 抽卡次数
- szStar []int32 //星级
- costRes []*cfg.Gameatn // 消耗
- star4Max int32 // 10连抽最大4星数量
- star5Max int32 // 10连抽最大5星数量
- cfgDraw *cfg.GameGlobalData
- costAtn *cfg.Gameatn
- heroRecord *pb.DBHeroRecord
- pool string // 当前抽对应的卡池
- atno []*pb.UserAtno // 最终获得的资源
- strPool []string // 10连跨多个卡池情况
- update map[string]interface{}
- normalDraw bool // 是否是普通抽
- )
- update = make(map[string]interface{})
- cfgDraw = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件
- if cfgDraw == nil {
- return
- }
- if errdata = this.DrawCardV2Check(session, req); errdata != nil {
- return
- }
- szCards = make([]string, 0)
-
- heroRecord, _ = this.module.modelRecord.GetHeroRecord(session.GetUserId())
- drawCount = heroRecord.Drawcount
-
- if req.DrawType == 0 { // 普通卡池抽卡
- normalDraw = true
- // 获取普通抽卡池
- if req.DrawCount == 1 {
- costAtn = cfgDraw.BasePoolCost
- } else {
- costAtn = cfgDraw.BasePool10cost
- }
- costRes = append(costRes, costAtn)
- if errdata = this.module.CheckRes(session, costRes); errdata != nil { // 消耗数量不足直接返回
- return
- }
-
- for i := 0; i < int(req.DrawCount); i++ {
- drawCount += 1
- pool = this.module.modelHero.CheckPool(drawCount, cfgDraw)
-
- strPool = append(strPool, pool)
- ret := this.module.CheckCondition(session.GetUserId())
- if ret == true { // 命中插入5星英雄
- szStar = append(szStar, 5)
- heroRecord.Star5 = 0 // 重置保底
- star5Max++ // 记录当前 5星数量
- continue
- }
- // 3,4,5 星权重
- starWeight := []int32{cfgDraw.BasePoolStar3, cfgDraw.BasePoolStar4, cfgDraw.BasePoolStar5}
-
- starIndex := comm.GetRandW(starWeight) // 3 4 5 星索引
-
- // 特殊规则 DrawCard_5StarsInRange 第2-30次抽奖必出一个5星英雄(普通卡池)
- inRangeConf := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange
- if len(inRangeConf) == 3 {
- iStart := inRangeConf[0] // 抽卡开始
- iEnd := inRangeConf[1] // 抽卡结束
- star := inRangeConf[2]
- if star >= 3 { // 保底必须三星+
- if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
- n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
- if n.Int64() < 1 { // 抽中
- starIndex = star - 3
- heroRecord.Inevitable = heroRecord.Drawcount
- update["inevitable"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- continue
- }
- }
- // 保底情况
- if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
- starIndex = star - 3
- heroRecord.Inevitable = heroRecord.Drawcount
- update["inevitable"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- continue
- }
- }
- }
- inRangeConf1 := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1
- if len(inRangeConf1) == 3 {
- iStart := inRangeConf1[0] // 抽卡开始
- iEnd := inRangeConf1[1] // 抽卡结束
- star := inRangeConf1[2]
- if star >= 3 { // 保底必须三星+
- if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
- n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
- if n.Int64() < 1 { // 抽中
- starIndex = star - 3
- heroRecord.Inevitable = heroRecord.Drawcount
- update["inevitable1"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- // 修改卡池
- newPoll := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1Pool
- if newPoll != "" {
- strPool[len(strPool)-1] = newPoll
- }
- continue
- }
- }
- // 保底情况
- if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
- starIndex = star - 3
- heroRecord.Inevitable1 = heroRecord.Drawcount
- update["inevitable1"] = heroRecord.Drawcount
- szStar = append(szStar, star)
- if star == 4 {
- heroRecord.Star4 = 0
- star4Max++
- } else if star == 5 {
- star5Max++
- heroRecord.Star5 = 0
- }
- // 修改卡池
- newPoll := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1Pool
- if newPoll != "" {
- strPool[len(strPool)-1] = newPoll
- }
- continue
- }
- }
- }
- heroRecord.Star4++ // 4星保底数量+1
- heroRecord.Star5++ // 5星保底数量+1
- if starIndex == 1 {
- heroRecord.Star4 = 0
- star4Max++
- } else if starIndex == 2 {
- star5Max++
- heroRecord.Star5 = 0
- }
- if star4Max >= cfgDraw.Draw10Star4Max || star5Max >= cfgDraw.Draw10Star5Max { // 达到10连抽最大(4,5星)数量 直接给三星
- starIndex = 0
- } else {
- // 普通卡池保底
- if cfgDraw.DrawFloorStar4 <= heroRecord.Star4 {
- heroRecord.Star4 = 0
- starIndex = 1
- }
- if cfgDraw.DrawFloorStar5 <= heroRecord.Star5 {
- heroRecord.Star5 = 0
- starIndex = 2
- }
- }
-
- szStar = append(szStar, starIndex+3)
- if len(szStar) >= int(req.DrawCount) {
- break
- }
- }
- } else { // 所有阵营抽卡都走这里
- drawCount += req.DrawCount
- if req.DrawCount == 1 {
- switch req.DrawType {
- case 1:
- pool = cfgDraw.Camp1Pool1
-
- costAtn = cfgDraw.Camp1PoolCost
-
- case 2:
- pool = cfgDraw.Camp2Pool1
- costAtn = cfgDraw.Camp2PoolCost
- case 3:
- pool = cfgDraw.Camp3Pool1
- costAtn = cfgDraw.Camp3PoolCost
- case 4:
- pool = cfgDraw.Camp4Pool1
- costAtn = cfgDraw.Camp4PoolCost
- }
- strPool = append(strPool, pool)
- } else {
- costAtn = cfgDraw.Camp1PoolCost
- switch req.DrawType {
- case 1:
- pool = cfgDraw.Camp1Pool1
- costAtn = cfgDraw.Camp1Pool10cost
-
- case 2:
- pool = cfgDraw.Camp2Pool1
- costAtn = cfgDraw.Camp2Pool10cost
- case 3:
- pool = cfgDraw.Camp3Pool1
- costAtn = cfgDraw.Camp3Pool10cost
- case 4:
- pool = cfgDraw.Camp4Pool1
- costAtn = cfgDraw.Camp4Pool10cost
- }
- for i := 0; i < int(req.DrawCount); i++ {
- strPool = append(strPool, pool)
- }
- }
-
- costRes = append(costRes, costAtn)
-
- //阵营消耗
- if errdata = this.module.CheckRes(session, costRes); errdata != nil { // 消耗数量不足直接返回
- return
- }
- for {
- starWeight := []int32{cfgDraw.CampPoolStar3, cfgDraw.CampPoolStar4, cfgDraw.CampPoolStar5}
-
- starIndex := comm.GetRandW(starWeight)
- if starIndex == 1 {
- star4Max++
- } else if starIndex == 2 {
- star5Max++
- }
- if star4Max >= cfgDraw.Draw10Star4Max || star5Max >= cfgDraw.Draw10Star5Max {
- starIndex = 0
- }
- szStar = append(szStar, starIndex)
- if len(szStar) >= int(req.DrawCount) {
- break
- }
- }
- }
- for index, star := range szStar {
-
- _data, err := this.module.configure.GetPollByType(strPool[index])
- if err != nil {
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_ConfigNoFound,
- Title: pb.ErrorCode_ConfigNoFound.ToString(),
- Message: err.Error(),
- }
- return
- }
- sz := make([]int32, 0)
- for _, v := range _data[int32(star)] {
- sz = append(sz, v.Weight)
- }
- randomIndex := comm.GetRandW(sz)
-
- if v, ok := _data[int32(star)]; ok {
- if int32(len(v)) > randomIndex {
- cardId := v[randomIndex].Id
- if star == 5 { // 抽出5星英雄后A次抽奖内不会再抽到5星英雄(普通卡池+阵营卡池)
- curDrawCount := drawCount - req.DrawCount
- if drawCount <= 10 { // 前10次不计算(连续抽卡最多连续出A个相同阵营的英雄)
- szCards = append(szCards, cardId)
- continue
- }
- newID := this.module.ContinuousRestriction(session.GetUserId(), cardId, curDrawCount+int32(index+1), strPool[index])
- szCards = append(szCards, newID)
- continue
- }
- szCards = append(szCards, cardId)
- // 普通卡池 最多连续出A个相同阵营的英雄
- if req.DrawType == 0 {
- newId := this.module.DrawCardContinuousRestrictionCamp(cardId, heroRecord.Race, sz, v)
- if cardId != newId {
- szCards[len(szCards)-1] = newId
- }
- }
- }
- }
- }
-
- // 消耗道具
- if errdata = this.module.ConsumeRes(session, costRes, true); errdata != nil {
- return
- }
- heroRecord.Totalcount += req.DrawCount
- heroRecord.Daycount += req.DrawCount
- update["star4"] = heroRecord.Star4
- update["star5"] = heroRecord.Star5
- update["drawcount"] = drawCount
- update["totalcount"] = heroRecord.Totalcount
- update["daycount"] = heroRecord.Daycount
- this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update)
- rsp := &pb.HeroDrawCardResp{
- Data: []*pb.AtnoData{},
- }
- for _, heroId := range szCards {
-
- if errdata, atno = this.module.DispenseAtno(session, []*cfg.Gameatn{{
- A: "hero",
- T: heroId,
- N: 1,
- }}, true); errdata == nil {
-
- rsp.Data = append(rsp.Data, &pb.AtnoData{Atno: atno})
- for _, v := range atno {
- if v.A == "hero" && v.N == 1 {
- if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil { // 广播 首次获得英雄
- this.chat.SendSysChatToWorld(comm.ChatSystem13, nil, 0, 0, user.Name, v.T)
- }
- }
- }
- } else {
- return
- }
- }
-
- session.SendMsg(string(this.module.GetType()), DrawCard, rsp)
- // 任务统计
- this.module.SendTaskMsg(session, szStar, req.DrawCount, normalDraw)
- return
-}
diff --git a/modules/hero/configure_comp.go b/modules/hero/configure_comp.go
index e22356b54..8bcab530d 100644
--- a/modules/hero/configure_comp.go
+++ b/modules/hero/configure_comp.go
@@ -15,37 +15,40 @@ import (
const moduleName = "hero"
const (
- equip_suit = "game_equipsuit.json" //装备套装表
- new_hero = "game_hero.json" //英雄
- hero_stargrow = "game_herostargrow.json" //英雄品质系数
- hero_levelgrow = "game_herolevelgrow.json" //英雄成长系数
- hero_starup = "game_herostarup.json" // 升星
- hero_levelup = "game_herolevelup.json" //英雄等级基础属性
- hero_exp = "game_heroexp.json" // 升级
- hero_skillup = "game_heroskilllevel.json" // 英雄技能升级
- game_skillatk = "game_skillatk.json" // 英雄技能
- hero_awaken = "game_heroawaken.json" // 英雄觉醒
- hero_drawcard = "game_drawcard.json" // 抽卡
- hero_drawupdraw = "game_drawupdraw.json" // 抽卡概率调整
- hero_drawcost = "game_drawcost.json" // 抽卡消耗
- hero_fusion = "game_herofusion.json" // 卡牌融合
- hero_talent = "game_herotalent.json" // 天赋详细数据
- hero_talentbox = "game_talentbox.json" // 天赋详细数据
+ equip_suit = "game_equipsuit.json" //装备套装表
+ new_hero = "game_hero.json" //英雄
+ hero_stargrow = "game_herostargrow.json" //英雄品质系数
+ hero_levelgrow = "game_herolevelgrow.json" //英雄成长系数
+ hero_starup = "game_herostarup.json" // 升星
+ hero_levelup = "game_herolevelup.json" //英雄等级基础属性
+ hero_exp = "game_heroexp.json" // 升级
+ hero_skillup = "game_heroskilllevel.json" // 英雄技能升级
+ game_skillatk = "game_skillatk.json" // 英雄技能
+ hero_awaken = "game_heroawaken.json" // 英雄觉醒
+ //hero_drawcard = "game_drawcard.json" // 抽卡
+ hero_drawupdraw = "game_drawupdraw.json" // 抽卡概率调整
+ hero_drawcost = "game_drawcost.json" // 抽卡消耗
+ hero_fusion = "game_herofusion.json" // 卡牌融合
+ hero_talent = "game_herotalent.json" // 天赋详细数据
+ hero_talentbox = "game_talentbox.json" // 天赋详细数据
game_shopitem = "game_shopitem.json"
hero_skill = "game_heroskill.json"
hero_draw = "game_drawpool.json" // 新版抽卡
hero_cardweight = "game_drawweight.json" // 新版抽卡权重
+ hero_cardpool = "game_cardpool.json" // 新版卡池
)
// /配置管理组件
type configureComp struct {
modules.MCompConfigure
- hlock sync.RWMutex
- drawCardCfg map[string]map[int32][]*cfg.GameDrawCardData // 第一个key 卡池id 第二个key 星级
- awakenMap map[int64]*cfg.GameHeroAwakenData
- starMap map[int64]*cfg.GameHeroStarupData
- module *Hero
+ hlock sync.RWMutex
+ //drawCardCfg map[string]map[int32][]*cfg.GameDrawCardData // 第一个key 卡池id 第二个key 星级
+ awakenMap map[int64]*cfg.GameHeroAwakenData
+ starMap map[int64]*cfg.GameHeroStarupData
+ module *Hero
+ starW map[int64]int32
+ cardPool map[string][]*cfg.GameCardPoolData
}
// 组件初始化接口
@@ -54,24 +57,24 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
err = this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*Hero)
err = this.LoadMultiConfigure(map[string]interface{}{
- equip_suit: cfg.NewGameEquipSuit,
- new_hero: cfg.NewGameHero,
- hero_stargrow: cfg.NewGameHeroStargrow,
- hero_levelgrow: cfg.NewGameHeroLevelgrow,
- hero_levelup: cfg.NewGameHeroLevelup,
- hero_exp: cfg.NewGameHeroExp,
- hero_skillup: cfg.NewGameHeroSkillLevel,
- game_skillatk: cfg.NewGameSkillAtk,
- hero_drawcard: cfg.NewGameDrawCard,
- hero_talent: cfg.NewGameHeroTalent,
- hero_talentbox: cfg.NewGameTalentBox,
- game_shopitem: cfg.NewGameShopitem,
- hero_skill: cfg.NewGameHeroSkill,
- hero_draw: cfg.NewGameDrawPool,
- hero_cardweight: cfg.NewGameDrawWeight,
+ equip_suit: cfg.NewGameEquipSuit,
+ new_hero: cfg.NewGameHero,
+ hero_stargrow: cfg.NewGameHeroStargrow,
+ hero_levelgrow: cfg.NewGameHeroLevelgrow,
+ hero_levelup: cfg.NewGameHeroLevelup,
+ hero_exp: cfg.NewGameHeroExp,
+ hero_skillup: cfg.NewGameHeroSkillLevel,
+ game_skillatk: cfg.NewGameSkillAtk,
+ //hero_drawcard: cfg.NewGameDrawCard,
+ hero_talent: cfg.NewGameHeroTalent,
+ hero_talentbox: cfg.NewGameTalentBox,
+ game_shopitem: cfg.NewGameShopitem,
+ hero_skill: cfg.NewGameHeroSkill,
+ hero_draw: cfg.NewGameDrawPool,
+ //hero_cardweight: cfg.NewGameDrawWeight,
})
- this.drawCardCfg = make(map[string]map[int32][]*cfg.GameDrawCardData, 0)
- configure.RegisterConfigure(hero_drawcard, cfg.NewGameDrawCard, this.SetHeroDrawConfig)
+ //this.drawCardCfg = make(map[string]map[int32][]*cfg.GameDrawCardData, 0)
+ //configure.RegisterConfigure(hero_drawcard, cfg.NewGameDrawCard, this.SetHeroDrawConfig)
this.awakenMap = make(map[int64]*cfg.GameHeroAwakenData, 0)
configure.RegisterConfigure(hero_awaken, cfg.NewGameHeroAwaken, func() {
if v, err := this.GetConfigure(hero_awaken); err == nil {
@@ -107,8 +110,40 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
err = fmt.Errorf("%T no is *cfg.Game_drawCard", v)
}
})
+ configure.RegisterConfigure(hero_cardweight, cfg.NewGameDrawWeight, func() {
+ if v, err := this.GetConfigure(hero_cardweight); err == nil {
+ if _configure, ok := v.(*cfg.GameDrawWeight); ok {
+ this.hlock.Lock()
+ defer this.hlock.Unlock()
+ this.starW = make(map[int64]int32)
+ for _, v := range _configure.GetDataList() {
+ this.starW[(int64(v.Dtype)<<16)+int64(v.Key)] = v.Weight
+ }
- this.GetHeroDrawConfigByType(1)
+ return
+ }
+ } else {
+ err = fmt.Errorf("%T no is *cfg.NewGameDrawWeight", v)
+ }
+ })
+
+ // 卡池初始化
+ configure.RegisterConfigure(hero_cardpool, cfg.NewGameCardPool, func() {
+ if v, err := this.GetConfigure(hero_cardpool); err == nil {
+ if _configure, ok := v.(*cfg.GameCardPool); ok {
+ this.hlock.Lock()
+ defer this.hlock.Unlock()
+ this.cardPool = make(map[string][]*cfg.GameCardPoolData)
+ for _, v := range _configure.GetDataList() {
+ this.cardPool[v.CardPoolType] = append(this.cardPool[v.CardPoolType], v)
+ }
+
+ return
+ }
+ } else {
+ err = fmt.Errorf("%T no is *cfg.NewGameCardPool", v)
+ }
+ })
return
}
@@ -151,40 +186,40 @@ func (this *configureComp) GetHeroAwakenConfig(hid string, phase int32) (cfg *cf
}
// 抽卡配置表
-func (this *configureComp) SetHeroDrawConfig() {
- var (
- v interface{}
- err error
- )
- if v, err = this.GetConfigure(hero_drawcard); err == nil {
- if _configure, ok := v.(*cfg.GameDrawCard); ok {
- this.hlock.Lock()
- this.drawCardCfg = make(map[string]map[int32][]*cfg.GameDrawCardData, 0)
- for _, v := range _configure.GetDataList() {
- if _, ok := this.drawCardCfg[v.CardPoolType]; !ok {
- this.drawCardCfg[v.CardPoolType] = make(map[int32][]*cfg.GameDrawCardData, 0)
- }
- if _, ok := this.drawCardCfg[v.CardPoolType][v.Star]; !ok {
- this.drawCardCfg[v.CardPoolType][v.Star] = make([]*cfg.GameDrawCardData, 0)
- }
- this.drawCardCfg[v.CardPoolType][v.Star] = append(this.drawCardCfg[v.CardPoolType][v.Star], v)
- }
- this.hlock.Unlock()
- // this.module.Debug("update cfg.Game_drawCard over")
- return
- }
- }
- err = fmt.Errorf("%T no is *cfg.Game_drawCard", v)
- return
-}
+// func (this *configureComp) SetHeroDrawConfig() {
+// var (
+// v interface{}
+// err error
+// )
+// if v, err = this.GetConfigure(hero_drawcard); err == nil {
+// if _configure, ok := v.(*cfg.GameDrawCard); ok {
+// this.hlock.Lock()
+// this.drawCardCfg = make(map[string]map[int32][]*cfg.GameDrawCardData, 0)
+// for _, v := range _configure.GetDataList() {
+// if _, ok := this.drawCardCfg[v.CardPoolType]; !ok {
+// this.drawCardCfg[v.CardPoolType] = make(map[int32][]*cfg.GameDrawCardData, 0)
+// }
+// if _, ok := this.drawCardCfg[v.CardPoolType][v.Star]; !ok {
+// this.drawCardCfg[v.CardPoolType][v.Star] = make([]*cfg.GameDrawCardData, 0)
+// }
+// this.drawCardCfg[v.CardPoolType][v.Star] = append(this.drawCardCfg[v.CardPoolType][v.Star], v)
+// }
+// this.hlock.Unlock()
+// // this.module.Debug("update cfg.Game_drawCard over")
+// return
+// }
+// }
+// err = fmt.Errorf("%T no is *cfg.Game_drawCard", v)
+// return
+// }
-func (this *configureComp) GetPollByType(poosType string) (conf map[int32][]*cfg.GameDrawCardData, err error) {
- var ok bool
- if conf, ok = this.drawCardCfg[poosType]; !ok {
- err = comm.NewNotFoundConfErr(moduleName, hero_drawcard, poosType)
- }
- return
-}
+// func (this *configureComp) GetPollByType(poosType string) (conf map[int32][]*cfg.GameDrawCardData, err error) {
+// var ok bool
+// if conf, ok = this.drawCardCfg[poosType]; !ok {
+// err = comm.NewNotFoundConfErr(moduleName, hero_drawcard, poosType)
+// }
+// return
+// }
func (this *configureComp) GetHeroExp(hid string) (conf *cfg.GameHeroExpData, err error) {
var (
@@ -411,6 +446,7 @@ func (this *configureComp) GetHeroDrawConfigByType(id int32) (data *cfg.GameDraw
if v, err = this.GetConfigure(hero_draw); err == nil {
if conf, ok := v.(*cfg.GameDrawPool); ok {
if data = conf.Get(id); data != nil {
+
return
}
}
@@ -419,23 +455,24 @@ func (this *configureComp) GetHeroDrawConfigByType(id int32) (data *cfg.GameDraw
return
}
-func (this *configureComp) GetHeroDrawWeightConfigById(id int32) (data *cfg.GameDrawWeightData, err error) {
- var (
- v interface{}
- )
- if id > 0 {
- if v, err = this.GetConfigure(hero_cardweight); err == nil {
- if conf, ok := v.(*cfg.GameDrawWeight); ok {
- if data = conf.Get(id); data != nil {
- return
- } else {
- if len(conf.GetDataList()) > 0 {
- data = conf.GetDataList()[len(conf.GetDataList())-1]
- }
- }
- }
+func (this *configureComp) GetHeroDrawWeightConfigById(dtype int32, key int32) int32 {
+ return this.starW[(int64(dtype)<<16)+int64(key)]
+}
+
+// 通过卡池获取 英雄
+func (this *configureComp) GetHeroByPool(pool string) (hid string, err error) {
+ if v, ok := this.cardPool[pool]; ok {
+ var sz []int32
+ for _, v1 := range v {
+ sz = append(sz, v1.Weight)
}
+ if len(sz) == 0 { // 异常报错提醒
+ err = comm.NewNotFoundConfErr(moduleName, hero_cardpool, pool)
+ return
+ }
+ hid = v[comm.GetRandW(sz)].Id
+ return
}
- err = comm.NewNotFoundConfErr(moduleName, hero_draw, id)
+ err = comm.NewNotFoundConfErr(moduleName, hero_cardpool, pool)
return
}
diff --git a/modules/hero/model_hero.go b/modules/hero/model_hero.go
index 7cd98aecb..b1df20199 100644
--- a/modules/hero/model_hero.go
+++ b/modules/hero/model_hero.go
@@ -589,24 +589,6 @@ func (this *ModelHero) RemoveUserHeroInfo(uid string) (err error) {
return
}
-func (this *ModelHero) CheckPool(drawCount int32, config *cfg.GameGlobalData) (pools string) {
- if config.BasePool1.S <= drawCount && config.BasePool1.E >= drawCount {
- return config.BasePool1.P
- } else if config.BasePool2.S <= drawCount && config.BasePool2.E >= drawCount {
- return config.BasePool2.P
- } else if config.BasePool3.S <= drawCount && config.BasePool3.E >= drawCount {
- return config.BasePool3.P
- } else if config.BasePool4.S <= drawCount && config.BasePool4.E >= drawCount {
- return config.BasePool4.P
- } else if config.BasePool5.S <= drawCount && config.BasePool5.E >= drawCount {
- return config.BasePool5.P
- } else if config.BasePool6.S <= drawCount && config.BasePool6.E >= drawCount {
- return config.BasePool6.P
- }
-
- return config.BasePool7.P
-}
-
// 通过卡池的权重 获取英雄
func (this *ModelHero) GetRandHeroIdBypool(sz []int32) int32 {
diff --git a/modules/hero/model_record.go b/modules/hero/model_record.go
index 419509cd8..7f339915c 100644
--- a/modules/hero/model_record.go
+++ b/modules/hero/model_record.go
@@ -36,6 +36,9 @@ func (this *ModelRecord) GetHeroRecord(uid string) (result *pb.DBHeroRecord, err
result.Condition = map[string]int32{}
result.Star5Hero = map[string]int32{}
result.Race = map[int32]int32{}
+ result.Baodi4 = map[int32]int32{}
+ result.Baodi5 = map[int32]int32{}
+ result.Count = map[int32]int32{}
result.Mtime = configure.Now().Unix()
this.Add(uid, result)
err = nil
diff --git a/modules/hero/module.go b/modules/hero/module.go
index 67ce56d14..ac5517ad6 100644
--- a/modules/hero/module.go
+++ b/modules/hero/module.go
@@ -546,27 +546,18 @@ func (this *Hero) ContinuousRestriction(uid string, heroCid string, drawCount in
conf := this.ModuleTools.GetGlobalConf() //.
iMaxCOunt := conf.DrawCardContinuousRestrictionStar5
if drawCount-index <= iMaxCOunt { // 连续n次还获得该英雄 直接替换其他英雄
-
- _data, _ := this.configure.GetPollByType(pool)
- if _data == nil {
-
- return heroCid
- }
-
- for i := 0; i < len(_data[5]); i++ {
- if v, ok := _data[5]; ok {
- if int32(len(v)) > int32(i) {
- newCid = v[i].Id
- if newCid == heroid {
- continue
- }
- record.Star5Hero[heroid] = drawCount
- update["star5Hero"] = record.Star5Hero
- this.modelRecord.ChangeHeroRecord(uid, update) // 更新信息
- return
+ for i := 0; i < 99; i++ {
+ if newCid, err := this.configure.GetHeroByPool(pool); err != nil {
+ if newCid != heroCid {
+ return newCid
}
}
}
+ record.Star5Hero[heroid] = drawCount
+ update["star5Hero"] = record.Star5Hero
+ this.modelRecord.ChangeHeroRecord(uid, update) // 更新信息
+ return heroCid
+
}
}
}
@@ -771,85 +762,6 @@ func (this *Hero) SendTaskMsg(session comm.IUserSession, szStar []int32, drawCou
go this.ModuleBuried.TriggerBuried(session.GetUserId(), szTask...)
}
-func (this *Hero) newCondition(heroRecord *pb.DBHeroRecord) (get bool, starIndex int32) {
- inRangeConf := this.ModuleTools.GetGlobalConf().DrawCard5StarsInRange
- if len(inRangeConf) == 3 {
- iStart := inRangeConf[0] // 抽卡开始
- iEnd := inRangeConf[1] // 抽卡结束
- star := inRangeConf[2]
- if star >= 3 { // 保底必须三星+
- if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
- n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
- if n.Int64() < 1 { // 抽中
- starIndex = star
- heroRecord.Inevitable = heroRecord.Drawcount
- update := make(map[string]interface{})
- update["inevitable"] = heroRecord.Drawcount
-
- get = true
- }
- }
- // 保底情况
- if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
- starIndex = star
- heroRecord.Inevitable = heroRecord.Drawcount
-
- get = true
- }
- }
- }
- get = false
- return
-}
-
-func (this *Hero) InRange(heroRecord *pb.DBHeroRecord, strPool []string, update map[string]interface{}) (starIndex int32, pool string) {
-
- starIndex = 3 // 默认3星
- inRangeConf1 := this.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1
- pool = this.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1Pool
- if len(inRangeConf1) == 3 {
- iStart := inRangeConf1[0] // 抽卡开始
- iEnd := inRangeConf1[1] // 抽卡结束
- star := inRangeConf1[2]
- if star >= 3 { // 保底必须三星+
- if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
- n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
- if n.Int64() < 1 { // 抽中
- starIndex = star
- heroRecord.Inevitable = heroRecord.Drawcount
- update["inevitable1"] = heroRecord.Drawcount
-
- if star == 4 {
- heroRecord.Star4 = 0
- } else if star == 5 {
- heroRecord.Star5 = 0
- }
- // 修改卡池
- // if newPoll != "" {
- // strPool[len(strPool)-1] = newPoll
- // }
- return
- }
- }
- // 保底情况
- if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
- starIndex = star
- heroRecord.Inevitable1 = heroRecord.Drawcount
- update["inevitable1"] = heroRecord.Drawcount
-
- if star == 4 {
- heroRecord.Star4 = 0
- } else if star == 5 {
- heroRecord.Star5 = 0
- }
-
- return
- }
- }
- }
- return
-}
-
func (this *Hero) RegisterInstructor(session comm.IUserSession, heroOid []string, fulllvenr int32) (errdata *pb.ErrorData) {
var (
_szHero []*pb.DBHero
diff --git a/pb/hero_db.pb.go b/pb/hero_db.pb.go
index c404896a5..13206f571 100644
--- a/pb/hero_db.pb.go
+++ b/pb/hero_db.pb.go
@@ -319,21 +319,20 @@ type DBHeroRecord struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID 主键id
- Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
- Star4 int32 `protobuf:"varint,3,opt,name=star4,proto3" json:"star4"` // 4星保底
- Star5 int32 `protobuf:"varint,4,opt,name=star5,proto3" json:"star5"` // 5星保底
- Mtime int64 `protobuf:"varint,5,opt,name=mtime,proto3" json:"mtime"` // 修改时间
- Drawcount int32 `protobuf:"varint,6,opt,name=drawcount,proto3" json:"drawcount"` // 普通卡牌累计抽取次数
- Condition map[string]int32 `protobuf:"bytes,7,rep,name=condition,proto3" json:"condition" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key recharge、login 等 value 累计抽卡次数
- Star5Hero map[string]int32 `protobuf:"bytes,8,rep,name=star5Hero,proto3" json:"star5Hero" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 第totalcount 次抽到的5星英雄 key 英雄id
- Totalcount int32 `protobuf:"varint,9,opt,name=totalcount,proto3" json:"totalcount"` // 总的累计抽卡次数
- Daycount int32 `protobuf:"varint,10,opt,name=daycount,proto3" json:"daycount"` // 今天抽卡次数
- Onebuy int32 `protobuf:"varint,11,opt,name=onebuy,proto3" json:"onebuy"` // 单次购买次数
- Tenbuy int32 `protobuf:"varint,12,opt,name=tenbuy,proto3" json:"tenbuy"` // 十连购买次数
- Inevitable int32 `protobuf:"varint,13,opt,name=inevitable,proto3" json:"inevitable"` //第2-30次抽奖必出一个5星英雄
- Inevitable1 int32 `protobuf:"varint,14,opt,name=inevitable1,proto3" json:"inevitable1"` //第30-50次抽奖必出一个5星英雄
- Race map[int32]int32 `protobuf:"bytes,15,rep,name=race,proto3" json:"race" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 阵营类型 value count
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID 主键id
+ Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
+ Mtime int64 `protobuf:"varint,3,opt,name=mtime,proto3" json:"mtime"` // 修改时间
+ Drawcount int32 `protobuf:"varint,4,opt,name=drawcount,proto3" json:"drawcount"` // 普通卡牌累计抽取次数
+ Condition map[string]int32 `protobuf:"bytes,5,rep,name=condition,proto3" json:"condition" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key recharge、login 等 value 累计抽卡次数
+ Star5Hero map[string]int32 `protobuf:"bytes,6,rep,name=star5Hero,proto3" json:"star5Hero" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 第totalcount 次抽到的5星英雄 key 英雄id
+ Totalcount int32 `protobuf:"varint,7,opt,name=totalcount,proto3" json:"totalcount"` // 总的累计抽卡次数
+ Daycount int32 `protobuf:"varint,8,opt,name=daycount,proto3" json:"daycount"` // 今天抽卡次数
+ Onebuy int32 `protobuf:"varint,9,opt,name=onebuy,proto3" json:"onebuy"` // 单次购买次数
+ Tenbuy int32 `protobuf:"varint,10,opt,name=tenbuy,proto3" json:"tenbuy"` // 十连购买次数
+ Race map[int32]int32 `protobuf:"bytes,11,rep,name=race,proto3" json:"race" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 阵营类型 value count
+ Baodi4 map[int32]int32 `protobuf:"bytes,12,rep,name=baodi4,proto3" json:"baodi4" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 4星保底次数 key 阵营类型 value count
+ Baodi5 map[int32]int32 `protobuf:"bytes,13,rep,name=baodi5,proto3" json:"baodi5" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 5星保底次数 key 阵营类型 value count
+ Count map[int32]int32 `protobuf:"bytes,14,rep,name=count,proto3" json:"count" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 抽卡次数 key 阵营类型 value count
}
func (x *DBHeroRecord) Reset() {
@@ -382,20 +381,6 @@ func (x *DBHeroRecord) GetUid() string {
return ""
}
-func (x *DBHeroRecord) GetStar4() int32 {
- if x != nil {
- return x.Star4
- }
- return 0
-}
-
-func (x *DBHeroRecord) GetStar5() int32 {
- if x != nil {
- return x.Star5
- }
- return 0
-}
-
func (x *DBHeroRecord) GetMtime() int64 {
if x != nil {
return x.Mtime
@@ -452,20 +437,6 @@ func (x *DBHeroRecord) GetTenbuy() int32 {
return 0
}
-func (x *DBHeroRecord) GetInevitable() int32 {
- if x != nil {
- return x.Inevitable
- }
- return 0
-}
-
-func (x *DBHeroRecord) GetInevitable1() int32 {
- if x != nil {
- return x.Inevitable1
- }
- return 0
-}
-
func (x *DBHeroRecord) GetRace() map[int32]int32 {
if x != nil {
return x.Race
@@ -473,6 +444,27 @@ func (x *DBHeroRecord) GetRace() map[int32]int32 {
return nil
}
+func (x *DBHeroRecord) GetBaodi4() map[int32]int32 {
+ if x != nil {
+ return x.Baodi4
+ }
+ return nil
+}
+
+func (x *DBHeroRecord) GetBaodi5() map[int32]int32 {
+ if x != nil {
+ return x.Baodi5
+ }
+ return nil
+}
+
+func (x *DBHeroRecord) GetCount() map[int32]int32 {
+ if x != nil {
+ return x.Count
+ }
+ return nil
+}
+
// 英雄天赋系统
type DBHeroTalent struct {
state protoimpl.MessageState
@@ -634,64 +626,78 @@ var file_hero_hero_db_proto_rawDesc = []byte{
0x3a, 0x0a, 0x0c, 0x46, 0x65, 0x74, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
- 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x98, 0x05, 0x0a, 0x0c,
+ 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xf0, 0x06, 0x0a, 0x0c,
0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03,
0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x14,
- 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73,
- 0x74, 0x61, 0x72, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x74,
- 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65,
- 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20,
- 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3a,
- 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28,
+ 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6d,
+ 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e,
+ 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a,
+ 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x18, 0x06, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x1c, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
- 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
- 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x74,
- 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
- 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x53, 0x74, 0x61,
- 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x73, 0x74, 0x61,
- 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x63,
- 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61,
- 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x79, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x61, 0x79, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x0b, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65,
- 0x6e, 0x62, 0x75, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62,
- 0x75, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61, 0x62, 0x6c, 0x65,
- 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61, 0x62,
- 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61, 0x62, 0x6c, 0x65,
- 0x31, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61,
- 0x62, 0x6c, 0x65, 0x31, 0x12, 0x2b, 0x0a, 0x04, 0x72, 0x61, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x03,
- 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72,
- 0x64, 0x2e, 0x52, 0x61, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x72, 0x61, 0x63,
- 0x65, 0x1a, 0x3c, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
- 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
- 0x3c, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72,
- 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
- 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a,
- 0x09, 0x52, 0x61, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
- 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
- 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c,
- 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb6, 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72,
- 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72,
- 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49,
- 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28,
- 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74,
- 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x74, 0x61,
- 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e,
- 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
- 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a,
- 0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48,
- 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e,
- 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01,
- 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x2e, 0x53, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
+ 0x09, 0x73, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f,
+ 0x74, 0x61, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a,
+ 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61,
+ 0x79, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x61,
+ 0x79, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79,
+ 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16,
+ 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
+ 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x12, 0x2b, 0x0a, 0x04, 0x72, 0x61, 0x63, 0x65, 0x18, 0x0b,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63,
+ 0x6f, 0x72, 0x64, 0x2e, 0x52, 0x61, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x72,
+ 0x61, 0x63, 0x65, 0x12, 0x31, 0x0a, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x18, 0x0c, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f,
+ 0x72, 0x64, 0x2e, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06,
+ 0x62, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x12, 0x31, 0x0a, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x35,
+ 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52,
+ 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x45, 0x6e, 0x74, 0x72,
+ 0x79, 0x52, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x12, 0x2e, 0x0a, 0x05, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72,
+ 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74,
+ 0x72, 0x79, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x3c, 0x0a, 0x0e, 0x43, 0x6f, 0x6e,
+ 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
+ 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
+ 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x35,
+ 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x52, 0x61, 0x63, 0x65, 0x45, 0x6e, 0x74,
+ 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39,
+ 0x0a, 0x0b, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
+ 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
+ 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x42, 0x61, 0x6f,
+ 0x64, 0x69, 0x35, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74,
+ 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb6,
+ 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x12,
+ 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
+ 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69,
+ 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c,
+ 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65,
+ 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45,
+ 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b,
+ 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
+ 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
+ 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54,
+ 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e,
+ 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65,
+ 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62,
+ 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -707,7 +713,7 @@ func file_hero_hero_db_proto_rawDescGZIP() []byte {
}
var file_hero_hero_db_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
-var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
+var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
var file_hero_hero_db_proto_goTypes = []interface{}{
(HeroType)(0), // 0: HeroType
(*DBHero)(nil), // 1: DBHero
@@ -722,30 +728,36 @@ var file_hero_hero_db_proto_goTypes = []interface{}{
nil, // 10: DBHeroRecord.ConditionEntry
nil, // 11: DBHeroRecord.Star5HeroEntry
nil, // 12: DBHeroRecord.RaceEntry
- nil, // 13: DBHeroTalent.TalentEntry
- (*SkillData)(nil), // 14: SkillData
- (*DB_EquipmentSuit)(nil), // 15: DB_EquipmentSuit
+ nil, // 13: DBHeroRecord.Baodi4Entry
+ nil, // 14: DBHeroRecord.Baodi5Entry
+ nil, // 15: DBHeroRecord.CountEntry
+ nil, // 16: DBHeroTalent.TalentEntry
+ (*SkillData)(nil), // 17: SkillData
+ (*DB_EquipmentSuit)(nil), // 18: DB_EquipmentSuit
}
var file_hero_hero_db_proto_depIdxs = []int32{
- 14, // 0: DBHero.normalSkill:type_name -> SkillData
+ 17, // 0: DBHero.normalSkill:type_name -> SkillData
4, // 1: DBHero.property:type_name -> DBHero.PropertyEntry
5, // 2: DBHero.addProperty:type_name -> DBHero.AddPropertyEntry
6, // 3: DBHero.juexProperty:type_name -> DBHero.JuexPropertyEntry
0, // 4: DBHero.status:type_name -> HeroType
- 15, // 5: DBHero.suits:type_name -> DB_EquipmentSuit
+ 18, // 5: DBHero.suits:type_name -> DB_EquipmentSuit
7, // 6: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry
- 14, // 7: DBHero.equipSkill:type_name -> SkillData
+ 17, // 7: DBHero.equipSkill:type_name -> SkillData
8, // 8: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry
9, // 9: DBHero.fetters:type_name -> DBHero.FettersEntry
10, // 10: DBHeroRecord.condition:type_name -> DBHeroRecord.ConditionEntry
11, // 11: DBHeroRecord.star5Hero:type_name -> DBHeroRecord.Star5HeroEntry
12, // 12: DBHeroRecord.race:type_name -> DBHeroRecord.RaceEntry
- 13, // 13: DBHeroTalent.talent:type_name -> DBHeroTalent.TalentEntry
- 14, // [14:14] is the sub-list for method output_type
- 14, // [14:14] is the sub-list for method input_type
- 14, // [14:14] is the sub-list for extension type_name
- 14, // [14:14] is the sub-list for extension extendee
- 0, // [0:14] is the sub-list for field type_name
+ 13, // 13: DBHeroRecord.baodi4:type_name -> DBHeroRecord.Baodi4Entry
+ 14, // 14: DBHeroRecord.baodi5:type_name -> DBHeroRecord.Baodi5Entry
+ 15, // 15: DBHeroRecord.count:type_name -> DBHeroRecord.CountEntry
+ 16, // 16: DBHeroTalent.talent:type_name -> DBHeroTalent.TalentEntry
+ 17, // [17:17] is the sub-list for method output_type
+ 17, // [17:17] is the sub-list for method input_type
+ 17, // [17:17] is the sub-list for extension type_name
+ 17, // [17:17] is the sub-list for extension extendee
+ 0, // [0:17] is the sub-list for field type_name
}
func init() { file_hero_hero_db_proto_init() }
@@ -799,7 +811,7 @@ func file_hero_hero_db_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_hero_hero_db_proto_rawDesc,
NumEnums: 1,
- NumMessages: 13,
+ NumMessages: 16,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/pb/hero_msg.pb.go b/pb/hero_msg.pb.go
index 2eb582619..f88e2f4a8 100644
--- a/pb/hero_msg.pb.go
+++ b/pb/hero_msg.pb.go
@@ -1193,10 +1193,10 @@ type HeroDrawCardFloorResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Star4 int32 `protobuf:"varint,1,opt,name=star4,proto3" json:"star4"`
- Star5 int32 `protobuf:"varint,2,opt,name=star5,proto3" json:"star5"`
- Onebuy int32 `protobuf:"varint,3,opt,name=onebuy,proto3" json:"onebuy"` // 单次购买次数
- Tenbuy int32 `protobuf:"varint,4,opt,name=tenbuy,proto3" json:"tenbuy"` // 十连购买次数
+ Baodi4 map[int32]int32 `protobuf:"bytes,1,rep,name=baodi4,proto3" json:"baodi4" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 4星保底次数 key 阵营类型 value count
+ Baodi5 map[int32]int32 `protobuf:"bytes,2,rep,name=baodi5,proto3" json:"baodi5" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 5星保底次数 key 阵营类型 value count
+ Onebuy int32 `protobuf:"varint,3,opt,name=onebuy,proto3" json:"onebuy"` // 单次购买次数
+ Tenbuy int32 `protobuf:"varint,4,opt,name=tenbuy,proto3" json:"tenbuy"` // 十连购买次数
}
func (x *HeroDrawCardFloorResp) Reset() {
@@ -1231,18 +1231,18 @@ func (*HeroDrawCardFloorResp) Descriptor() ([]byte, []int) {
return file_hero_hero_msg_proto_rawDescGZIP(), []int{23}
}
-func (x *HeroDrawCardFloorResp) GetStar4() int32 {
+func (x *HeroDrawCardFloorResp) GetBaodi4() map[int32]int32 {
if x != nil {
- return x.Star4
+ return x.Baodi4
}
- return 0
+ return nil
}
-func (x *HeroDrawCardFloorResp) GetStar5() int32 {
+func (x *HeroDrawCardFloorResp) GetBaodi5() map[int32]int32 {
if x != nil {
- return x.Star5
+ return x.Baodi5
}
- return 0
+ return nil
}
func (x *HeroDrawCardFloorResp) GetOnebuy() int32 {
@@ -1940,63 +1940,75 @@ var file_hero_hero_msg_proto_rawDesc = []byte{
0x50, 0x75, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, 0x6c, 0x69, 0x73,
0x74, 0x22, 0x16, 0x0a, 0x14, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72,
- 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x22, 0x73, 0x0a, 0x15, 0x48, 0x65, 0x72,
- 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65,
- 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72,
- 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x12, 0x16,
- 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
- 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x22, 0x92,
- 0x01, 0x0a, 0x0d, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
- 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x05, 0x68, 0x65, 0x72, 0x6f,
- 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75,
- 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x73, 0x45, 0x6e, 0x74,
- 0x72, 0x79, 0x52, 0x05, 0x68, 0x65, 0x72, 0x6f, 0x73, 0x1a, 0x38, 0x0a, 0x0a, 0x48, 0x65, 0x72,
- 0x6f, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
- 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
- 0x02, 0x38, 0x01, 0x22, 0x28, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f,
- 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x13, 0x0a,
- 0x11, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52,
- 0x65, 0x71, 0x22, 0x3b, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74,
- 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e,
- 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72,
- 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x22,
- 0x5e, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x61,
- 0x72, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49,
- 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49,
- 0x44, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69,
- 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64, 0x22,
- 0x58, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x61,
- 0x72, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54,
- 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x12, 0x1a, 0x0a,
- 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
- 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x22, 0x2a, 0x0a, 0x12, 0x48, 0x65, 0x72,
- 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12,
- 0x14, 0x0a, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
- 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c,
- 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06,
- 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44,
- 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c,
- 0x6e, 0x65, 0x74, 0x22, 0x42, 0x0a, 0x0a, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x75, 0x79, 0x52, 0x65,
- 0x71, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x07, 0x62, 0x75, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62,
- 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62,
- 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x42,
- 0x75, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x75, 0x63, 0x63,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x49, 0x73, 0x53, 0x75, 0x63, 0x63, 0x12, 0x16,
- 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
- 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x22, 0x2a,
- 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x47, 0x65, 0x74, 0x50, 0x75,
- 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x01, 0x20, 0x03,
- 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b,
- 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x22, 0xb5, 0x02, 0x0a, 0x15, 0x48, 0x65,
+ 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52,
+ 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61,
+ 0x72, 0x64, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x42, 0x61, 0x6f, 0x64,
+ 0x69, 0x34, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x12,
+ 0x3a, 0x0a, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x22, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x44, 0x72, 0x61, 0x77, 0x43, 0x61, 0x72, 0x64, 0x46, 0x6c,
+ 0x6f, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x52, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x12, 0x16, 0x0a, 0x06, 0x6f,
+ 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65,
+ 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x1a, 0x39, 0x0a, 0x0b, 0x42,
+ 0x61, 0x6f, 0x64, 0x69, 0x34, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
+ 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x35,
+ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
+ 0x01, 0x22, 0x92, 0x01, 0x0a, 0x0d, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x05, 0x68,
+ 0x65, 0x72, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x48, 0x65, 0x72,
+ 0x6f, 0x46, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x73,
+ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x68, 0x65, 0x72, 0x6f, 0x73, 0x1a, 0x38, 0x0a, 0x0a,
+ 0x48, 0x65, 0x72, 0x6f, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
+ 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x28, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x75,
+ 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x69, 0x64,
+ 0x22, 0x13, 0x0a, 0x11, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x4c, 0x69,
+ 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x3b, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c,
+ 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74,
+ 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42,
+ 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e,
+ 0x65, 0x74, 0x22, 0x5e, 0x0a, 0x12, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74,
+ 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x6c, 0x65,
+ 0x6e, 0x74, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x6c, 0x65,
+ 0x6e, 0x74, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65,
+ 0x72, 0x6f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f,
+ 0x69, 0x64, 0x22, 0x58, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74,
+ 0x4c, 0x65, 0x61, 0x72, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c,
+ 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65,
+ 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74,
+ 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x22, 0x2a, 0x0a, 0x12,
+ 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52,
+ 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x13, 0x48, 0x65, 0x72, 0x6f,
+ 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12,
+ 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x0d, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x52, 0x06,
+ 0x74, 0x65, 0x6c, 0x6e, 0x65, 0x74, 0x22, 0x42, 0x0a, 0x0a, 0x48, 0x65, 0x72, 0x6f, 0x42, 0x75,
+ 0x79, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x62, 0x75, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a,
+ 0x0a, 0x08, 0x62, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
+ 0x52, 0x08, 0x62, 0x75, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x0b, 0x48, 0x65,
+ 0x72, 0x6f, 0x42, 0x75, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x73, 0x53,
+ 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x49, 0x73, 0x53, 0x75, 0x63,
+ 0x63, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e,
+ 0x62, 0x75, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75,
+ 0x79, 0x22, 0x2a, 0x0a, 0x10, 0x48, 0x65, 0x72, 0x6f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x47, 0x65,
+ 0x74, 0x50, 0x75, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x42, 0x06, 0x5a,
+ 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -2011,7 +2023,7 @@ func file_hero_hero_msg_proto_rawDescGZIP() []byte {
return file_hero_hero_msg_proto_rawDescData
}
-var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 40)
+var file_hero_hero_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 42)
var file_hero_hero_msg_proto_goTypes = []interface{}{
(*HeroInfoReq)(nil), // 0: HeroInfoReq
(*HeroInfoResp)(nil), // 1: HeroInfoResp
@@ -2052,36 +2064,40 @@ var file_hero_hero_msg_proto_goTypes = []interface{}{
nil, // 36: HeroStrengthenUpSkillReq.ItemEntry
nil, // 37: HeroPropertyPush.PropertyEntry
nil, // 38: HeroPropertyPush.AddPropertyEntry
- nil, // 39: HeroFusionReq.HerosEntry
- (*DBHero)(nil), // 40: DBHero
- (*UserAtno)(nil), // 41: UserAtno
- (*DBHeroTalent)(nil), // 42: DBHeroTalent
+ nil, // 39: HeroDrawCardFloorResp.Baodi4Entry
+ nil, // 40: HeroDrawCardFloorResp.Baodi5Entry
+ nil, // 41: HeroFusionReq.HerosEntry
+ (*DBHero)(nil), // 42: DBHero
+ (*UserAtno)(nil), // 43: UserAtno
+ (*DBHeroTalent)(nil), // 44: DBHeroTalent
}
var file_hero_hero_msg_proto_depIdxs = []int32{
- 40, // 0: HeroInfoResp.base:type_name -> DBHero
- 40, // 1: HeroListResp.list:type_name -> DBHero
+ 42, // 0: HeroInfoResp.base:type_name -> DBHero
+ 42, // 1: HeroListResp.list:type_name -> DBHero
35, // 2: HeroStrengthenUplvReq.item:type_name -> HeroStrengthenUplvReq.ItemEntry
- 40, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero
- 40, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero
+ 42, // 3: HeroStrengthenUplvResp.hero:type_name -> DBHero
+ 42, // 4: HeroStrengthenUpStarResp.hero:type_name -> DBHero
36, // 5: HeroStrengthenUpSkillReq.item:type_name -> HeroStrengthenUpSkillReq.ItemEntry
- 40, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero
- 40, // 7: HeroAwakenResp.hero:type_name -> DBHero
+ 42, // 6: HeroStrengthenUpSkillResp.hero:type_name -> DBHero
+ 42, // 7: HeroAwakenResp.hero:type_name -> DBHero
37, // 8: HeroPropertyPush.property:type_name -> HeroPropertyPush.PropertyEntry
38, // 9: HeroPropertyPush.addProperty:type_name -> HeroPropertyPush.AddPropertyEntry
- 40, // 10: HeroLockResp.hero:type_name -> DBHero
- 40, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero
- 41, // 12: AtnoData.atno:type_name -> UserAtno
+ 42, // 10: HeroLockResp.hero:type_name -> DBHero
+ 42, // 11: HeroGetSpecifiedResp.hero:type_name -> DBHero
+ 43, // 12: AtnoData.atno:type_name -> UserAtno
19, // 13: HeroDrawCardResp.data:type_name -> AtnoData
- 40, // 14: HeroChangePush.list:type_name -> DBHero
- 39, // 15: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry
- 42, // 16: HeroTalentListResp.telnet:type_name -> DBHeroTalent
- 42, // 17: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent
- 42, // 18: HeroTalentResetResp.telnet:type_name -> DBHeroTalent
- 19, // [19:19] is the sub-list for method output_type
- 19, // [19:19] is the sub-list for method input_type
- 19, // [19:19] is the sub-list for extension type_name
- 19, // [19:19] is the sub-list for extension extendee
- 0, // [0:19] is the sub-list for field type_name
+ 42, // 14: HeroChangePush.list:type_name -> DBHero
+ 39, // 15: HeroDrawCardFloorResp.baodi4:type_name -> HeroDrawCardFloorResp.Baodi4Entry
+ 40, // 16: HeroDrawCardFloorResp.baodi5:type_name -> HeroDrawCardFloorResp.Baodi5Entry
+ 41, // 17: HeroFusionReq.heros:type_name -> HeroFusionReq.HerosEntry
+ 44, // 18: HeroTalentListResp.telnet:type_name -> DBHeroTalent
+ 44, // 19: HeroTalentLearnResp.telnet:type_name -> DBHeroTalent
+ 44, // 20: HeroTalentResetResp.telnet:type_name -> DBHeroTalent
+ 21, // [21:21] is the sub-list for method output_type
+ 21, // [21:21] is the sub-list for method input_type
+ 21, // [21:21] is the sub-list for extension type_name
+ 21, // [21:21] is the sub-list for extension extendee
+ 0, // [0:21] is the sub-list for field type_name
}
func init() { file_hero_hero_msg_proto_init() }
@@ -2519,7 +2535,7 @@ func file_hero_hero_msg_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_hero_hero_msg_proto_rawDesc,
NumEnums: 0,
- NumMessages: 40,
+ NumMessages: 42,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/sys/configure/structs/Game.CardPool.go b/sys/configure/structs/Game.CardPool.go
new file mode 100644
index 000000000..563035b66
--- /dev/null
+++ b/sys/configure/structs/Game.CardPool.go
@@ -0,0 +1,42 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+type GameCardPool struct {
+ _dataMap map[int32]*GameCardPoolData
+ _dataList []*GameCardPoolData
+}
+
+func NewGameCardPool(_buf []map[string]interface{}) (*GameCardPool, error) {
+ _dataList := make([]*GameCardPoolData, 0, len(_buf))
+ dataMap := make(map[int32]*GameCardPoolData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameCardPoolData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Key] = _v
+ }
+ }
+ return &GameCardPool{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameCardPool) GetDataMap() map[int32]*GameCardPoolData {
+ return table._dataMap
+}
+
+func (table *GameCardPool) GetDataList() []*GameCardPoolData {
+ return table._dataList
+}
+
+func (table *GameCardPool) Get(key int32) *GameCardPoolData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.CardPoolData.go b/sys/configure/structs/Game.CardPoolData.go
new file mode 100644
index 000000000..2ebad35c8
--- /dev/null
+++ b/sys/configure/structs/Game.CardPoolData.go
@@ -0,0 +1,41 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+import "errors"
+
+type GameCardPoolData struct {
+ Key int32
+ CardPoolType string
+ Id string
+ Weight int32
+}
+
+const TypeId_GameCardPoolData = 1562200466
+
+func (*GameCardPoolData) GetTypeId() int32 {
+ return 1562200466
+}
+
+func (_v *GameCardPoolData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) }
+ { var _ok_ bool; if _v.CardPoolType, _ok_ = _buf["card_pool_type"].(string); !_ok_ { err = errors.New("card_pool_type error"); return } }
+ { var _ok_ bool; if _v.Id, _ok_ = _buf["id"].(string); !_ok_ { err = errors.New("id error"); return } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["weight"].(float64); !_ok_ { err = errors.New("weight error"); return }; _v.Weight = int32(_tempNum_) }
+ return
+}
+
+func DeserializeGameCardPoolData(_buf map[string]interface{}) (*GameCardPoolData, error) {
+ v := &GameCardPoolData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.DrawWeight.go b/sys/configure/structs/Game.DrawWeight.go
index 3d7fc277b..2692919ef 100644
--- a/sys/configure/structs/Game.DrawWeight.go
+++ b/sys/configure/structs/Game.DrawWeight.go
@@ -21,7 +21,7 @@ func NewGameDrawWeight(_buf []map[string]interface{}) (*GameDrawWeight, error) {
return nil, err2
} else {
_dataList = append(_dataList, _v)
- dataMap[_v.Key] = _v
+ dataMap[_v.Id] = _v
}
}
return &GameDrawWeight{_dataList:_dataList, _dataMap:dataMap}, nil
diff --git a/sys/configure/structs/Game.DrawWeightData.go b/sys/configure/structs/Game.DrawWeightData.go
index a386094fc..c24df00f2 100644
--- a/sys/configure/structs/Game.DrawWeightData.go
+++ b/sys/configure/structs/Game.DrawWeightData.go
@@ -11,6 +11,8 @@ package cfg
import "errors"
type GameDrawWeightData struct {
+ Id int32
+ Dtype int32
Key int32
Weight int32
}
@@ -22,6 +24,8 @@ func (*GameDrawWeightData) GetTypeId() int32 {
}
func (_v *GameDrawWeightData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dtype"].(float64); !_ok_ { err = errors.New("dtype error"); return }; _v.Dtype = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["weight"].(float64); !_ok_ { err = errors.New("weight error"); return }; _v.Weight = int32(_tempNum_) }
return
diff --git a/sys/configure/structs/Tables.go b/sys/configure/structs/Tables.go
index c4f3ebfd6..2c3738bda 100644
--- a/sys/configure/structs/Tables.go
+++ b/sys/configure/structs/Tables.go
@@ -184,6 +184,7 @@ type Tables struct {
PhotoFilter *GamePhotoFilter
DrawPool *GameDrawPool
DrawWeight *GameDrawWeight
+ CardPool *GameCardPool
}
func NewTables(loader JsonLoader) (*Tables, error) {
@@ -1229,5 +1230,11 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.DrawWeight, err = NewGameDrawWeight(buf) ; err != nil {
return nil, err
}
+ if buf, err = loader("game_cardpool") ; err != nil {
+ return nil, err
+ }
+ if tables.CardPool, err = NewGameCardPool(buf) ; err != nil {
+ return nil, err
+ }
return tables, nil
}
diff --git a/sys/configure/structs/game.globalData.go b/sys/configure/structs/game.globalData.go
index 41008685c..b801dd8a3 100644
--- a/sys/configure/structs/game.globalData.go
+++ b/sys/configure/structs/game.globalData.go
@@ -39,36 +39,7 @@ type GameGlobalData struct {
DrawToplimit int32
Draw10Star4Max int32
Draw10Star5Max int32
- DrawFloorStar4 int32
- DrawFloorStar5 int32
DuplicateRemoval int32
- BasePoolCost *Gameatn
- Camp1PoolCost *Gameatn
- Camp2PoolCost *Gameatn
- Camp3PoolCost *Gameatn
- Camp4PoolCost *Gameatn
- BasePool10cost *Gameatn
- Camp1Pool10cost *Gameatn
- Camp2Pool10cost *Gameatn
- Camp3Pool10cost *Gameatn
- Camp4Pool10cost *Gameatn
- Camp1Pool1 string
- Camp2Pool1 string
- Camp3Pool1 string
- Camp4Pool1 string
- BasePool1 *Gamebasepool
- BasePool2 *Gamebasepool
- BasePool3 *Gamebasepool
- BasePool4 *Gamebasepool
- BasePool5 *Gamebasepool
- BasePool6 *Gamebasepool
- BasePool7 *Gamebasepool
- BasePoolStar3 int32
- BasePoolStar4 int32
- BasePoolStar5 int32
- CampPoolStar3 int32
- CampPoolStar4 int32
- CampPoolStar5 int32
Gourmet int32
SmithyMaxplayer int32
SmithyMaxtime int32
@@ -142,9 +113,6 @@ type GameGlobalData struct {
SkillGetLocation []int32
DrawCardRechargeReward []int32
DrawCardRegressionReward []int32
- DrawCard5StarsInRange []int32
- DrawCard5StarsInRange1 []int32
- DrawCard5StarsInRange1Pool string
DrawCardContinuousRestrictionStar5 int32
DrawCardContinuousRestrictionCamp int32
EquipmentConsumption []int32
@@ -327,36 +295,7 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["draw_toplimit"].(float64); !_ok_ { err = errors.New("draw_toplimit error"); return }; _v.DrawToplimit = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["draw10_star4_max"].(float64); !_ok_ { err = errors.New("draw10_star4_max error"); return }; _v.Draw10Star4Max = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["draw10_star5_max"].(float64); !_ok_ { err = errors.New("draw10_star5_max error"); return }; _v.Draw10Star5Max = int32(_tempNum_) }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["draw_floor_star4"].(float64); !_ok_ { err = errors.New("draw_floor_star4 error"); return }; _v.DrawFloorStar4 = int32(_tempNum_) }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["draw_floor_star5"].(float64); !_ok_ { err = errors.New("draw_floor_star5 error"); return }; _v.DrawFloorStar5 = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["duplicate_removal"].(float64); !_ok_ { err = errors.New("duplicate_removal error"); return }; _v.DuplicateRemoval = int32(_tempNum_) }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool_cost"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool_cost error"); return }; if _v.BasePoolCost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp1_pool_cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp1_pool_cost error"); return }; if _v.Camp1PoolCost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp2_pool_cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp2_pool_cost error"); return }; if _v.Camp2PoolCost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp3_pool_cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp3_pool_cost error"); return }; if _v.Camp3PoolCost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp4_pool_cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp4_pool_cost error"); return }; if _v.Camp4PoolCost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool_10cost"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool_10cost error"); return }; if _v.BasePool10cost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp1_pool_10cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp1_pool_10cost error"); return }; if _v.Camp1Pool10cost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp2_pool_10cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp2_pool_10cost error"); return }; if _v.Camp2Pool10cost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp3_pool_10cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp3_pool_10cost error"); return }; if _v.Camp3Pool10cost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["camp4_pool_10cost"].(map[string]interface{}); !_ok_ { err = errors.New("camp4_pool_10cost error"); return }; if _v.Camp4Pool10cost, err = DeserializeGameatn(_x_); err != nil { return } }
- { var _ok_ bool; if _v.Camp1Pool1, _ok_ = _buf["camp1_pool1"].(string); !_ok_ { err = errors.New("camp1_pool1 error"); return } }
- { var _ok_ bool; if _v.Camp2Pool1, _ok_ = _buf["camp2_pool1"].(string); !_ok_ { err = errors.New("camp2_pool1 error"); return } }
- { var _ok_ bool; if _v.Camp3Pool1, _ok_ = _buf["camp3_pool1"].(string); !_ok_ { err = errors.New("camp3_pool1 error"); return } }
- { var _ok_ bool; if _v.Camp4Pool1, _ok_ = _buf["camp4_pool1"].(string); !_ok_ { err = errors.New("camp4_pool1 error"); return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool1"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool1 error"); return }; if _v.BasePool1, err = DeserializeGamebasepool(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool2"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool2 error"); return }; if _v.BasePool2, err = DeserializeGamebasepool(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool3"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool3 error"); return }; if _v.BasePool3, err = DeserializeGamebasepool(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool4"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool4 error"); return }; if _v.BasePool4, err = DeserializeGamebasepool(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool5"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool5 error"); return }; if _v.BasePool5, err = DeserializeGamebasepool(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool6"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool6 error"); return }; if _v.BasePool6, err = DeserializeGamebasepool(_x_); err != nil { return } }
- { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["base_pool7"].(map[string]interface{}); !_ok_ { err = errors.New("base_pool7 error"); return }; if _v.BasePool7, err = DeserializeGamebasepool(_x_); err != nil { return } }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["base_pool_star3"].(float64); !_ok_ { err = errors.New("base_pool_star3 error"); return }; _v.BasePoolStar3 = int32(_tempNum_) }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["base_pool_star4"].(float64); !_ok_ { err = errors.New("base_pool_star4 error"); return }; _v.BasePoolStar4 = int32(_tempNum_) }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["base_pool_star5"].(float64); !_ok_ { err = errors.New("base_pool_star5 error"); return }; _v.BasePoolStar5 = int32(_tempNum_) }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["camp_pool_star3"].(float64); !_ok_ { err = errors.New("camp_pool_star3 error"); return }; _v.CampPoolStar3 = int32(_tempNum_) }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["camp_pool_star4"].(float64); !_ok_ { err = errors.New("camp_pool_star4 error"); return }; _v.CampPoolStar4 = int32(_tempNum_) }
- { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["camp_pool_star5"].(float64); !_ok_ { err = errors.New("camp_pool_star5 error"); return }; _v.CampPoolStar5 = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["gourmet"].(float64); !_ok_ { err = errors.New("gourmet error"); return }; _v.Gourmet = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["smithy_maxplayer"].(float64); !_ok_ { err = errors.New("smithy_maxplayer error"); return }; _v.SmithyMaxplayer = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["smithy_maxtime"].(float64); !_ok_ { err = errors.New("smithy_maxtime error"); return }; _v.SmithyMaxtime = int32(_tempNum_) }
@@ -677,35 +616,6 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
}
}
- {
- var _arr_ []interface{}
- var _ok_ bool
- if _arr_, _ok_ = _buf["DrawCard_5StarsInRange"].([]interface{}); !_ok_ { err = errors.New("DrawCard_5StarsInRange error"); return }
-
- _v.DrawCard5StarsInRange = make([]int32, 0, len(_arr_))
-
- for _, _e_ := range _arr_ {
- var _list_v_ int32
- { var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
- _v.DrawCard5StarsInRange = append(_v.DrawCard5StarsInRange, _list_v_)
- }
- }
-
- {
- var _arr_ []interface{}
- var _ok_ bool
- if _arr_, _ok_ = _buf["DrawCard_5StarsInRange1"].([]interface{}); !_ok_ { err = errors.New("DrawCard_5StarsInRange1 error"); return }
-
- _v.DrawCard5StarsInRange1 = make([]int32, 0, len(_arr_))
-
- for _, _e_ := range _arr_ {
- var _list_v_ int32
- { var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
- _v.DrawCard5StarsInRange1 = append(_v.DrawCard5StarsInRange1, _list_v_)
- }
- }
-
- { var _ok_ bool; if _v.DrawCard5StarsInRange1Pool, _ok_ = _buf["DrawCard_5StarsInRange1_pool"].(string); !_ok_ { err = errors.New("DrawCard_5StarsInRange1_pool error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["DrawCard_ContinuousRestriction_Star5"].(float64); !_ok_ { err = errors.New("DrawCard_ContinuousRestriction_Star5 error"); return }; _v.DrawCardContinuousRestrictionStar5 = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["DrawCard_ContinuousRestriction_Camp"].(float64); !_ok_ { err = errors.New("DrawCard_ContinuousRestriction_Camp error"); return }; _v.DrawCardContinuousRestrictionCamp = int32(_tempNum_) }
{