diff --git a/DungeonShooting_Godot/src/framework/map/DoorNavigationInfo.cs b/DungeonShooting_Godot/src/framework/map/DoorNavigationInfo.cs
index ddb58e8..7a2e8f4 100644
--- a/DungeonShooting_Godot/src/framework/map/DoorNavigationInfo.cs
+++ b/DungeonShooting_Godot/src/framework/map/DoorNavigationInfo.cs
@@ -6,19 +6,30 @@
///
public class DoorNavigationInfo
{
- public DoorNavigationInfo(NavigationRegion2D navigationNode, NavigationPolygonData navigationData)
+ public DoorNavigationInfo(RoomDoorInfo doorInfo, NavigationPolygonData doorOpenNavigationData, NavigationPolygonData doorCloseNavigationData)
{
- NavigationNode = navigationNode;
- NavigationData = navigationData;
+ DoorInfo = doorInfo;
+ DoorOpenNavigationData = doorOpenNavigationData;
+ DoorCloseNavigationData = doorCloseNavigationData;
}
///
+ /// 绑定的门对象
+ ///
+ public RoomDoorInfo DoorInfo;
+
+ ///
/// 导航区域节点
///
public NavigationRegion2D NavigationNode;
///
- /// 导航形状数据
+ /// 门开启时导航形状数据
///
- public NavigationPolygonData NavigationData;
+ public NavigationPolygonData DoorOpenNavigationData;
+
+ ///
+ /// 门关闭时导航形状数据
+ ///
+ public NavigationPolygonData DoorCloseNavigationData;
}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/framework/map/DungeonTile.cs b/DungeonShooting_Godot/src/framework/map/DungeonTile.cs
index 9367ea4..5285acd 100644
--- a/DungeonShooting_Godot/src/framework/map/DungeonTile.cs
+++ b/DungeonShooting_Godot/src/framework/map/DungeonTile.cs
@@ -1,7 +1,5 @@
-using System;
using System.Collections.Generic;
-using System.Linq;
using Godot;
///
@@ -40,19 +38,7 @@
private readonly List _polygonDataList = new List();
//连接门的导航区域
- private readonly List _connectNavigationItemList = new List();
-
- private class DoorNavigationItem
- {
- public NavigationPolygonData NavigationPolygonData;
- public RoomDoorInfo DoorInfo;
-
- public DoorNavigationItem(NavigationPolygonData navigationPolygonData, RoomDoorInfo doorInfo)
- {
- NavigationPolygonData = navigationPolygonData;
- DoorInfo = doorInfo;
- }
- }
+ private readonly List _connectNavigationItemList = new List();
//----------------------------------------------------
@@ -573,7 +559,8 @@
polygonData.Points.Add(p2);
polygonData.Points.Add(p3);
polygonData.Points.Add(p4);
- _connectNavigationItemList.Add(new DoorNavigationItem(polygonData, doorInfo));
+ //这里 NavigationPolygonData 需要计算, 后续补上
+ _connectNavigationItemList.Add(new DoorNavigationInfo(doorInfo, null, polygonData));
}
//报错数据
@@ -670,8 +657,8 @@
for (var i = 0; i < _connectNavigationItemList.Count; i++)
{
var item = _connectNavigationItemList[i];
- var node = CreateNavigationRegion(navigationRoot, item.NavigationPolygonData);
- item.DoorInfo.Navigation = new DoorNavigationInfo(node, item.NavigationPolygonData);
+ item.NavigationNode = CreateNavigationRegion(navigationRoot, item.DoorCloseNavigationData);
+ item.DoorInfo.Navigation = item;
}
}
@@ -703,7 +690,7 @@
var array = new NavigationPolygonData[_connectNavigationItemList.Count];
for (var i = 0; i < _connectNavigationItemList.Count; i++)
{
- array[i] = _connectNavigationItemList[i].NavigationPolygonData;
+ array[i] = _connectNavigationItemList[i].DoorCloseNavigationData;
}
return array;
}
diff --git a/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs b/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs
index 2d5576d..7fb1847 100644
--- a/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs
+++ b/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs
@@ -12,7 +12,7 @@
Sprite2D = ResourcePath.resource_sprite_gun_gun2_png;
Weight = 40;
CenterPosition = new Vector2(0.4f, -2.6f);
- StartFiringSpeed = 300;
+ StartFiringSpeed = 400;
StartScatteringRange = 30;
FinalScatteringRange = 90;
ScatteringRangeAddValue = 50f;
diff --git a/DungeonShooting_Godot/src/game/room/RoomDoor.cs b/DungeonShooting_Godot/src/game/room/RoomDoor.cs
index 0df20d9..a0252b5 100644
--- a/DungeonShooting_Godot/src/game/room/RoomDoor.cs
+++ b/DungeonShooting_Godot/src/game/room/RoomDoor.cs
@@ -50,7 +50,7 @@
IsClose = false;
Visible = false;
Collision.Disabled = true;
- _door.Navigation.NavigationNode.Enabled = true;
+ //_door.Navigation.NavigationNode.Enabled = true;
}
///
@@ -61,6 +61,6 @@
IsClose = true;
Visible = true;
Collision.Disabled = false;
- _door.Navigation.NavigationNode.Enabled = false;
+ //_door.Navigation.NavigationNode.Enabled = false;
}
}
\ No newline at end of file