SFX batch 1 import and some implementation, minimap icons added

This commit is contained in:
Pal
2025-10-27 20:08:17 -07:00
parent 7e6dca1c29
commit 11cbb8c4e5
187 changed files with 3005 additions and 713 deletions

View File

@@ -20,59 +20,59 @@ public partial class DungeonFloor : Node3D, IDungeonFloor
public void InitializeDungeon()
{
Rooms = [];
Rooms = FindAllDungeonRooms([.. GetChildren()], Rooms);
_playerSpawnPoint = RandomizePlayerSpawnPoint();
Rooms = [];
Rooms = FindAllDungeonRooms([.. GetChildren()], Rooms);
_playerSpawnPoint = RandomizePlayerSpawnPoint();
}
public void SpawnEnemies(DungeonFloorNode floorNode)
{
var enemyOdds = new Godot.Collections.Dictionary<EnemyType, float>
{
{ EnemyType.Sproingy, floorNode.Sproingy },
{ EnemyType.Michael, floorNode.Michael },
{ EnemyType.FilthEater, floorNode.FilthEater },
{ EnemyType.Sara, floorNode.Sara },
{ EnemyType.Ballos, floorNode.Ballos },
{ EnemyType.Chariot, floorNode.Chariot },
{ EnemyType.Chinthe, floorNode.Chinthe },
{ EnemyType.AmbassadorGreen, floorNode.GreenAmbassador },
{ EnemyType.AmbassadorRed, floorNode.RedAmbassador },
{ EnemyType.AmbassadorSteel, floorNode.SteelAmbassador },
{ EnemyType.AgniDemon, floorNode.AgniDemon },
{ EnemyType.AqueousDemon, floorNode.AqueosDemon },
{ EnemyType.Palan, floorNode.Palan },
{ EnemyType.ShieldOfHeaven, floorNode.ShieldOfHeaven },
{ EnemyType.GoldSproingy, floorNode.GoldSproingy },
};
var monsterRooms = Rooms.OfType<MonsterRoom>();
foreach (var room in monsterRooms)
room.SpawnEnemies(enemyOdds);
var enemyOdds = new Godot.Collections.Dictionary<EnemyType, float>
{
{ EnemyType.Sproingy, floorNode.Sproingy },
{ EnemyType.Michael, floorNode.Michael },
{ EnemyType.FilthEater, floorNode.FilthEater },
{ EnemyType.Sara, floorNode.Sara },
{ EnemyType.Ballos, floorNode.Ballos },
{ EnemyType.Chariot, floorNode.Chariot },
{ EnemyType.Chinthe, floorNode.Chinthe },
{ EnemyType.AmbassadorGreen, floorNode.GreenAmbassador },
{ EnemyType.AmbassadorRed, floorNode.RedAmbassador },
{ EnemyType.AmbassadorSteel, floorNode.SteelAmbassador },
{ EnemyType.AgniDemon, floorNode.AgniDemon },
{ EnemyType.AqueousDemon, floorNode.AqueosDemon },
{ EnemyType.Palan, floorNode.Palan },
{ EnemyType.ShieldOfHeaven, floorNode.ShieldOfHeaven },
{ EnemyType.GoldSproingy, floorNode.GoldSproingy },
};
var monsterRooms = Rooms.OfType<MonsterRoom>();
foreach (var room in monsterRooms)
room.SpawnEnemies(enemyOdds);
}
public Transform3D GetPlayerSpawnPoint() => new Transform3D(_playerSpawnPoint.Basis, new Vector3(_playerSpawnPoint.Origin.X, 0f, _playerSpawnPoint.Origin.Z));
private Transform3D RandomizePlayerSpawnPoint()
{
var randomSpawnLocations = Rooms
.OfType<MonsterRoom>()
.Select(x => x.PlayerSpawn);
var godotCollection = new Godot.Collections.Array<Marker3D>(randomSpawnLocations);
var result = godotCollection.PickRandom();
return result.GlobalTransform;
var randomSpawnLocations = Rooms
.OfType<MonsterRoom>()
.Select(x => x.PlayerSpawn);
var godotCollection = new Godot.Collections.Array<Marker3D>(randomSpawnLocations);
var result = godotCollection.PickRandom();
return result.GlobalTransform;
}
private static ImmutableList<IDungeonRoom> FindAllDungeonRooms(List<Node> nodesToSearch, ImmutableList<IDungeonRoom> roomsFound)
{
if (nodesToSearch.Count == 0)
return roomsFound;
if (nodesToSearch.Count == 0)
return roomsFound;
foreach (var node in nodesToSearch)
{
if (node is IDungeonRoom dungeonRoom)
roomsFound = roomsFound.Add(dungeonRoom);
}
foreach (var node in nodesToSearch)
{
if (node is IDungeonRoom dungeonRoom)
roomsFound = roomsFound.Add(dungeonRoom);
}
return FindAllDungeonRooms([.. nodesToSearch.SelectMany(x => x.GetChildren())], roomsFound);
return FindAllDungeonRooms([.. nodesToSearch.SelectMany(x => x.GetChildren())], roomsFound);
}
}

