diff --git a/DungeonShooting_Godot/src/framework/map/DungeonTile.cs b/DungeonShooting_Godot/src/framework/map/DungeonTile.cs
index c8356a8..aafafa9 100644
--- a/DungeonShooting_Godot/src/framework/map/DungeonTile.cs
+++ b/DungeonShooting_Godot/src/framework/map/DungeonTile.cs
@@ -108,6 +108,8 @@
_tileRoot.AddChild(activityMark);
activityMark.Visible = false;
activityMark.GlobalPosition = roomInfo.GetWorldPosition() + pos;
+ activityMark.Visible = false;
+ activityMark.SetActive(false);
}
roomInfo.ActivityMarks.AddRange(activityMarks);
diff --git a/DungeonShooting_Godot/src/framework/map/GenerateDungeon.cs b/DungeonShooting_Godot/src/framework/map/GenerateDungeon.cs
index 1c3a61e..6e2720b 100644
--- a/DungeonShooting_Godot/src/framework/map/GenerateDungeon.cs
+++ b/DungeonShooting_Godot/src/framework/map/GenerateDungeon.cs
@@ -21,7 +21,7 @@
///
/// 生成的房间数量
///
- private int _maxCount = 3;
+ private int _maxCount = 15;
//用于标记地图上的坐标是否被占用
private Grid _roomGrid { get; } = new Grid();
@@ -291,25 +291,25 @@
nextRoomDoor.ConnectRoom = room;
nextRoomDoor.ConnectDoor = roomDoor;
- // //先寻找直通门
- // if (Utils.RandomBoolean())
- // {
- // //直行通道, 优先横轴
- // if (TryConnectHorizontalDoor(room, roomDoor, nextRoom, nextRoomDoor)
- // || TryConnectVerticalDoor(room, roomDoor, nextRoom, nextRoomDoor))
- // {
- // return true;
- // }
- // }
- // else
- // {
- // //直行通道, 优先纵轴
- // if (TryConnectVerticalDoor(room, roomDoor, nextRoom, nextRoomDoor)
- // || TryConnectHorizontalDoor(room, roomDoor, nextRoom, nextRoomDoor))
- // {
- // return true;
- // }
- // }
+ //先寻找直通门
+ if (Utils.RandomBoolean())
+ {
+ //直行通道, 优先横轴
+ if (TryConnectHorizontalDoor(room, roomDoor, nextRoom, nextRoomDoor)
+ || TryConnectVerticalDoor(room, roomDoor, nextRoom, nextRoomDoor))
+ {
+ return true;
+ }
+ }
+ else
+ {
+ //直行通道, 优先纵轴
+ if (TryConnectVerticalDoor(room, roomDoor, nextRoom, nextRoomDoor)
+ || TryConnectHorizontalDoor(room, roomDoor, nextRoom, nextRoomDoor))
+ {
+ return true;
+ }
+ }
//包含拐角的通道
return TryConnectCrossDoor(room, roomDoor, nextRoom, nextRoomDoor);
diff --git a/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs b/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs
index f42fc93..431a890 100644
--- a/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs
+++ b/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs
@@ -62,6 +62,10 @@
if (_isOver)
{
_overTimer += (float)delta;
+ if (_overTimer >= 1)
+ {
+ SetActive(false);
+ }
}
else
{
@@ -85,6 +89,7 @@
{
_isOver = false;
_overTimer = 0;
+ SetActive(true);
if (DelayTime <= 0)
{
Doing(roomInfo);
@@ -112,7 +117,6 @@
{
var instance = ActivityObject.Create(GetItemId());
instance.PutDown(GlobalPosition, Layer);
- Visible = false;
}
public override void _Draw()
@@ -124,4 +128,14 @@
}
}
+ ///
+ /// 设置当前节点是否是活动状态
+ ///
+ public void SetActive(bool flag)
+ {
+ SetProcess(flag);
+ SetProcessInternal(flag);
+ SetPhysicsProcess(flag);
+ SetPhysicsProcessInternal(flag);
+ }
}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs b/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs
index 10309cd..cc5a0fd 100644
--- a/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs
+++ b/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs
@@ -61,7 +61,6 @@
//创建敌人
var instance = ActivityObject.Create(GetItemId());
instance.PutDown(pos, Layer);
- Visible = false;
if (!string.IsNullOrWhiteSpace(Weapon1Id))
CreateWeapon(instance, pos, Weapon1Id, Weapon1Ammo);
diff --git a/DungeonShooting_Godot/src/framework/map/mark/WeaponMark.cs b/DungeonShooting_Godot/src/framework/map/mark/WeaponMark.cs
index 915b6c1..190ac94 100644
--- a/DungeonShooting_Godot/src/framework/map/mark/WeaponMark.cs
+++ b/DungeonShooting_Godot/src/framework/map/mark/WeaponMark.cs
@@ -40,7 +40,5 @@
instance.SetResidueAmmo(ResidueAmmo);
}
instance.PutDown(GlobalPosition, Layer);
-
- Visible = false;
}
}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/role/Player.cs b/DungeonShooting_Godot/src/game/role/Player.cs
index f768681..9863765 100644
--- a/DungeonShooting_Godot/src/game/role/Player.cs
+++ b/DungeonShooting_Godot/src/game/role/Player.cs
@@ -45,13 +45,13 @@
MaxShield = 30;
Shield = 30;
- // debug用
- Acceleration = 3000;
- Friction = 3000;
- MoveSpeed = 500;
- CollisionLayer = 0;
- CollisionMask = 0;
- GameCamera.Main.Zoom = new Vector2(0.5f, 0.5f);
+ // // debug用
+ // Acceleration = 3000;
+ // Friction = 3000;
+ // MoveSpeed = 500;
+ // CollisionLayer = 0;
+ // CollisionMask = 0;
+ // GameCamera.Main.Zoom = new Vector2(0.5f, 0.5f);
}
protected override void Process(float delta)