Player warp item implementation
This commit is contained in:
@@ -12,7 +12,7 @@ public partial class BossFloor : Node3D, IDungeonFloor
|
||||
|
||||
private BossRoomA BossRoom;
|
||||
|
||||
public ImmutableList<MonsterRoom> Rooms => [];
|
||||
public ImmutableList<IDungeonRoom> Rooms => [];
|
||||
|
||||
public void InitializeDungeon()
|
||||
{
|
||||
|
||||
@@ -18,14 +18,15 @@ namespace GameJamDungeon
|
||||
|
||||
private Transform3D _playerSpawnPoint;
|
||||
|
||||
public ImmutableList<MonsterRoom> Rooms { get; private set; }
|
||||
public ImmutableList<IDungeonRoom> Rooms { get; private set; }
|
||||
|
||||
public void InitializeDungeon()
|
||||
{
|
||||
Rooms = [];
|
||||
Rooms = FindAllDungeonRooms([.. GetChildren()], Rooms);
|
||||
_playerSpawnPoint = RandomizePlayerSpawnPoint();
|
||||
foreach (var room in Rooms)
|
||||
var monsterRooms = Rooms.OfType<MonsterRoom>();
|
||||
foreach (var room in monsterRooms)
|
||||
room.SpawnEnemies(EnemyDatabase);
|
||||
DungeonGenerator.EmitSignal("done_generating");
|
||||
}
|
||||
@@ -34,24 +35,22 @@ namespace GameJamDungeon
|
||||
|
||||
private Transform3D RandomizePlayerSpawnPoint()
|
||||
{
|
||||
var rng = new RandomNumberGenerator();
|
||||
rng.Randomize();
|
||||
var rngDistribution = new List<float>();
|
||||
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<MonsterRoom> FindAllDungeonRooms(List<Node> nodesToSearch, ImmutableList<MonsterRoom> roomsFound)
|
||||
private static ImmutableList<IDungeonRoom> FindAllDungeonRooms(List<Node> nodesToSearch, ImmutableList<IDungeonRoom> roomsFound)
|
||||
{
|
||||
if (nodesToSearch.Count == 0)
|
||||
return roomsFound;
|
||||
|
||||
foreach (var node in nodesToSearch)
|
||||
{
|
||||
if (node is MonsterRoom dungeonRoom)
|
||||
if (node is IDungeonRoom dungeonRoom)
|
||||
roomsFound = roomsFound.Add(dungeonRoom);
|
||||
|
||||
if (node.HasSignal("dungeon_done_generating"))
|
||||
|
||||
50
src/map/dungeon/code/DungeonRoom.cs
Normal file
50
src/map/dungeon/code/DungeonRoom.cs
Normal file
@@ -0,0 +1,50 @@
|
||||
using Chickensoft.AutoInject;
|
||||
using Chickensoft.Introspection;
|
||||
using Godot;
|
||||
using System.Collections.Immutable;
|
||||
|
||||
namespace GameJamDungeon;
|
||||
|
||||
[Meta(typeof(IAutoNode))]
|
||||
public abstract partial class DungeonRoom : Node3D, IDungeonRoom
|
||||
{
|
||||
public override void _Notification(int what) => this.Notify(what);
|
||||
|
||||
[Node] public Marker3D PlayerSpawn { get; set; } = default!;
|
||||
|
||||
public bool IsPlayerInRoom => _isPlayerInRoom;
|
||||
|
||||
public ImmutableList<IEnemy> EnemiesInRoom => _enemiesInRoom;
|
||||
|
||||
[Node] private Area3D _room { get; set; } = default!;
|
||||
|
||||
private ImmutableList<IEnemy> _enemiesInRoom;
|
||||
private bool _isPlayerInRoom = false;
|
||||
|
||||
public void Setup()
|
||||
{
|
||||
_enemiesInRoom = [];
|
||||
_room.BodyEntered += Room_BodyEntered;
|
||||
_room.BodyExited += Room_BodyExited;
|
||||
}
|
||||
|
||||
private void Room_BodyExited(Node3D body)
|
||||
{
|
||||
if (body is IEnemy enemy)
|
||||
_enemiesInRoom = _enemiesInRoom.Remove(enemy);
|
||||
if (body is IPlayer)
|
||||
_isPlayerInRoom = false;
|
||||
}
|
||||
private void Room_BodyEntered(Node3D body)
|
||||
{
|
||||
if (body is IEnemy enemy)
|
||||
_enemiesInRoom = _enemiesInRoom.Add(enemy);
|
||||
if (body is IPlayer)
|
||||
_isPlayerInRoom = true;
|
||||
}
|
||||
|
||||
public ImmutableList<IEnemy> GetEnemiesInCurrentRoom()
|
||||
{
|
||||
return _enemiesInRoom;
|
||||
}
|
||||
}
|
||||
@@ -5,24 +5,22 @@ using Godot;
|
||||
namespace GameJamDungeon;
|
||||
|
||||
[Meta(typeof(IAutoNode))]
|
||||
public partial class ExitRoom : Node3D, IExitRoom
|
||||
public partial class ExitRoom : DungeonRoom
|
||||
{
|
||||
public override void _Notification(int what) => this.Notify(what);
|
||||
|
||||
[Dependency] public IGame Game => this.DependOn<IGame>();
|
||||
|
||||
[Node] public Area3D Exit { get; set; } = default!;
|
||||
[Node] private Area3D _exit { get; set; } = default!;
|
||||
[Node] private Area3D _room { get; set; } = default!;
|
||||
|
||||
public Marker3D PlayerSpawn { get; set; }
|
||||
|
||||
public void Setup()
|
||||
public override void _Ready()
|
||||
{
|
||||
Exit.AreaEntered += Exit_AreaEntered;
|
||||
_exit.AreaEntered += Exit_AreaEntered;
|
||||
}
|
||||
|
||||
public void ExitReached()
|
||||
=> Game.FloorExitReached();
|
||||
|
||||
private void Exit_AreaEntered(Area3D area) => ExitReached();
|
||||
public void SpawnEnemies(EnemyDatabase enemyDatabase) => throw new System.NotImplementedException();
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ using System.Collections.Immutable;
|
||||
namespace GameJamDungeon;
|
||||
|
||||
[Meta(typeof(IAutoNode))]
|
||||
public partial class Floor0 : Node3D, IDungeonFloor, IExitRoom
|
||||
public partial class Floor0 : Node3D, IDungeonFloor
|
||||
{
|
||||
public override void _Notification(int what) => this.Notify(what);
|
||||
|
||||
@@ -16,9 +16,9 @@ public partial class Floor0 : Node3D, IDungeonFloor, IExitRoom
|
||||
|
||||
[Node] private Marker3D PlayerSpawnPoint { get; set; } = default!;
|
||||
|
||||
public ImmutableList<MonsterRoom> Rooms => [];
|
||||
public ImmutableList<IDungeonRoom> Rooms => [];
|
||||
|
||||
public void Setup()
|
||||
public override void _Ready()
|
||||
{
|
||||
Show();
|
||||
Exit.AreaEntered += Exit_AreaEntered;
|
||||
@@ -27,10 +27,6 @@ public partial class Floor0 : Node3D, IDungeonFloor, IExitRoom
|
||||
private void Exit_AreaEntered(Area3D area) => ExitReached();
|
||||
|
||||
public void ExitReached() => Game.FloorExitReached();
|
||||
public void InitializeDungeon()
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
public Transform3D GetPlayerSpawnPoint() => PlayerSpawnPoint.GlobalTransform;
|
||||
public void InitializeDungeon() => throw new System.NotImplementedException();
|
||||
public Transform3D GetPlayerSpawnPoint() => throw new System.NotImplementedException();
|
||||
}
|
||||
|
||||
@@ -9,5 +9,5 @@ public interface IDungeonFloor : INode3D
|
||||
|
||||
public Transform3D GetPlayerSpawnPoint();
|
||||
|
||||
public ImmutableList<MonsterRoom> Rooms { get; }
|
||||
public ImmutableList<IDungeonRoom> Rooms { get; }
|
||||
}
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
using Chickensoft.GodotNodeInterfaces;
|
||||
using Godot;
|
||||
using System.Collections.Immutable;
|
||||
|
||||
namespace GameJamDungeon;
|
||||
public interface IDungeonRoom : INode3D
|
||||
{
|
||||
Marker3D PlayerSpawn { get; }
|
||||
|
||||
bool IsPlayerInRoom { get; }
|
||||
|
||||
ImmutableList<IEnemy> EnemiesInRoom { get; }
|
||||
}
|
||||
|
||||
@@ -1,50 +1,24 @@
|
||||
using Chickensoft.AutoInject;
|
||||
using Chickensoft.Introspection;
|
||||
using Godot;
|
||||
using System.Collections.Immutable;
|
||||
using System.Linq;
|
||||
|
||||
namespace GameJamDungeon;
|
||||
|
||||
[Meta(typeof(IAutoNode))]
|
||||
public partial class MonsterRoom : Node3D, IDungeonRoom
|
||||
public partial class MonsterRoom : DungeonRoom
|
||||
{
|
||||
public override void _Notification(int what) => this.Notify(what);
|
||||
|
||||
[Node] public Marker3D PlayerSpawn { get; set; } = default!;
|
||||
|
||||
[Node] public Node3D ItemSpawnPoints { get; set; } = default!;
|
||||
|
||||
[Node] public Node3D EnemySpawnPoints { get; set; } = default!;
|
||||
|
||||
[Node] public ItemDatabase ItemDatabase { get; set; } = default!;
|
||||
|
||||
[Node] private Area3D _room { get; set; } = default!;
|
||||
|
||||
private ImmutableList<IEnemy> _enemiesInRoom;
|
||||
|
||||
public void Setup()
|
||||
public override void _Ready()
|
||||
{
|
||||
SpawnItems();
|
||||
_enemiesInRoom = [];
|
||||
_room.BodyEntered += _room_BodyEntered;
|
||||
_room.BodyExited += _room_BodyExited;
|
||||
}
|
||||
|
||||
private void _room_BodyExited(Node3D body)
|
||||
{
|
||||
if (body is IEnemy enemy)
|
||||
_enemiesInRoom = _enemiesInRoom.Remove(enemy);
|
||||
}
|
||||
private void _room_BodyEntered(Node3D body)
|
||||
{
|
||||
if (body is IEnemy enemy)
|
||||
_enemiesInRoom = _enemiesInRoom.Add(enemy);
|
||||
}
|
||||
|
||||
public ImmutableList<IEnemy> GetEnemiesInCurrentRoom()
|
||||
{
|
||||
return _enemiesInRoom;
|
||||
}
|
||||
|
||||
public void SpawnEnemies(EnemyDatabase enemyDatabase)
|
||||
@@ -54,7 +28,7 @@ public partial class MonsterRoom : Node3D, IDungeonRoom
|
||||
var enemySpawnPoints = EnemySpawnPoints.GetChildren();
|
||||
var numberOfEnemiesToSpawn = rng.RandiRange(1, enemySpawnPoints.Count);
|
||||
|
||||
foreach (Marker3D spawnPoint in enemySpawnPoints)
|
||||
foreach (var spawnPoint in enemySpawnPoints.Cast<Marker3D>())
|
||||
{
|
||||
if (numberOfEnemiesToSpawn <= 0)
|
||||
break;
|
||||
@@ -75,7 +49,7 @@ public partial class MonsterRoom : Node3D, IDungeonRoom
|
||||
var numberOfItemsToSpawn = rng.RandiRange(1, itemSpawnPoints.Count);
|
||||
itemSpawnPoints.Shuffle();
|
||||
var database = ItemDatabase.Initialize();
|
||||
foreach (Marker3D spawnPoint in itemSpawnPoints)
|
||||
foreach (var spawnPoint in itemSpawnPoints.Cast<Marker3D>())
|
||||
{
|
||||
if (numberOfItemsToSpawn <= 0)
|
||||
break;
|
||||
|
||||
@@ -13,7 +13,7 @@ public partial class Overworld : Node3D, IDungeonFloor
|
||||
|
||||
[Node] public Marker3D ExitSpawnPoint { get; set; } = default!;
|
||||
|
||||
public ImmutableList<MonsterRoom> Rooms => [];
|
||||
public ImmutableList<IDungeonRoom> Rooms => [];
|
||||
|
||||
public void InitializeDungeon()
|
||||
{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=61 format=4 uid="uid://dl6h1djc27ddl"]
|
||||
[gd_scene load_steps=62 format=4 uid="uid://dl6h1djc27ddl"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c1nhqlem1ew3m" path="res://src/map/dungeon/code/Floor0.cs" id="1_db2o3"]
|
||||
[ext_resource type="Texture2D" uid="uid://b27ksiyfefb33" path="res://src/map/dungeon/models/Set A/02. Altar/02_ALTAR_FLOOR_ZER0_VER_outside_desert.png" id="2_xh2ej"]
|
||||
@@ -739,6 +739,9 @@ size = Vector3(1.53375, 1.46143, 3.13956)
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_db2o3"]
|
||||
size = Vector3(2.97754, 2.34912, 3.79205)
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_ntxe5"]
|
||||
size = Vector3(369.423, 20, 47.9875)
|
||||
|
||||
[node name="Floor0" type="Node3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.63488, -5.13176)
|
||||
script = ExtResource("1_db2o3")
|
||||
@@ -870,3 +873,21 @@ collision_mask = 256
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Exit"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -13.1171, -2.1779, -0.0887146)
|
||||
shape = SubResource("BoxShape3D_db2o3")
|
||||
|
||||
[node name="Model" type="Node3D" parent="."]
|
||||
|
||||
[node name="Collision" type="Node3D" parent="."]
|
||||
|
||||
[node name="Spawn Points" type="Node3D" parent="."]
|
||||
|
||||
[node name="Room" type="Node3D" parent="."]
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 0
|
||||
collision_mask = 8
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 149.05, -4.02862, -1.76389)
|
||||
shape = SubResource("BoxShape3D_ntxe5")
|
||||
|
||||
@@ -831,8 +831,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -1280,8 +1280,8 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.27566, -0.246464, -3.5794)
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -1405,8 +1405,8 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.76788, -1.76654, -10.247)
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 15.689, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -13.6094, 0)
|
||||
|
||||
@@ -1273,8 +1273,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 5.65958, 0)
|
||||
|
||||
@@ -1852,8 +1852,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -884,8 +884,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0361805, -0.0723581, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -1729,8 +1729,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 2.00828, 0)
|
||||
|
||||
@@ -2580,8 +2580,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -967,8 +967,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 3.93401, 0)
|
||||
|
||||
@@ -1177,8 +1177,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -1306,8 +1306,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -1906,8 +1906,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -1263,8 +1263,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 1.9843, 0)
|
||||
|
||||
@@ -1021,8 +1021,8 @@ unique_name_in_owner = true
|
||||
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, 0.894945, 0)
|
||||
|
||||
@@ -603,8 +603,8 @@ shape = SubResource("BoxShape3D_mg5bq")
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -4.02862, -1.19209e-07)
|
||||
|
||||
@@ -780,8 +780,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -1034,8 +1034,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -851,8 +851,8 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.76788, -1.76654, -10.247)
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -540,8 +540,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -981,8 +981,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -11.8126, -1.19209e-07)
|
||||
|
||||
@@ -886,8 +886,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -879,8 +879,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -1038,8 +1038,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -901,8 +901,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -529,8 +529,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -902,8 +902,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -3.8538, -1.19209e-07)
|
||||
|
||||
@@ -1598,8 +1598,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -1282,8 +1282,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -10.6408, -1.19209e-07)
|
||||
|
||||
@@ -684,8 +684,8 @@ unique_name_in_owner = true
|
||||
[node name="Room" type="Area3D" parent="Room"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.8436, 0)
|
||||
collision_layer = 8
|
||||
collision_mask = 8
|
||||
collision_layer = 0
|
||||
collision_mask = 10
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Room"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04566, -3.99197, -1.19209e-07)
|
||||
|
||||
Reference in New Issue
Block a user