View File

@@ -19,54 +19,54 @@ public partial class MonsterRoom : DungeonRoom
public override void _Ready()
{
SpawnItems();
SpawnItems();
}
public void SpawnEnemies(Godot.Collections.Dictionary<EnemyType, float> enemyInfo)
{
if (enemyInfo == null || enemyInfo.Count == 0)
return;
if (enemyInfo == null || enemyInfo.Count == 0)
return;
var rng = new RandomNumberGenerator();
rng.Randomize();
var enemySpawnPoints = EnemySpawnPoints.GetChildren();
var numberOfEnemiesToSpawn = rng.RandiRange(1, enemySpawnPoints.Count);
var rng = new RandomNumberGenerator();
rng.Randomize();
var enemySpawnPoints = EnemySpawnPoints.GetChildren();
var numberOfEnemiesToSpawn = rng.RandiRange(1, enemySpawnPoints.Count);
foreach (var spawnPoint in enemySpawnPoints.Cast<Marker3D>())
{
if (numberOfEnemiesToSpawn <= 0)
break;
numberOfEnemiesToSpawn--;
foreach (var spawnPoint in enemySpawnPoints.Cast<Marker3D>())
{
if (numberOfEnemiesToSpawn <= 0)
break;
numberOfEnemiesToSpawn--;
var index = rng.RandWeighted([.. enemyInfo.Values]);
var selectedEnemy = enemyInfo.ElementAt((int)index);
var instantiatedEnemy = EnemyTypeToEnemyConverter.Convert(selectedEnemy.Key);
instantiatedEnemy.Position = new Vector3(spawnPoint.Position.X, 1.75f, spawnPoint.Position.Z);
AddChild(instantiatedEnemy);
}
var index = rng.RandWeighted([.. enemyInfo.Values]);
var selectedEnemy = enemyInfo.ElementAt((int)index);
var instantiatedEnemy = EnemyTypeToEnemyConverter.Convert(selectedEnemy.Key);
instantiatedEnemy.Position = new Vector3(spawnPoint.Position.X, 1.75f, spawnPoint.Position.Z);
AddChild(instantiatedEnemy);
}
}
private void SpawnItems()
{
if (ItemSpawnPoints == null)
return;
if (ItemSpawnPoints == null)
return;
var itemSpawnPoints = ItemSpawnPoints.GetChildren();
var rng = new RandomNumberGenerator();
rng.Randomize();
var numberOfItemsToSpawn = rng.RandiRange(1, itemSpawnPoints.Count);
itemSpawnPoints.Shuffle();
var database = ItemDatabase.Instance;
foreach (var spawnPoint in itemSpawnPoints.Cast<Marker3D>())
{
if (numberOfItemsToSpawn <= 0)
break;
numberOfItemsToSpawn--;
var itemSpawnPoints = ItemSpawnPoints.GetChildren();
var rng = new RandomNumberGenerator();
rng.Randomize();
var numberOfItemsToSpawn = rng.RandiRange(1, itemSpawnPoints.Count);
itemSpawnPoints.Shuffle();
var database = ItemDatabase.Instance;
foreach (var spawnPoint in itemSpawnPoints.Cast<Marker3D>())
{
if (numberOfItemsToSpawn <= 0)
break;
numberOfItemsToSpawn--;
var selectedItem = database.PickItem<InventoryItem>();
var duplicated = selectedItem.Duplicate((int)DuplicateFlags.UseInstantiation) as Node3D;
duplicated.Position = new Vector3(spawnPoint.Position.X, -1.5f, spawnPoint.Position.Z);
AddChild(duplicated);
}
var selectedItem = database.PickItem<InventoryItem>();
var duplicated = selectedItem.Duplicate((int)DuplicateFlags.UseInstantiation) as Node3D;
duplicated.Position = new Vector3(spawnPoint.Position.X, -1.5f, spawnPoint.Position.Z);
AddChild(duplicated);
}
}
}

