diff --git a/DungeonShooting_Godot/resource/map/RoomConfig.json b/DungeonShooting_Godot/resource/map/RoomConfig.json index 49af03e..12c1bde 100644 --- a/DungeonShooting_Godot/resource/map/RoomConfig.json +++ b/DungeonShooting_Godot/resource/map/RoomConfig.json @@ -1,26 +1,37 @@ -[ - { - "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room1.tscn", - "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room1.json" - }, - { - "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room2.tscn", - "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room2.json" - }, - { - "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room3.tscn", - "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room3.json" - }, - { - "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room4.tscn", - "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room4.json" - }, - { - "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room5.tscn", - "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room5.json" - }, - { - "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room6.tscn", - "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room6.json" +{ + "testGroup": { + "GroupName": "testGroup", + "BattleList": [ + { + "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room1.tscn", + "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room1.json" + }, + { + "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room2.tscn", + "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room2.json" + }, + { + "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room3.tscn", + "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room3.json" + }, + { + "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room4.tscn", + "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room4.json" + }, + { + "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room5.tscn", + "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room5.json" + }, + { + "ScenePath": "res://resource/map/tileMaps/testGroup/battle/Room6.tscn", + "ConfigPath": "res://resource/map/tiledata/testGroup/battle/Room6.json" + } + ], + "InletList": [], + "OutletList": [], + "BossList": [], + "RewardList": [], + "ShopList": [], + "EventList": [] } -] \ No newline at end of file +} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/testGroup/battle/Room1.tscn b/DungeonShooting_Godot/resource/map/tileMaps/testGroup/battle/Room1.tscn index 14d20aa..38f57cb 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/testGroup/battle/Room1.tscn +++ b/DungeonShooting_Godot/resource/map/tileMaps/testGroup/battle/Room1.tscn @@ -9,7 +9,6 @@ format = 2 layer_0/tile_data = PackedInt32Array(-65539, 131072, 2, 196605, 131072, 7, 262141, 0, 8, 327677, 0, 8, 393213, 0, 8, 458749, 131072, 2, -65538, 131072, 2, 196606, 131072, 7, 262142, 0, 8, 327678, 0, 8, 393214, 0, 8, 458750, 131072, 2, -65537, 131072, 2, 196607, 131072, 7, 262143, 0, 8, 327679, 0, 8, 393215, 0, 8, 458751, 131072, 2, -131072, 131072, 2, 131072, 131072, 7, 196608, 0, 8, 262144, 0, 8, 327680, 0, 8, 393216, 131072, 2, -131071, 131072, 2, 131073, 131072, 7, 196609, 0, 8, 262145, 0, 8, 327681, 0, 8, 393217, 131072, 2, -131070, 131072, 2, 131074, 131072, 7, 393218, 131072, 2, -131069, 131072, 2, 131075, 131072, 7, 393219, 131072, 2, -131068, 131072, 2, 131076, 131072, 7, 393220, 131072, 2, -131067, 196608, 2, -65531, 196608, 3, 5, 196608, 3, 65541, 196608, 3, 131077, 196608, 7, 393221, 131072, 2, -131066, 0, 8, -65530, 0, 8, 6, 0, 8, 65542, 0, 8, 131078, 0, 8, 393222, 131072, 2, -131065, 0, 8, -65529, 0, 8, 7, 0, 8, 65543, 0, 8, 131079, 0, 8, 393223, 131072, 2, -131064, 0, 8, -65528, 0, 8, 8, 0, 8, 65544, 0, 8, 131080, 0, 8, 393224, 131072, 2, -131063, 65536, 3, -65527, 65536, 3, 9, 65536, 3, 65545, 65536, 3, 131081, 65536, 3, 393225, 851968, 2, -327690, 196608, 4, -262154, 196608, 3, -196618, 196608, 3, -131082, 196608, 3, -65546, 196608, 3, -10, 196608, 3, 65526, 196608, 3, 131062, 196608, 3, 196598, 196608, 3, 262134, 196608, 3, 327670, 196608, 3, 393206, 196608, 3, 458742, 720896, 2, -327689, 131072, 7, -262153, 0, 8, -196617, 0, 8, -131081, 0, 8, -65545, 0, 8, -9, 0, 8, 65527, 0, 8, 131063, 0, 8, 196599, 0, 8, 262135, 0, 8, 327671, 0, 8, 393207, 0, 8, 458743, 131072, 2, -327688, 131072, 7, -262152, 0, 8, -196616, 0, 8, -131080, 0, 8, -65544, 0, 8, -8, 0, 8, 65528, 0, 8, 131064, 0, 8, 196600, 0, 8, 262136, 0, 8, 327672, 0, 8, 393208, 0, 8, 458744, 131072, 2, -327687, 131072, 7, -262151, 0, 8, -196615, 0, 8, -131079, 0, 8, -65543, 0, 8, -7, 0, 8, 65529, 0, 8, 131065, 0, 8, 196601, 0, 8, 262137, 0, 8, 327673, 0, 8, 393209, 0, 8, 458745, 131072, 2, -327686, 131072, 7, -262150, 0, 8, -196614, 0, 8, -131078, 0, 8, -65542, 65536, 2, -6, 65536, 3, 65530, 65536, 3, 131066, 65536, 3, 196602, 65536, 7, 262138, 0, 8, 327674, 0, 8, 393210, 0, 8, 458746, 131072, 2, -327685, 131072, 7, -262149, 0, 8, -196613, 0, 8, -131077, 0, 8, -65541, 131072, 2, 196603, 131072, 7, 262139, 0, 8, 327675, 0, 8, 393211, 0, 8, 458747, 131072, 2, -327684, 131072, 7, -262148, 0, 8, -196612, 0, 8, -131076, 0, 8, -65540, 131072, 2, 196604, 131072, 7, 262140, 0, 8, 327676, 0, 8, 393212, 0, 8, 458748, 131072, 2, -327683, 131072, 7, -262147, 0, 8, -196611, 0, 8, -131075, 0, 8, -327682, 131072, 7, -262146, 0, 8, -196610, 0, 8, -131074, 0, 8, -327681, 131072, 7, -262145, 0, 8, -196609, 0, 8, -131073, 0, 8, -393216, 131072, 7, -327680, 0, 8, -262144, 0, 8, -196608, 0, 8, -393215, 131072, 7, -327679, 0, 8, -262143, 0, 8, -196607, 0, 8, -393214, 131072, 7, -327678, 0, 8, -262142, 0, 8, -196606, 0, 8, 196610, 0, 8, 262146, 0, 8, 327682, 0, 8, -393213, 131072, 7, -327677, 0, 8, -262141, 0, 8, -196605, 0, 8, 196611, 0, 8, 262147, 0, 8, 327683, 0, 8, -393212, 131072, 7, -327676, 0, 8, -262140, 0, 8, -196604, 0, 8, 196612, 0, 8, 262148, 0, 8, 327684, 0, 8, -393211, 131072, 7, -327675, 0, 8, -262139, 0, 8, -196603, 0, 8, 196613, 0, 8, 262149, 0, 8, 327685, 0, 8, -393210, 131072, 7, -327674, 0, 8, -262138, 0, 8, -196602, 0, 8, 196614, 0, 8, 262150, 0, 8, 327686, 0, 8, -393209, 131072, 7, -327673, 0, 8, -262137, 0, 8, -196601, 0, 8, 196615, 0, 8, 262151, 0, 8, 327687, 0, 8, -393208, 131072, 7, -327672, 0, 8, -262136, 0, 8, -196600, 0, 8, 196616, 0, 8, 262152, 0, 8, 327688, 0, 8, -393207, 65536, 4, -327671, 65536, 3, -262135, 65536, 3, -196599, 65536, 3, 196617, 65536, 3, 262153, 65536, 3, 327689, 65536, 3) script = ExtResource("1_wwejn") -EnableEdit = true [node name="EnemyMark" type="Node2D" parent="."] position = Vector2(0, -56) diff --git a/DungeonShooting_Godot/resource/theme/mainTheme.tres b/DungeonShooting_Godot/resource/theme/mainTheme.tres index 84cfdc7..d359406 100644 --- a/DungeonShooting_Godot/resource/theme/mainTheme.tres +++ b/DungeonShooting_Godot/resource/theme/mainTheme.tres @@ -352,7 +352,7 @@ [sub_resource type="ImageTexture" id="58"] -[sub_resource type="Image" id="Image_kh1wy"] +[sub_resource type="Image" id="Image_ff0la"] data = { "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 1, 255, 255, 255, 39, 255, 255, 255, 67, 255, 255, 255, 67, 255, 255, 255, 39, 255, 255, 255, 1, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 39, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 39, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 66, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 66, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 66, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 66, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 39, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 39, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 1, 255, 255, 255, 39, 255, 255, 255, 67, 255, 255, 255, 67, 255, 255, 255, 39, 255, 255, 255, 1, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "format": "RGBA8", @@ -362,7 +362,7 @@ } [sub_resource type="ImageTexture" id="60"] -image = SubResource("Image_kh1wy") +image = SubResource("Image_ff0la") [sub_resource type="StyleBoxTexture" id="61"] content_margin_left = 2.0 @@ -372,7 +372,7 @@ texture = SubResource("60") region_rect = Rect2(0, 0, 12, 12) -[sub_resource type="Image" id="Image_1m8b7"] +[sub_resource type="Image" id="Image_r73sc"] data = { "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 247, 247, 247, 0, 248, 248, 248, 0, 248, 248, 248, 0, 247, 247, 247, 0, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 191, 191, 191, 4, 247, 247, 247, 98, 248, 248, 248, 167, 248, 248, 248, 167, 247, 247, 247, 98, 191, 191, 191, 4, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247, 247, 247, 0, 247, 247, 247, 97, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 247, 247, 247, 97, 247, 247, 247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 248, 248, 248, 0, 248, 248, 248, 164, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 164, 248, 248, 248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 248, 248, 248, 0, 248, 248, 248, 164, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 164, 248, 248, 248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247, 247, 247, 0, 247, 247, 247, 97, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 247, 247, 247, 97, 247, 247, 247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 191, 191, 191, 4, 247, 247, 247, 98, 248, 248, 248, 167, 248, 248, 248, 167, 247, 247, 247, 98, 191, 191, 191, 4, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 247, 247, 247, 0, 248, 248, 248, 0, 248, 248, 248, 0, 247, 247, 247, 0, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "format": "RGBA8", @@ -382,7 +382,7 @@ } [sub_resource type="ImageTexture" id="63"] -image = SubResource("Image_1m8b7") +image = SubResource("Image_r73sc") [sub_resource type="StyleBoxTexture" id="64"] content_margin_left = 2.0 @@ -392,7 +392,7 @@ texture = SubResource("63") region_rect = Rect2(0, 0, 12, 12) -[sub_resource type="Image" id="Image_ddhrx"] +[sub_resource type="Image" id="Image_rfiw1"] data = { "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 127, 127, 127, 4, 173, 173, 173, 97, 173, 173, 173, 166, 173, 173, 173, 166, 173, 173, 173, 97, 127, 127, 127, 4, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 172, 172, 0, 172, 172, 172, 96, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 172, 172, 172, 96, 172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173, 173, 173, 0, 173, 173, 173, 163, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 163, 173, 173, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173, 173, 173, 0, 173, 173, 173, 163, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 163, 173, 173, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 172, 172, 0, 172, 172, 172, 96, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 172, 172, 172, 96, 172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 127, 127, 127, 4, 173, 173, 173, 97, 173, 173, 173, 166, 173, 173, 173, 166, 173, 173, 173, 97, 127, 127, 127, 4, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "format": "RGBA8", @@ -402,7 +402,7 @@ } [sub_resource type="ImageTexture" id="66"] -image = SubResource("Image_ddhrx") +image = SubResource("Image_rfiw1") [sub_resource type="StyleBoxTexture" id="67"] content_margin_left = 2.0 @@ -412,7 +412,7 @@ texture = SubResource("66") region_rect = Rect2(0, 0, 12, 12) -[sub_resource type="Image" id="Image_td6am"] +[sub_resource type="Image" id="Image_t6bx1"] data = { "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 4, 255, 255, 255, 16, 255, 255, 255, 16, 255, 255, 255, 4, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 16, 255, 255, 255, 21, 255, 255, 255, 21, 255, 255, 255, 16, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 16, 255, 255, 255, 21, 255, 255, 255, 21, 255, 255, 255, 16, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 4, 255, 255, 255, 16, 255, 255, 255, 16, 255, 255, 255, 4, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "format": "RGBA8", @@ -422,7 +422,7 @@ } [sub_resource type="ImageTexture" id="69"] -image = SubResource("Image_td6am") +image = SubResource("Image_t6bx1") [sub_resource type="StyleBoxTexture" id="70"] content_margin_left = 0.0 @@ -446,7 +446,7 @@ content_margin_right = 4.0 content_margin_bottom = 4.0 -[sub_resource type="Image" id="Image_44l8e"] +[sub_resource type="Image" id="Image_4snrh"] data = { "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 76, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 76, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 76, 255, 255, 255, 228, 255, 255, 255, 188, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 188, 255, 255, 255, 228, 255, 255, 255, 76, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 18, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 187, 255, 255, 255, 17, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 187, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 18, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 185, 255, 255, 255, 17, 255, 255, 255, 17, 255, 255, 255, 186, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 190, 255, 255, 255, 229, 255, 255, 255, 185, 255, 255, 255, 185, 255, 255, 255, 229, 255, 255, 255, 189, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 191, 255, 255, 255, 229, 255, 255, 255, 229, 255, 255, 255, 190, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 187, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 187, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 18, 255, 255, 255, 19, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 186, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 185, 255, 255, 255, 229, 255, 255, 255, 189, 255, 255, 255, 19, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 189, 255, 255, 255, 229, 255, 255, 255, 185, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 76, 255, 255, 255, 229, 255, 255, 255, 190, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 190, 255, 255, 255, 229, 255, 255, 255, 76, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 77, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 77, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "format": "RGBA8", @@ -456,7 +456,7 @@ } [sub_resource type="ImageTexture" id="56"] -image = SubResource("Image_44l8e") +image = SubResource("Image_4snrh") [sub_resource type="StyleBoxFlat" id="57"] content_margin_left = 6.0 diff --git a/DungeonShooting_Godot/src/framework/generator/DungeonRoomGenerator.cs b/DungeonShooting_Godot/src/framework/generator/DungeonRoomGenerator.cs index f37107b..ab35659 100644 --- a/DungeonShooting_Godot/src/framework/generator/DungeonRoomGenerator.cs +++ b/DungeonShooting_Godot/src/framework/generator/DungeonRoomGenerator.cs @@ -192,7 +192,8 @@ } } - var list = new List(); + var roomGroupMap = new Dictionary(); + //var list = new List(); //整合操作 foreach (var item in map) { @@ -201,13 +202,21 @@ var split = new DungeonRoomSplit(); split.ScenePath = ToResPath(tileDir + path + ".tscn"); split.ConfigPath = ToResPath(configPath); - list.Add(split); + + if (!roomGroupMap.TryGetValue(item.Value.GroupName, out var group)) + { + group = new DungeonRoomGroup(); + group.GroupName = item.Value.GroupName; + roomGroupMap.Add(group.GroupName, group); + } + + group.GetRoomList(item.Value.RoomType).Add(split); } //写出配置 var config = new JsonSerializerOptions(); config.WriteIndented = true; - var text = JsonSerializer.Serialize(list, config); + var text = JsonSerializer.Serialize(roomGroupMap, config); File.WriteAllText(GameConfig.RoomTileConfigFile, text); GD.Print("地牢房间配置, 重新打包完成!"); diff --git a/DungeonShooting_Godot/src/framework/map/DungeonGenerator.cs b/DungeonShooting_Godot/src/framework/map/DungeonGenerator.cs index 0149da8..331815b 100644 --- a/DungeonShooting_Godot/src/framework/map/DungeonGenerator.cs +++ b/DungeonShooting_Godot/src/framework/map/DungeonGenerator.cs @@ -59,6 +59,9 @@ //最大尝试次数 private int _maxTryCount = 10; + + //房间组名称 + private string _groupName; private enum GenerateRoomErrorCode { @@ -75,6 +78,11 @@ // NoProperDoor, } + public DungeonGenerator(string groupName) + { + _groupName = groupName; + } + /// /// 遍历所有房间 /// @@ -147,7 +155,7 @@ } //随机选择一个房间 - var roomSplit = Utils.RandomChoose(GameApplication.Instance.RoomConfig); + var roomSplit = Utils.RandomChoose(GameApplication.Instance.RoomConfig[_groupName].BattleList); //var roomSplit = GameApplication.Instance.RoomConfig[1]; var room = new RoomInfo(_count, roomSplit); diff --git a/DungeonShooting_Godot/src/framework/map/DungeonRoomGroup.cs b/DungeonShooting_Godot/src/framework/map/DungeonRoomGroup.cs new file mode 100644 index 0000000..ff99450 --- /dev/null +++ b/DungeonShooting_Godot/src/framework/map/DungeonRoomGroup.cs @@ -0,0 +1,76 @@ + +using System.Collections.Generic; +using System.Text.Json.Serialization; + +/// +/// 房间组数据 +/// +public class DungeonRoomGroup +{ + /// + /// 组名称 + /// + [JsonInclude] + public string GroupName; + + /// + /// 普通战斗房间, 进入该房间时会关上门, 并刷出若干波敌人, 消灭所有敌人后开门 + /// + [JsonInclude] + public List BattleList = new List(); + + /// + /// 起始房间, 由上一层地牢的结束房间进入该房间, 每层包含一个起始房间 + /// + [JsonInclude] + public List InletList = new List(); + + /// + /// 结束房间, 进入另一层地牢, 每层只是包含一个结束房间 + /// + [JsonInclude] + public List OutletList = new List(); + + /// + /// boss战房间, 进入房间时会关上没, 刷出boss, 消灭boss后开门 + /// + [JsonInclude] + public List BossList = new List(); + + /// + /// 奖励房间, 给予玩家武器或者道具奖励的房间 + /// + [JsonInclude] + public List RewardList = new List(); + + /// + /// 商店, 玩家买卖道具装备的房间 + /// + [JsonInclude] + public List ShopList = new List(); + + /// + /// 事件房间, 触发剧情或者解锁NPC的房间 + /// + [JsonInclude] + public List EventList = new List(); + + /// + /// 获取指定类型房间集合 + /// + public List GetRoomList(DungeonRoomType roomType) + { + switch (roomType) + { + case DungeonRoomType.Battle: return BattleList; + case DungeonRoomType.Inlet: return InletList; + case DungeonRoomType.Outlet: return OutletList; + case DungeonRoomType.Boss: return BossList; + case DungeonRoomType.Reward: return RewardList; + case DungeonRoomType.Shop: return ShopList; + case DungeonRoomType.Event: return EventList; + } + + return null; + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/GameApplication.cs b/DungeonShooting_Godot/src/game/GameApplication.cs index 3fc4d09..56802c0 100644 --- a/DungeonShooting_Godot/src/game/GameApplication.cs +++ b/DungeonShooting_Godot/src/game/GameApplication.cs @@ -41,11 +41,11 @@ /// 游戏房间 /// public RoomManager RoomManager { get; private set; } - + /// /// 房间配置 /// - public List RoomConfig { get; private set; } + public Dictionary RoomConfig { get; private set; } /// /// 游戏视图大小 @@ -130,7 +130,7 @@ //加载房间配置信息 var file = FileAccess.Open(ResourcePath.resource_map_RoomConfig_json, FileAccess.ModeFlags.Read); var asText = file.GetAsText(); - RoomConfig = JsonSerializer.Deserialize>(asText); + RoomConfig = JsonSerializer.Deserialize>(asText); file.Dispose(); } diff --git a/DungeonShooting_Godot/src/game/room/RoomManager.cs b/DungeonShooting_Godot/src/game/room/RoomManager.cs index f3afe6a..fa6ab35 100644 --- a/DungeonShooting_Godot/src/game/room/RoomManager.cs +++ b/DungeonShooting_Godot/src/game/room/RoomManager.cs @@ -62,7 +62,7 @@ var nowTicks = DateTime.Now.Ticks; //生成地牢房间 - _dungeonGenerator = new DungeonGenerator(); + _dungeonGenerator = new DungeonGenerator("testGroup"); _dungeonGenerator.Generate(); //填充地牢