diff --git a/bin/json/game_activityshow.json b/bin/json/game_activityshow.json index fdd2cbceb..38f38b29e 100644 --- a/bin/json/game_activityshow.json +++ b/bin/json/game_activityshow.json @@ -1,34 +1,57 @@ [ + { + "key": 0, + "show": [ + { + "a": "attr", + "t": "gold", + "n": 1 + }, + { + "a": "attr", + "t": "diamond", + "n": 1 + } + ] + }, { "key": 1001, - "show": { - "a": "item", - "t": "23000001", - "n": 0 - } + "show": [ + { + "a": "item", + "t": "23000001", + "n": 0 + } + ] }, { "key": 1003, - "show": { - "a": "item", - "t": "23000002", - "n": 0 - } + "show": [ + { + "a": "item", + "t": "23000002", + "n": 0 + } + ] }, { "key": 1004, - "show": { - "a": "item", - "t": "23000003", - "n": 0 - } + "show": [ + { + "a": "item", + "t": "23000003", + "n": 0 + } + ] }, { "key": 1005, - "show": { - "a": "item", - "t": "23000004", - "n": 0 - } + "show": [ + { + "a": "item", + "t": "23000004", + "n": 0 + } + ] } ] \ No newline at end of file diff --git a/bin/json/game_battleready.json b/bin/json/game_battleready.json index ac32c085c..e793543b5 100644 --- a/bin/json/game_battleready.json +++ b/bin/json/game_battleready.json @@ -9,6 +9,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -33,6 +37,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -57,6 +65,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -81,6 +93,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -105,6 +121,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -129,6 +149,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -153,6 +177,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -177,6 +205,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -201,6 +233,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -225,6 +261,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -249,6 +289,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -273,6 +317,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -297,6 +345,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -321,6 +373,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -345,6 +401,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -369,6 +429,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -393,6 +457,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -417,6 +485,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -441,6 +513,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -465,6 +541,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -489,6 +569,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -513,6 +597,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -537,6 +625,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -561,6 +653,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -585,6 +681,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 1, @@ -609,6 +709,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 1, @@ -633,6 +737,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -657,6 +765,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -681,6 +793,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 1, @@ -705,6 +821,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -729,6 +849,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -755,6 +879,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -781,6 +909,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -807,6 +939,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -831,6 +967,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -855,6 +995,10 @@ ], "HideAlienSpace": 0, "ShowBuff": 1, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [ 14 ], @@ -881,6 +1025,10 @@ ], "HideAlienSpace": 1, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -907,6 +1055,10 @@ ], "HideAlienSpace": 1, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, @@ -936,6 +1088,10 @@ ], "HideAlienSpace": 1, "ShowBuff": 0, + "RuleTips": { + "key": "", + "text": "" + }, "battleEvents": [], "ScoreGroupID": 0, "disableAiCamera": 0, diff --git a/bin/json/game_mainstage.json b/bin/json/game_mainstage.json index c535de7fc..0c0374926 100644 --- a/bin/json/game_mainstage.json +++ b/bin/json/game_mainstage.json @@ -675,13 +675,7 @@ "hero_exp": 0, "ps_consume": [], "ps_mg": [], - "firstaward": [ - { - "a": "attr", - "t": "gold", - "n": 6000 - } - ], + "firstaward": [], "lotteryward": 0, "commonaward": [], "BattleReadyID": 0, @@ -897,7 +891,7 @@ "openlevel": 1, "EditorStage": 0, "venturemodel": "", - "venturetype": 0, + "venturetype": 1, "ventureavatar": [ "Person/13002/13002_q.prefab" ], @@ -957,7 +951,7 @@ "openlevel": 1, "EditorStage": 0, "venturemodel": "", - "venturetype": 0, + "venturetype": 1, "ventureavatar": [ "Person/13002/13002_q.prefab" ], @@ -1017,7 +1011,7 @@ "openlevel": 1, "EditorStage": 0, "venturemodel": "", - "venturetype": 0, + "venturetype": 1, "ventureavatar": [ "Person/13002/13002_q.prefab" ], diff --git a/bin/json/game_monsterformat.json b/bin/json/game_monsterformat.json index 88a4d26bd..774f5b891 100644 --- a/bin/json/game_monsterformat.json +++ b/bin/json/game_monsterformat.json @@ -305,7 +305,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51004, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -325,7 +325,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51005, + "heroid": 51004, "star": 3, "equip": [], "newskill": [], @@ -365,7 +365,7 @@ "captainId": 1, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 53002, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -605,7 +605,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51004, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -625,7 +625,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51005, + "heroid": 51004, "star": 3, "equip": [], "newskill": [], @@ -665,7 +665,7 @@ "captainId": 1, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 53002, + "heroid": 51004, "star": 3, "equip": [], "newskill": [], @@ -685,7 +685,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": -1, + "heroid": 51004, "star": 3, "equip": [], "newskill": [], @@ -4205,7 +4205,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51010, + "heroid": 24004, "star": 3, "equip": [], "newskill": [], @@ -4225,7 +4225,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51011, + "heroid": 51052, "star": 3, "equip": [], "newskill": [], @@ -4245,7 +4245,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 34003, + "heroid": 51050, "star": 3, "equip": [], "newskill": [], @@ -4265,7 +4265,7 @@ "captainId": 1, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 24004, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -4505,7 +4505,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51002, + "heroid": 24004, "star": 3, "equip": [], "newskill": [], @@ -4525,7 +4525,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51003, + "heroid": 51050, "star": 3, "equip": [], "newskill": [], @@ -4545,7 +4545,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 24002, + "heroid": 51052, "star": 3, "equip": [], "newskill": [], @@ -4565,7 +4565,7 @@ "captainId": 1, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 24004, + "heroid": 51050, "star": 3, "equip": [], "newskill": [], @@ -4585,7 +4585,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": -1, + "heroid": 51052, "star": 3, "equip": [], "newskill": [], @@ -232705,7 +232705,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": -1, + "heroid": 51052, "star": 3, "equip": [], "newskill": [], @@ -232725,7 +232725,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51052, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -232745,7 +232745,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51050, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -232765,7 +232765,7 @@ "captainId": 1, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51050, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -232785,7 +232785,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51052, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -232965,7 +232965,7 @@ "captainId": 1, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51052, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -232985,7 +232985,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51052, + "heroid": -1, "star": 3, "equip": [], "newskill": [], @@ -233005,7 +233005,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51004, + "heroid": 51050, "star": 3, "equip": [], "newskill": [], @@ -233025,7 +233025,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51003, + "heroid": 51050, "star": 3, "equip": [], "newskill": [], @@ -233045,7 +233045,7 @@ "captainId": 0, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 51002, + "heroid": 51052, "star": 3, "equip": [], "newskill": [], @@ -233065,7 +233065,7 @@ "captainId": 1, "IsBoss": 0, "bossHpCnt": 0, - "heroid": 53001, + "heroid": 51052, "star": 5, "equip": [], "newskill": [], diff --git a/bin/json/game_stonebattle.json b/bin/json/game_stonebattle.json index 5247a3522..e6b1fbe4e 100644 --- a/bin/json/game_stonebattle.json +++ b/bin/json/game_stonebattle.json @@ -9,7 +9,7 @@ "EffreValue": 0, "BattleReadyID": 118, "FormatList": [ - 101011 + 500101 ], "RewardLottery": 21141101 }, @@ -23,7 +23,7 @@ "EffreValue": 0, "BattleReadyID": 118, "FormatList": [ - 101012 + 500201 ], "RewardLottery": 21141101 }, @@ -37,7 +37,7 @@ "EffreValue": 0, "BattleReadyID": 118, "FormatList": [ - 101013 + 500301 ], "RewardLottery": 21141101 }, @@ -51,7 +51,7 @@ "EffreValue": 0, "BattleReadyID": 118, "FormatList": [ - 101021 + 500401 ], "RewardLottery": 21141101 }, @@ -65,7 +65,7 @@ "EffreValue": 0, "BattleReadyID": 118, "FormatList": [ - 101051 + 500601 ], "RewardLottery": 21141101 }, @@ -79,7 +79,7 @@ "EffreValue": 0, "BattleReadyID": 118, "FormatList": [ - 101061 + 500701 ], "RewardLottery": 21141101 } diff --git a/bin/json/game_stoneroom.json b/bin/json/game_stoneroom.json index 2c6247acf..b9f0d424c 100644 --- a/bin/json/game_stoneroom.json +++ b/bin/json/game_stoneroom.json @@ -26,10 +26,10 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, - "EventStoryNpcGroup": 12100000, - "EventTreasureGroup": 10000001, - "EventStoreGroup": 11000000, + "EventBattleGroup": 14010100, + "EventStoryNpcGroup": 0, + "EventTreasureGroup": 0, + "EventStoreGroup": 0, "BossEvent": 0, "Condition": [ 14 @@ -44,10 +44,10 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, - "EventStoryNpcGroup": 12100000, - "EventTreasureGroup": 10000001, - "EventStoreGroup": 11000000, + "EventBattleGroup": 14010100, + "EventStoryNpcGroup": 0, + "EventTreasureGroup": 0, + "EventStoreGroup": 0, "BossEvent": 0, "Condition": [ 14 @@ -80,7 +80,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -132,7 +132,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -150,7 +150,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -186,7 +186,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -222,7 +222,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -240,7 +240,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -276,7 +276,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -328,7 +328,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -346,7 +346,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -382,7 +382,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -418,7 +418,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -436,7 +436,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -472,7 +472,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -524,7 +524,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -542,7 +542,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -578,7 +578,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -614,7 +614,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -632,7 +632,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -668,7 +668,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -720,7 +720,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -738,7 +738,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -774,7 +774,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -844,7 +844,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -862,7 +862,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -898,7 +898,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -934,7 +934,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -952,7 +952,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -988,7 +988,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1040,7 +1040,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1058,7 +1058,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1094,7 +1094,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1164,7 +1164,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1182,7 +1182,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1218,7 +1218,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1254,7 +1254,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1272,7 +1272,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1308,7 +1308,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1360,7 +1360,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1378,7 +1378,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1414,7 +1414,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1484,7 +1484,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1502,7 +1502,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1538,7 +1538,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1574,7 +1574,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1592,7 +1592,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1628,7 +1628,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1680,7 +1680,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1698,7 +1698,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1734,7 +1734,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1804,7 +1804,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1822,7 +1822,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1858,7 +1858,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1894,7 +1894,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1912,7 +1912,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -1948,7 +1948,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -2000,7 +2000,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -2018,7 +2018,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, @@ -2054,7 +2054,7 @@ "SceneName": "StonehengeScene1", "PortalName": "portal_1", "EventrewardGroup": 16010100, - "EventBattleGroup": 14110100, + "EventBattleGroup": 14010100, "EventStoryNpcGroup": 0, "EventTreasureGroup": 0, "EventStoreGroup": 0, diff --git a/modules/hero/hero_test.go b/modules/hero/hero_test.go index 16a7f47ca..0d42c30a9 100644 --- a/modules/hero/hero_test.go +++ b/modules/hero/hero_test.go @@ -17,6 +17,7 @@ import ( "go_dreamfactory/pb" "go_dreamfactory/services" "go_dreamfactory/sys/configure" + cfg "go_dreamfactory/sys/configure/structs" "go_dreamfactory/sys/db" "go_dreamfactory/utils" "os" @@ -75,6 +76,11 @@ func GetMonthStartEnd() (int64, int64) { fmt.Printf("%d,%d", _d1, _d2) return _d1, _d2 } + +const ( + game_lottery = "game_lottery.json" +) + func TimerStar() { //star := configure.Now() @@ -112,8 +118,185 @@ type sumy struct { next *sumy } -func Test_Main(t *testing.T) { +var ( + // 新掉落表 + _group map[int64][]int32 // key 小组ID value cid + // 类型为1 的数据 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组 + _lotteryType1 map[int32][]int32 // key 大组ID value cid + // 类型为2 的数据 有多个小组ID + _lotteryType2 map[int32][]int32 // key 大组ID value 小组ID + // 小组类型为1 + _groupType1 map[int64][]int32 //value cid + // 小组类型为2 + _groupType2 map[int64][]int32 //value cid + //Btype map[int32]int32 + Stype map[int64]int32 // subtype + SNum map[int64]int32 // 小组产出数量 +) +func GetConfigure(name string) (v interface{}, err error) { + return configure.GetConfigure(name) +} +func GetLotterConfById(id int32) (data *cfg.GameLotteryData) { + if v, err := GetConfigure(game_lottery); err == nil { + if configure, ok := v.(*cfg.GameLottery); ok { + return configure.Get(id) + } + } + return +} +func GetGroupDataByLottery(lotteryId int32) (items []*cfg.Gameatn) { + + if _, ok := _lotteryType1[lotteryId]; !ok { + if _, ok := _lotteryType2[lotteryId]; !ok { + fmt.Printf("not found config lotterId:%d", lotteryId) + return + } + } + // 优先校验大组ID 的类型 + //if this.Btype[lotteryId] == 1 { // 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组 + var ( + szW []int32 // 权重数组 + szID []int32 // 小组ID 数组 + groupID int32 + gourp map[int32]int32 // key 小组ID value 权重 + ) + + gourp = make(map[int32]int32, 0) + // 随机小组id + for _, v := range _lotteryType1[lotteryId] { + if _data := GetLotterConfById(v); _data != nil { + if _, ok := gourp[_data.Groupid]; !ok { + gourp[_data.Groupid] = _data.Groupwt // 小组ID 权重赋值 + szW = append(szW, _data.Groupwt) + szID = append(szID, _data.Groupid) + } + } + } + + groupID = szID[comm.GetRandW(szW)] // 获得小组ID + //fmt.Printf("大组类型为1的,获得小组ID :%d,dropID:%d", groupID, lotteryId) + key := int64(lotteryId)<<31 + int64(groupID) + // 小组ID 类型判断 + if Stype[key] == 1 { // 该小组的道具为权重掉落,必定从N个道具中随机出1个道具 + for i := 0; i < int(SNum[key]); i++ { + szW = make([]int32, 0) + szID = make([]int32, 0) + gourp = make(map[int32]int32, 0) + for _, v := range _groupType1[key] { + if _data := GetLotterConfById(v); _data != nil { // 权重赋值 + if _, ok := gourp[_data.Groupid]; !ok { + szW = append(szW, _data.Itemwt) + szID = append(szID, _data.Id) + } + } + } + index := comm.GetRandW(szW) + _data := GetLotterConfById(szID[index]) + //fmt.Printf("获得最终的道具 :%d", _data.Id) + count := comm.GetRandNum(_data.Min, _data.Max) + // 随机获得的数量 + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, + }) + } + + } else if Stype[key] == 2 { // 该小组中的道具为概率掉落,每个道具都会随机一次是否会掉落(单位为千分比) + var wt int32 + for _, v := range _groupType2[key] { + if _data := GetLotterConfById(v); _data != nil { // 权重赋值 + if _data.Itemwt != 0 { + wt = _data.Itemwt + } + if wt >= comm.GetRandNum(0, 1000) { // 命中 + count := comm.GetRandNum(_data.Min, _data.Max) + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, // 小组产出数量 + }) + } + } + } + + } + //} + //if this.Btype[lotteryId] == 2 { // 该大组中的小组为概率掉落,每个小组都会随机一次是否会掉落(单位为千分比) + // 每个小组id 都随机取一次 + var szGroupID []int32 // 获得的权重数组 + gourp1 := make([]*cfg.GameLotteryData, 0) // key 小组ID value 权重 + for _, v := range _lotteryType2[lotteryId] { + if _data := GetLotterConfById(v); _data != nil { + gourp1 = append(gourp1, _data) + } + } + // 过滤 group + var wt int32 + // 类型为2 可能会同时获得多个组id + for _, v := range gourp1 { + k := v.Groupid + if v.Groupwt != 0 { + wt = v.Groupwt + } + //fmt.Printf("大组类型为2的,获得小组ID :%d,dropID:%d", k, v.Id) + if wt >= comm.GetRandNum(0, 1000) { // 命中 + szGroupID = append(szGroupID, k) + key := int64(lotteryId)<<31 + int64(k) + if Stype[key] == 1 { // 随机一组数据 + for i := 0; i < int(SNum[key]); i++ { + szW := make([]int32, 0) + szID := make([]int32, 0) + gourp := make(map[int32]int32, 0) + for _, v := range _groupType1[key] { + if _data := GetLotterConfById(v); _data != nil { // 权重赋值 + if _, ok := gourp[_data.Groupid]; !ok { + szW = append(szW, _data.Itemwt) + szID = append(szID, _data.Id) + } + } + } + index := comm.GetRandW(szW) + _data := GetLotterConfById(szID[index]) + //fmt.Printf("获得最终的道具 :%d", _data.Id) + count := comm.GetRandNum(_data.Min, _data.Max) + // 随机获得的数量 + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, + }) + } + } else if Stype[key] == 2 { + var wt int32 + for _, v := range _groupType2[key] { + if _data := GetLotterConfById(v); _data != nil { // 权重赋值 + if _data.Itemwt != 0 { + wt = _data.Itemwt + } + if wt >= comm.GetRandNum(1, 1000) { // 命中 + count := comm.GetRandNum(_data.Min, _data.Max) + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, // 小组产出数量 + }) + } + } + } + } + } + } + //} + return +} +func LoadConfigure(name string, fn interface{}) (err error) { + return configure.RegisterConfigure(name, fn, nil) +} +func Test_Main(t *testing.T) { + LoadConfigure(game_lottery, cfg.NewGameLottery) + GetGroupDataByLottery(1001) value, err := strconv.Atoi("944005411") fmt.Printf("%v,%v,%d", value, err, utils.WeekIntervalTime()) ids := utils.RandomNumbers(0, 10, 5) diff --git a/modules/stonehenge/api_enterlevel.go b/modules/stonehenge/api_enterlevel.go index f5d7906d3..e7346768c 100644 --- a/modules/stonehenge/api_enterlevel.go +++ b/modules/stonehenge/api_enterlevel.go @@ -21,17 +21,16 @@ func (this *apiComp) EnterLevelCheck(session comm.IUserSession, req *pb.Stonehen //进入关卡 选择英雄和buff 一起处理 func (this *apiComp) EnterLevel(session comm.IUserSession, req *pb.StonehengeEnterLevelReq) (errdata *pb.ErrorData) { var ( - stone *pb.DBStonehenge - update map[string]interface{} - heros []*pb.DBHero - portal int32 // 生成传送门 构造房间数据 - confStage *cfg.GameStoneStageData - roomlotteryConf *cfg.GameRoomlotteryData - curRoomConf *cfg.GameStoneRoomData // 当前房间 - szBuff []int32 - err error - szEvent []int32 - roles []*pb.BattleRole + stone *pb.DBStonehenge + update map[string]interface{} + heros []*pb.DBHero + portal int32 // 生成传送门 构造房间数据 + confStage *cfg.GameStoneStageData + curRoomConf *cfg.GameStoneRoomData // 当前房间 + szBuff []int32 + err error + szEvent []int32 + roles []*pb.BattleRole ) update = make(map[string]interface{}) if errdata = this.EnterLevelCheck(session, req); errdata != nil { @@ -89,16 +88,8 @@ func (this *apiComp) EnterLevel(session comm.IUserSession, req *pb.StonehengeEnt update["hero"] = stone.Hero stone.Addweight[req.BuffType] = 1 update["addweight"] = stone.Addweight - // 生成传送门 - if roomlotteryConf = this.module.configure.GetRoomLotterConfById(portal); roomlotteryConf != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ConfigNoFound, - Title: pb.ErrorCode_ConfigNoFound.ToString(), - Message: fmt.Sprintf("GetRoomLotterConfById :%d", portal), - } - return - } - if r := this.module.configure.GetRoomGroupDataByLottery(confStage.PortalGroup); len(r) > 0 { + + if r := this.module.configure.GetRoomGroupDataByLottery(portal); len(r) > 0 { if curRoomConf, err = this.module.configure.GetStoneRoomDataById(r[0]); err != nil { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ConfigNoFound, @@ -111,7 +102,7 @@ func (this *apiComp) EnterLevel(session comm.IUserSession, req *pb.StonehengeEnt errdata = &pb.ErrorData{ Code: pb.ErrorCode_ConfigNoFound, Title: pb.ErrorCode_ConfigNoFound.ToString(), - Message: fmt.Sprintf("GetRoomGroupDataByLottery :%d", confStage.PortalGroup), + Message: fmt.Sprintf("GetRoomGroupDataByLottery :%d", portal), } return } diff --git a/modules/stonehenge/module.go b/modules/stonehenge/module.go index c05e5f5dc..ea1ff749e 100644 --- a/modules/stonehenge/module.go +++ b/modules/stonehenge/module.go @@ -71,8 +71,11 @@ func (this *Stonehenge) GmAddStoneEvent(uid string, eventid int32) { if stone.Rooms != nil { stone.Rooms.Eventid[eventid] = false update := make(map[string]interface{}) + + this.modelStonehenge.AddNewEvent([]int32{eventid}, stone) update["rooms"] = stone.Rooms this.modelStonehenge.ChangeStonehengeData(uid, update) + } return diff --git a/modules/tools/comp_configure.go b/modules/tools/comp_configure.go index dad9a7d22..f5c9eabcd 100644 --- a/modules/tools/comp_configure.go +++ b/modules/tools/comp_configure.go @@ -51,9 +51,9 @@ type MCompConfigure struct { _groupType1 map[int64][]int32 //value cid // 小组类型为2 _groupType2 map[int64][]int32 //value cid - Btype map[int32]int32 - Stype map[int64]int32 // subtype - SNum map[int64]int32 // 小组产出数量 + //Btype map[int32]int32 + Stype map[int64]int32 // subtype + SNum map[int64]int32 // 小组产出数量 _price map[int32][]*cfg.GamePricegroupData } @@ -84,11 +84,13 @@ func (this *MCompConfigure) Init(service core.IService, module core.IModule, com this._lotteryType2 = make(map[int32][]int32, 0) this._groupType1 = make(map[int64][]int32, 0) this._groupType2 = make(map[int64][]int32, 0) - this.Btype = make(map[int32]int32, 0) + //this.Btype = make(map[int32]int32, 0) this.Stype = make(map[int64]int32, 0) this.SNum = make(map[int64]int32, 0) configure.RegisterConfigure(game_lottery, cfg.NewGameLottery, this.LoadGroupData) + this.GetGroupDataByLottery(40001001, 0, 1) + this.GetGroupDataByLottery(1001, 0, 1) return } @@ -102,14 +104,20 @@ func (this *MCompConfigure) LoadGroupData() { this._lotteryType2 = make(map[int32][]int32, 0) this._groupType1 = make(map[int64][]int32, 0) this._groupType2 = make(map[int64][]int32, 0) - this.Btype = make(map[int32]int32, 0) + //this.Btype = make(map[int32]int32, 0) this.Stype = make(map[int64]int32, 0) this.SNum = make(map[int64]int32, 0) - var tmp int64 + + var itype int32 for _, value := range configure.GetDataList() { key := int64(value.Lotteryid)<<31 + int64(value.Groupid) + // key2 := int64(value.Lotteryid)<<31 + int64(value.Type) this._group[key] = append(this._group[key], value.Id) - + if value.Type == 0 { + value.Type = itype + } else { + itype = value.Type + } // 数据安全校验 if value.Min > value.Max { log.Errorf("value.Min:%d > value.Max :%d ", value.Min, value.Max) @@ -124,26 +132,20 @@ func (this *MCompConfigure) LoadGroupData() { log.Errorf("value.Playerlvmin:%d > value.Playerlvmax :%d ", value.Playerlvmin, value.Playerlvmax) return } - if _, ok := this.Btype[value.Lotteryid]; !ok { - this.Btype[value.Lotteryid] = value.Type - } - if _, ok := this.Stype[key]; !ok { this.Stype[key] = value.Subtype } if _, ok := this.SNum[key]; !ok { this.SNum[key] = value.Groupnum } - if this.Btype[value.Lotteryid] == 1 { - if tmp != key { - this._lotteryType1[value.Lotteryid] = append(this._lotteryType1[value.Lotteryid], value.Id) - tmp = key - } - } else if this.Btype[value.Lotteryid] == 2 { - if tmp != key { - this._lotteryType2[value.Lotteryid] = append(this._lotteryType2[value.Lotteryid], value.Id) - tmp = key - } + + if value.Type == 1 || value.Type == 0 { + this._lotteryType1[value.Lotteryid] = append(this._lotteryType1[value.Lotteryid], value.Id) + + } + if value.Type == 2 || value.Type == 0 { + this._lotteryType2[value.Lotteryid] = append(this._lotteryType2[value.Lotteryid], value.Id) + } if this.Stype[key] == 1 { // 小组ID为1 @@ -170,145 +172,145 @@ func (this *MCompConfigure) GetGroupDataByLottery(lotteryId int32, vipLv int32, } } // 优先校验大组ID 的类型 - if this.Btype[lotteryId] == 1 { // 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组 - var ( - szW []int32 // 权重数组 - szID []int32 // 小组ID 数组 - groupID int32 - gourp map[int32]int32 // key 小组ID value 权重 - ) + //if this.Btype[lotteryId] == 1 { // 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组 + var ( + szW []int32 // 权重数组 + szID []int32 // 小组ID 数组 + groupID int32 + gourp map[int32]int32 // key 小组ID value 权重 + ) - gourp = make(map[int32]int32, 0) - // 随机小组id - for _, v := range this._lotteryType1[lotteryId] { - if _data := this.GetLotterConfById(v); _data != nil { - if (_data.Playerlvmax == 0 || (_data.Playerlvmin <= lv && lv <= _data.Playerlvmax)) && (_data.VIPmax == 0 || (_data.VIPmin <= vipLv && vipLv <= _data.VIPmax)) { // 过滤等级等条件 - if _, ok := gourp[_data.Groupid]; !ok { - gourp[_data.Groupid] = _data.Groupwt // 小组ID 权重赋值 - szW = append(szW, _data.Groupwt) - szID = append(szID, _data.Groupid) - } + gourp = make(map[int32]int32, 0) + // 随机小组id + for _, v := range this._lotteryType1[lotteryId] { + if _data := this.GetLotterConfById(v); _data != nil { + if (_data.Playerlvmax == 0 || (_data.Playerlvmin <= lv && lv <= _data.Playerlvmax)) && (_data.VIPmax == 0 || (_data.VIPmin <= vipLv && vipLv <= _data.VIPmax)) { // 过滤等级等条件 + if _, ok := gourp[_data.Groupid]; !ok { + gourp[_data.Groupid] = _data.Groupwt // 小组ID 权重赋值 + szW = append(szW, _data.Groupwt) + szID = append(szID, _data.Groupid) } } } + } - groupID = szID[comm.GetRandW(szW)] // 获得小组ID - //fmt.Printf("大组类型为1的,获得小组ID :%d,dropID:%d", groupID, lotteryId) - key := int64(lotteryId)<<31 + int64(groupID) - // 小组ID 类型判断 - if this.Stype[key] == 1 { // 该小组的道具为权重掉落,必定从N个道具中随机出1个道具 - for i := 0; i < int(this.SNum[key]); i++ { - szW = make([]int32, 0) - szID = make([]int32, 0) - gourp = make(map[int32]int32, 0) - for _, v := range this._groupType1[key] { - if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值 - if _, ok := gourp[_data.Groupid]; !ok { - szW = append(szW, _data.Itemwt) - szID = append(szID, _data.Id) - } - } - } - index := comm.GetRandW(szW) - _data := this.GetLotterConfById(szID[index]) - //fmt.Printf("获得最终的道具 :%d", _data.Id) - count := comm.GetRandNum(_data.Min, _data.Max) - // 随机获得的数量 - items = append(items, &cfg.Gameatn{ - A: _data.Itemid.A, - T: _data.Itemid.T, - N: _data.Itemid.N * count, - }) - } - return - } else if this.Stype[key] == 2 { // 该小组中的道具为概率掉落,每个道具都会随机一次是否会掉落(单位为千分比) - var wt int32 - for _, v := range this._groupType2[key] { + groupID = szID[comm.GetRandW(szW)] // 获得小组ID + //fmt.Printf("大组类型为1的,获得小组ID :%d,dropID:%d", groupID, lotteryId) + key := int64(lotteryId)<<31 + int64(groupID) + // 小组ID 类型判断 + if this.Stype[key] == 1 { // 该小组的道具为权重掉落,必定从N个道具中随机出1个道具 + for i := 0; i < int(this.SNum[key]); i++ { + szW = make([]int32, 0) + szID = make([]int32, 0) + gourp = make(map[int32]int32, 0) + for _, v := range this._groupType1[key] { if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值 - if _data.Itemwt != 0 { - wt = _data.Itemwt - } - if wt >= comm.GetRandNum(0, 1000) { // 命中 - count := comm.GetRandNum(_data.Min, _data.Max) - items = append(items, &cfg.Gameatn{ - A: _data.Itemid.A, - T: _data.Itemid.T, - N: _data.Itemid.N * count, // 小组产出数量 - }) + if _, ok := gourp[_data.Groupid]; !ok { + szW = append(szW, _data.Itemwt) + szID = append(szID, _data.Id) } } } - return + index := comm.GetRandW(szW) + _data := this.GetLotterConfById(szID[index]) + //fmt.Printf("获得最终的道具 :%d", _data.Id) + count := comm.GetRandNum(_data.Min, _data.Max) + // 随机获得的数量 + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, + }) } - } - if this.Btype[lotteryId] == 2 { // 该大组中的小组为概率掉落,每个小组都会随机一次是否会掉落(单位为千分比) - // 每个小组id 都随机取一次 - var szGroupID []int32 // 获得的权重数组 - gourp := make([]*cfg.GameLotteryData, 0) // key 小组ID value 权重 - for _, v := range this._lotteryType2[lotteryId] { - if _data := this.GetLotterConfById(v); _data != nil { - if (_data.Playerlvmax == 0 || (_data.Playerlvmin <= lv && lv <= _data.Playerlvmax)) && (_data.VIPmax == 0 || (_data.VIPmin <= vipLv && vipLv <= _data.VIPmax)) { // 过滤等级等条件 - gourp = append(gourp, _data) - } - } - } - // 过滤 group + + } else if this.Stype[key] == 2 { // 该小组中的道具为概率掉落,每个道具都会随机一次是否会掉落(单位为千分比) var wt int32 - // 类型为2 可能会同时获得多个组id - for _, v := range gourp { - k := v.Groupid - if v.Groupwt != 0 { - wt = v.Groupwt + for _, v := range this._groupType2[key] { + if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值 + if _data.Itemwt != 0 { + wt = _data.Itemwt + } + if wt >= comm.GetRandNum(0, 1000) { // 命中 + count := comm.GetRandNum(_data.Min, _data.Max) + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, // 小组产出数量 + }) + } } - //fmt.Printf("大组类型为2的,获得小组ID :%d,dropID:%d", k, v.Id) - if wt >= comm.GetRandNum(0, 1000) { // 命中 - szGroupID = append(szGroupID, k) - key := int64(lotteryId)<<31 + int64(k) - if this.Stype[key] == 1 { // 随机一组数据 - for i := 0; i < int(this.SNum[key]); i++ { - szW := make([]int32, 0) - szID := make([]int32, 0) - gourp := make(map[int32]int32, 0) - for _, v := range this._groupType1[key] { - if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值 - if _, ok := gourp[_data.Groupid]; !ok { - szW = append(szW, _data.Itemwt) - szID = append(szID, _data.Id) - } + } + + } + //} + //if this.Btype[lotteryId] == 2 { // 该大组中的小组为概率掉落,每个小组都会随机一次是否会掉落(单位为千分比) + // 每个小组id 都随机取一次 + var szGroupID []int32 // 获得的权重数组 + gourp1 := make([]*cfg.GameLotteryData, 0) // key 小组ID value 权重 + for _, v := range this._lotteryType2[lotteryId] { + if _data := this.GetLotterConfById(v); _data != nil { + if (_data.Playerlvmax == 0 || (_data.Playerlvmin <= lv && lv <= _data.Playerlvmax)) && (_data.VIPmax == 0 || (_data.VIPmin <= vipLv && vipLv <= _data.VIPmax)) { // 过滤等级等条件 + gourp1 = append(gourp1, _data) + } + } + } + // 过滤 group + var wt int32 + // 类型为2 可能会同时获得多个组id + for _, v := range gourp1 { + k := v.Groupid + if v.Groupwt != 0 { + wt = v.Groupwt + } + //fmt.Printf("大组类型为2的,获得小组ID :%d,dropID:%d", k, v.Id) + if wt >= comm.GetRandNum(0, 1000) { // 命中 + szGroupID = append(szGroupID, k) + key := int64(lotteryId)<<31 + int64(k) + if this.Stype[key] == 1 { // 随机一组数据 + for i := 0; i < int(this.SNum[key]); i++ { + szW := make([]int32, 0) + szID := make([]int32, 0) + gourp := make(map[int32]int32, 0) + for _, v := range this._groupType1[key] { + if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值 + if _, ok := gourp[_data.Groupid]; !ok { + szW = append(szW, _data.Itemwt) + szID = append(szID, _data.Id) } } - index := comm.GetRandW(szW) - _data := this.GetLotterConfById(szID[index]) - //fmt.Printf("获得最终的道具 :%d", _data.Id) - count := comm.GetRandNum(_data.Min, _data.Max) - // 随机获得的数量 - items = append(items, &cfg.Gameatn{ - A: _data.Itemid.A, - T: _data.Itemid.T, - N: _data.Itemid.N * count, - }) } - } else if this.Stype[key] == 2 { - var wt int32 - for _, v := range this._groupType2[key] { - if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值 - if _data.Itemwt != 0 { - wt = _data.Itemwt - } - if wt >= comm.GetRandNum(1, 1000) { // 命中 - count := comm.GetRandNum(_data.Min, _data.Max) - items = append(items, &cfg.Gameatn{ - A: _data.Itemid.A, - T: _data.Itemid.T, - N: _data.Itemid.N * count, // 小组产出数量 - }) - } + index := comm.GetRandW(szW) + _data := this.GetLotterConfById(szID[index]) + //fmt.Printf("获得最终的道具 :%d", _data.Id) + count := comm.GetRandNum(_data.Min, _data.Max) + // 随机获得的数量 + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, + }) + } + } else if this.Stype[key] == 2 { + var wt int32 + for _, v := range this._groupType2[key] { + if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值 + if _data.Itemwt != 0 { + wt = _data.Itemwt + } + if wt >= comm.GetRandNum(1, 1000) { // 命中 + count := comm.GetRandNum(_data.Min, _data.Max) + items = append(items, &cfg.Gameatn{ + A: _data.Itemid.A, + T: _data.Itemid.T, + N: _data.Itemid.N * count, // 小组产出数量 + }) } } } } } } + //} return } diff --git a/sys/configure/structs/Game.Activityshow.go b/sys/configure/structs/Game.Activityshow.go new file mode 100644 index 000000000..2df201fa5 --- /dev/null +++ b/sys/configure/structs/Game.Activityshow.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 GameActivityshow struct { + _dataMap map[int32]*GameActivityshowData + _dataList []*GameActivityshowData +} + +func NewGameActivityshow(_buf []map[string]interface{}) (*GameActivityshow, error) { + _dataList := make([]*GameActivityshowData, 0, len(_buf)) + dataMap := make(map[int32]*GameActivityshowData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGameActivityshowData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.Key] = _v + } + } + return &GameActivityshow{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GameActivityshow) GetDataMap() map[int32]*GameActivityshowData { + return table._dataMap +} + +func (table *GameActivityshow) GetDataList() []*GameActivityshowData { + return table._dataList +} + +func (table *GameActivityshow) Get(key int32) *GameActivityshowData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.ActivityshowData.go b/sys/configure/structs/Game.ActivityshowData.go new file mode 100644 index 000000000..96fe359a3 --- /dev/null +++ b/sys/configure/structs/Game.ActivityshowData.go @@ -0,0 +1,50 @@ +//------------------------------------------------------------------------------ +// +// 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 GameActivityshowData struct { + Key int32 + Show []*Gameatn +} + +const TypeId_GameActivityshowData = 1637104338 + +func (*GameActivityshowData) GetTypeId() int32 { + return 1637104338 +} + +func (_v *GameActivityshowData)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 _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["show"].([]interface{}); !_ok_ { err = errors.New("show error"); return } + + _v.Show = make([]*Gameatn, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatn + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } } + _v.Show = append(_v.Show, _list_v_) + } + } + + return +} + +func DeserializeGameActivityshowData(_buf map[string]interface{}) (*GameActivityshowData, error) { + v := &GameActivityshowData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.BattleReadyData.go b/sys/configure/structs/Game.BattleReadyData.go index f912b0ea8..5ceef83ec 100644 --- a/sys/configure/structs/Game.BattleReadyData.go +++ b/sys/configure/structs/Game.BattleReadyData.go @@ -18,6 +18,7 @@ type GameBattleReadyData struct { BattleScenes []string HideAlienSpace int32 ShowBuff int32 + RuleTips string BattleEvents []int32 ScoreGroupID int32 DisableAiCamera int32 @@ -60,6 +61,7 @@ func (_v *GameBattleReadyData)Deserialize(_buf map[string]interface{}) (err erro { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["HideAlienSpace"].(float64); !_ok_ { err = errors.New("HideAlienSpace error"); return }; _v.HideAlienSpace = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ShowBuff"].(float64); !_ok_ { err = errors.New("ShowBuff error"); return }; _v.ShowBuff = int32(_tempNum_) } + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["RuleTips"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.RuleTips error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.RuleTips, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } { var _arr_ []interface{} var _ok_ bool diff --git a/sys/configure/structs/Game.BuffType.go b/sys/configure/structs/Game.BuffType.go index 375dea00a..a18cee9b6 100644 --- a/sys/configure/structs/Game.BuffType.go +++ b/sys/configure/structs/Game.BuffType.go @@ -102,4 +102,9 @@ const ( GameBuffType_LOST_SHIELD_EXTRA_DMG = 109 GameBuffType_AOE_DMG = 110 GameBuffType_AVERAGE_DMG = 111 + GameBuffType_CAMP_RESTRAIN = 112 + GameBuffType_SKY_CHOSEN = 113 + GameBuffType_FIGHT_VOLITION = 114 + GameBuffType_WEAKENS = 115 + GameBuffType_CONCEAL = 116 ) diff --git a/sys/configure/structs/Tables.go b/sys/configure/structs/Tables.go index 96041805c..aa9b909b1 100644 --- a/sys/configure/structs/Tables.go +++ b/sys/configure/structs/Tables.go @@ -246,6 +246,7 @@ type Tables struct { UiGameMiner *GameUiGameMiner PushGift *GamePushGift UiGameConsum *GameUiGameConsum + Activityshow *GameActivityshow } func NewTables(loader JsonLoader) (*Tables, error) { @@ -1663,5 +1664,11 @@ func NewTables(loader JsonLoader) (*Tables, error) { if tables.UiGameConsum, err = NewGameUiGameConsum(buf) ; err != nil { return nil, err } + if buf, err = loader("game_activityshow") ; err != nil { + return nil, err + } + if tables.Activityshow, err = NewGameActivityshow(buf) ; err != nil { + return nil, err + } return tables, nil }