View File

@@ -37,8 +37,7 @@ adjustment_brightness = 1.18
adjustment_saturation = 0.7
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_yrcgx"]
dof_blur_far_enabled = true
dof_blur_far_distance = 20.0
dof_blur_far_distance = 25.0
[sub_resource type="CylinderShape3D" id="CylinderShape3D_4sygy"]
@@ -75,7 +74,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16.1611, -0.012, 24.1437)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -18.0285, -0.025, 63.8523)
[node name="Floor Exit A" parent="." instance=ExtResource("5_hkp1m")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33.9096, -0.064, -31.904)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33.7339, -0.690582, -31.7724)
[node name="Corridors" type="Node3D" parent="."]
@@ -145,12 +144,12 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -55.9383, 0, -24.0189)
[node name="Node3D7" parent="Corridors" instance=ExtResource("6_hsujv")]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -53.8223, 0, -6.01887)
[node name="Node3D40" parent="Corridors" instance=ExtResource("6_hsujv")]
transform = Transform3D(1.31134e-07, 0, 1, 0, 1, 0, -1, 0, 1.31134e-07, -2.1267, 0.0096339, -18.6185)
[node name="Node3D8" parent="Corridors" instance=ExtResource("6_hsujv")]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -53.8223, 0, -10.0189)
[node name="Node3D8" parent="Corridors/Node3D8" instance=ExtResource("6_hsujv")]
transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, -8.59965, -0.00168645, -51.6956)
[node name="Node3D9" parent="Corridors" instance=ExtResource("6_hsujv")]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -53.8223, 0, -14.0189)
@@ -200,11 +199,20 @@ transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -2.084
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -8.0497, 0, 51.9862)
[node name="Pit Room A" parent="." instance=ExtResource("12_4sygy")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20.095, 0, -56.669)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20.095, -0.075, -57.034)
[node name="Node3D" parent="." instance=ExtResource("12_hkp1m")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30.1149, -0.0400015, 11.7445)
[node name="Node3D2" parent="." instance=ExtResource("12_hkp1m")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.23557, -0.0400015, -57.3096)
[node name="Node3D3" parent="." instance=ExtResource("12_hkp1m")]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 16.3976, -0.0400015, -38.5484)
[node name="Node3D4" parent="." instance=ExtResource("12_hkp1m")]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -20.5586, -0.0400015, -38.5557)
[node name="QuestTest" type="Area3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.50048, 0, -2.16434)

View File

@@ -4,12 +4,12 @@ importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dh8ji8g36mmx5"
path="res://.godot/imported/A2-Puer.glb-3b11ccd8f9ba6f91fbb05537c52490b0.scn"
path="res://.godot/imported/a2-puer.glb-20bdcd533f2a6024a2fa1d9a726cae55.scn"
[deps]
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer.glb"
dest_files=["res://.godot/imported/A2-Puer.glb-3b11ccd8f9ba6f91fbb05537c52490b0.scn"]
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer.glb"
dest_files=["res://.godot/imported/a2-puer.glb-20bdcd533f2a6024a2fa1d9a726cae55.scn"]
[params]

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=78 format=4 uid="uid://cam640h4euewx"]
[gd_scene load_steps=75 format=4 uid="uid://cam640h4euewx"]
[ext_resource type="Script" uid="uid://dhollu4j3pynq" path="res://src/map/dungeon/code/MonsterRoom.cs" id="1_5ni02"]
[ext_resource type="PackedScene" uid="uid://c67r6e54ilvyv" path="res://src/map/dungeon/models/Area 1/Pit/pitroomupdate.glb" id="2_7cn32"]
@@ -804,68 +804,6 @@ texture_filter = 0
material = SubResource("StandardMaterial3D_06rpm")
size = Vector2(36, 36)
[sub_resource type="Animation" id="Animation_c4wqw"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("../AnimationPlayer/OmniLight3D:omni_attenuation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.091]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("../AnimationPlayer/OmniLight3D:light_energy")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id="Animation_7cn32"]
resource_name = "new_animation"
length = 2.5
loop_mode = 1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("../AnimationPlayer/OmniLight3D:omni_attenuation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 2.5),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.091, 0.091]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("../AnimationPlayer/OmniLight3D:light_energy")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 1.26667, 2.5),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [3.0, 6.0, 3.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_eb182"]
_data = {
&"RESET": SubResource("Animation_c4wqw"),
&"new_animation": SubResource("Animation_7cn32")
}
[sub_resource type="Curve" id="Curve_7744s"]
_limits = [-2.0, 2.0, 0.0, 1.0]
_data = [Vector2(0.00358423, 0.230769), 0.0, 0.0, 0, 0, Vector2(0.982079, -1.03846), 0.0, 0.0, 0, 0]
@@ -983,22 +921,22 @@ mesh = SubResource("ArrayMesh_rwbld")
skeleton = NodePath("")
[node name="Doorway_001" type="MeshInstance3D" parent="A1-Pit"]
transform = Transform3D(0.204149, 0, 0, 0, 0.0752327, 0, 0, 0, 0.112906, -17.5324, 3.95485, -0.0197626)
transform = Transform3D(0.204149, 0, 0, 0, 0.0752327, 0, 0, 0, 0.112906, -17.5324, 3.95485, 0.473055)
mesh = SubResource("ArrayMesh_em8wj")
skeleton = NodePath("")
[node name="Doorway_002" type="MeshInstance3D" parent="A1-Pit"]
transform = Transform3D(-7.30095e-08, 0, 0.112906, 0, 0.0752327, 0, -0.204149, 0, -4.03782e-08, 0.0597335, 3.95517, 17.5796)
transform = Transform3D(-7.30095e-08, 0, 0.112906, 0, 0.0752327, 0, -0.204149, 0, -4.03782e-08, 0.0597343, 3.95517, 17.9009)
mesh = SubResource("ArrayMesh_em8wj")
skeleton = NodePath("")
[node name="Doorway_003" type="MeshInstance3D" parent="A1-Pit"]
transform = Transform3D(7.30095e-08, 0, -0.112906, 0, 0.0752327, 0, 0.204149, 0, 4.03782e-08, 0.0482434, 3.96287, -17.6365)
transform = Transform3D(7.30095e-08, 0, -0.112906, 0, 0.0752327, 0, 0.204149, 0, 4.03782e-08, -0.162283, 3.96287, -17.3469)
mesh = SubResource("ArrayMesh_em8wj")
skeleton = NodePath("")
[node name="Doorway" type="MeshInstance3D" parent="A1-Pit"]
transform = Transform3D(-0.204149, 0, -3.36485e-08, 0, 0.0752327, 0, 6.08412e-08, 0, -0.112906, 17.6674, 3.94168, -0.0379604)
transform = Transform3D(-0.204149, 0, -3.36485e-08, 0, 0.0752327, 0, 6.08412e-08, 0, -0.112906, 17.6674, 3.94168, 0.464434)
mesh = SubResource("ArrayMesh_em8wj")
skeleton = NodePath("")
@@ -1184,20 +1122,6 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 18, 0, 17.9999)
layers = 2
mesh = SubResource("PlaneMesh_gx7da")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Minimap"]
root_node = NodePath("../Minimap")
libraries = {
&"": SubResource("AnimationLibrary_eb182")
}
autoplay = "new_animation"
[node name="OmniLight3D" type="OmniLight3D" parent="Minimap/AnimationPlayer"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 18.0173, 17.2525, 17.6794)
layers = 2
light_cull_mask = 4294967294
omni_range = 4096.0
omni_attenuation = 0.091
[node name="GPUParticles3D2" type="GPUParticles3D" parent="."]
transform = Transform3D(0.869, 0, 0, 0, 0.332, 0, 0, 0, 0.967, 18.031, 4.51225, 17.599)
amount = 20

View File

@@ -127,16 +127,16 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -18.2021, 0, -10.6317)
shape = SubResource("CylinderShape3D_cvuwr")
[node name="Spawn Points" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.60304, -0.0507202)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.051)
visible = false
[node name="PlayerSpawn" type="Marker3D" parent="Spawn Points"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -9.28741, -1.57634, -4.70109)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -9.287, 0, -4.701)
[node name="ItemSpawnPoints" type="Node3D" parent="Spawn Points"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.991593, 1.42366, 0.764909)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.992, 0, 0.765)
[node name="ItemSpawnPoint" type="Marker3D" parent="Spawn Points/ItemSpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.1815, -2.83566, 5.54452)
@@ -149,19 +149,19 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.06931, -2.83566, 4.09619)
[node name="EnemySpawnPoints" type="Node3D" parent="Spawn Points"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.991593, 1.42366, 0.764909)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.992, 0, 0.765)
[node name="EnemySpawn1" type="Marker3D" parent="Spawn Points/EnemySpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.26616, -2, 6.64395)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.266, 0, 6.644)
[node name="EnemySpawn2" type="Marker3D" parent="Spawn Points/EnemySpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 14.8078, -2, -3.29062)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 14.808, 0, -3.291)
[node name="EnemySpawn3" type="Marker3D" parent="Spawn Points/EnemySpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.92822, -2, -6.40018)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.928, 0, -6.4)
[node name="EnemySpawn4" type="Marker3D" parent="Spawn Points/EnemySpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.32741, -2, -3.41341)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.327, 0, -3.413)
[node name="Room" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.01312, 0)

View File

@@ -1,9 +1,11 @@
[gd_scene load_steps=66 format=3 uid="uid://cihbmyo0ltq4m"]
[gd_scene load_steps=68 format=3 uid="uid://cihbmyo0ltq4m"]
[ext_resource type="PackedScene" uid="uid://c77acs4px36hq" path="res://src/map/dungeon/models/Area 1/Exit/A1-Exit.glb" id="2_54fgm"]
[ext_resource type="Script" uid="uid://bd824eigybu51" path="res://src/map/dungeon/code/ExitRoom.cs" id="2_umdkt"]
[ext_resource type="Texture2D" uid="uid://bdd4abxejp4n0" path="res://src/minimap/textures/EXIT.png" id="4_ljhl3"]
[ext_resource type="Texture2D" uid="uid://dw50ys561j8no" path="res://src/map/assets/DUST_1.png" id="5_54fgm"]
[ext_resource type="Texture2D" uid="uid://b7kj1pxt7wx1g" path="res://src/vfx/World/BLUE_FLAME.png" id="6_5n72k"]
[ext_resource type="AudioStream" uid="uid://b306wov6yfaan" path="res://src/audio/sfx/amb_flame_burning.ogg" id="6_54fgm"]
[ext_resource type="Texture2D" uid="uid://dw8vvn66qqfj2" path="res://src/minimap/textures/Room Maps/mi_exit.png" id="6_ljhl3"]
[sub_resource type="BoxShape3D" id="BoxShape3D_umdkt"]
@@ -29,7 +31,7 @@ size = Vector3(15.7098, 10.2039, 7.09571)
size = Vector3(20, 20, 36)
[sub_resource type="PlaneMesh" id="PlaneMesh_5n72k"]
size = Vector2(36, 20)
size = Vector2(36, 15.7)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_l1s1j"]
transparency = 1
@@ -477,7 +479,7 @@ _data = {
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10.1224, 0, 19.9536)
script = ExtResource("2_umdkt")
[node name="A1-Exit" parent="." instance=ExtResource("2_54fgm")]
[node name="A1-Exit2" parent="." instance=ExtResource("2_54fgm")]
[node name="Collision" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 6.46985, -2.01312)
@@ -558,11 +560,16 @@ shape = SubResource("BoxShape3D_tgauh")
[node name="Minimap" type="MeshInstance3D" parent="Minimap"]
unique_name_in_owner = true
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, -1.986)
visible = false
layers = 3
layers = 2
mesh = SubResource("PlaneMesh_5n72k")
surface_material_override/0 = SubResource("StandardMaterial3D_l1s1j")
[node name="Sprite3D" type="Sprite3D" parent="Minimap"]
transform = Transform3D(5.67, 0, 0, 0, -2.47844e-07, 5.67, 0, -5.67, -2.47844e-07, 0, 0.721614, -4.4148)
layers = 2
texture_filter = 0
texture = ExtResource("4_ljhl3")
[node name="GPUParticles3D2" type="GPUParticles3D" parent="."]
transform = Transform3D(0.464, 0, 0, 0, 0.227, 0, 0, 0, 0.462, 10.4639, 4.40841, 7.92556)
amount = 20
@@ -572,31 +579,31 @@ process_material = SubResource("ParticleProcessMaterial_63u6y")
draw_pass_1 = SubResource("QuadMesh_fwdls")
[node name="OmniLight3D" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.86203, 4.919, 0.443518)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.37101, 4.44375, -0.0360394)
light_color = Color(0.414176, 0.813573, 0.948183, 1)
light_energy = 6.436
shadow_enabled = true
shadow_blur = 10.0
omni_range = 20.929
omni_attenuation = 1.346
omni_range = 19.166
omni_attenuation = 1.106
[node name="OmniLight3D2" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.09453, 4.919, 0.443518)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.71382, 4.51263, -0.0790882)
light_color = Color(0.414176, 0.813573, 0.948183, 1)
light_energy = 6.69992
light_energy = 6.436
shadow_enabled = true
shadow_blur = 10.0
omni_range = 20.929
omni_attenuation = 1.346
omni_range = 19.166
omni_attenuation = 1.106
[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.615, 0, 0, 0, 0.445, 0, 0, 0, 0.445, -7.91461, 5.15882, 0.45137)
transform = Transform3D(0.615, 0, 0, 0, 0.445, 0, 0, 0, 0.445, -5.5339, 4.75245, -0.0712357)
billboard = 2
sprite_frames = SubResource("SpriteFrames_s0p2a")
autoplay = "default"
[node name="AnimatedSprite3D2" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.615, 0, 0, 0, 0.445, 0, 0, 0, 0.445, 8.15739, 5.15882, 0.45137)
transform = Transform3D(0.615, 0, 0, 0, 0.445, 0, 0, 0, 0.445, 5.43902, 4.73834, -0.0770664)
billboard = 2
sprite_frames = SubResource("SpriteFrames_s0p2a")
autoplay = "default"
@@ -617,3 +624,19 @@ libraries = {
&"": SubResource("AnimationLibrary_ljhl3")
}
autoplay = "Flame Flicker"
[node name="FLAME1" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.74898, 4.30518, -0.348886)
stream = ExtResource("6_54fgm")
autoplay = true
max_distance = 25.0
bus = &"AMBIENT"
parameters/looping = true
[node name="FLAME2" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.41704, 4.2363, -0.0849304)
stream = ExtResource("6_54fgm")
autoplay = true
max_distance = 25.0
bus = &"AMBIENT"
parameters/looping = true

View File

@@ -4,6 +4,7 @@
[ext_resource type="PackedScene" uid="uid://bpihpjlg5mcq" path="res://src/map/dungeon/models/Area 2/Exit/A2-Exit.glb" id="2_d13sj"]
[ext_resource type="Texture2D" uid="uid://dw50ys561j8no" path="res://src/map/assets/DUST_1.png" id="4_kx0t3"]
[ext_resource type="Texture2D" uid="uid://b7kj1pxt7wx1g" path="res://src/vfx/World/BLUE_FLAME.png" id="5_pmpee"]
[ext_resource type="AudioStream" uid="uid://b306wov6yfaan" path="res://src/audio/sfx/amb_flame_burning.ogg" id="6_pmpee"]
[ext_resource type="Texture2D" uid="uid://dw8vvn66qqfj2" path="res://src/minimap/textures/Room Maps/mi_exit.png" id="7_vsgtq"]
[sub_resource type="BoxShape3D" id="BoxShape3D_umdkt"]
@@ -472,18 +473,6 @@ _data = {
&"RESET": SubResource("Animation_54fgm")
}
[sub_resource type="Environment" id="Environment_nka2x"]
background_mode = 1
background_color = Color(0.295867, 0.295866, 0.295866, 1)
sdfgi_enabled = true
glow_enabled = true
glow_intensity = 3.02
glow_strength = 0.98
glow_bloom = 1.0
fog_enabled = true
volumetric_fog_enabled = true
volumetric_fog_density = 0.02
[node name="Floor Exit B" type="Node3D"]
script = ExtResource("2_7o05s")
@@ -589,7 +578,7 @@ omni_attenuation = 1.346
[node name="OmniLight3D2" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.09453, 4.919, 0.443518)
light_energy = 6.69992
light_energy = 6.78638
shadow_enabled = true
shadow_blur = 10.0
omni_range = 20.929
@@ -623,5 +612,18 @@ libraries = {
}
autoplay = "Flame Flicker"
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_nka2x")
[node name="FLAME1" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.12969, 4.71155, 0.173719)
stream = ExtResource("6_pmpee")
autoplay = true
max_distance = 25.0
bus = &"AMBIENT"
parameters/looping = true
[node name="FLAME2" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.90806, 4.71155, 0.173719)
stream = ExtResource("6_pmpee")
autoplay = true
max_distance = 25.0
bus = &"AMBIENT"
parameters/looping = true