diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preinstall.json index 7674f49..e064a98 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preinstall.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preinstall.json @@ -1 +1 @@ -[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":-84,"Y":-46},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":-56,"Y":-72},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0002","Weight":100,"Attr":{"CurrAmmon":"7","ResidueAmmo":"70"},"Altitude":8,"VerticalSpeed":0}]}],[{"Position":{"X":30,"Y":75},"Size":{"X":29,"Y":28},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"-1","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-88,"Y":70},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0.8,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":65,"Y":-66},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]}]]}] \ No newline at end of file +[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":-84,"Y":-46},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":-56,"Y":-72},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0002","Weight":100,"Attr":{"CurrAmmon":"7","ResidueAmmo":"70"},"Altitude":8,"VerticalSpeed":0}]}],[{"Position":{"X":30,"Y":75},"Size":{"X":29,"Y":28},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"-1","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":25,"Y":-16},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0.8,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]}]]}] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preview.png b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preview.png index 2215059..6273480 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preview.png +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/Preview.png Binary files differ diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/TileInfo.json index 53a6fcc..a354c37 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/TileInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start3/TileInfo.json @@ -1 +1 @@ -{"NavigationList":[{"Type":0,"Points":[-104,-88,88,-88,88,96,-104,96,-104,40,72,40,72,0,-104,0]}],"Floor":[-7,-6,0,0,8,-7,-5,0,0,8,-7,-4,0,0,8,-7,-3,0,0,8,-7,-2,0,0,8,-7,-1,0,0,8,-7,2,0,0,8,-7,3,0,0,8,-7,4,0,0,8,-7,5,0,0,8,-6,-6,0,0,8,-6,-5,0,0,8,-6,-4,0,0,8,-6,-3,0,0,8,-6,-2,0,0,8,-6,-1,0,0,8,-6,2,0,0,8,-6,3,0,0,8,-6,4,0,0,8,-6,5,0,0,8,-5,-6,0,0,8,-5,-5,0,0,8,-5,-4,0,0,8,-5,-3,0,0,8,-5,-2,0,0,8,-5,-1,0,0,8,-5,2,0,0,8,-5,3,0,0,8,-5,4,0,0,8,-5,5,0,0,8,-4,-6,0,0,8,-4,-5,0,0,8,-4,-4,0,0,8,-4,-3,0,0,8,-4,-2,0,0,8,-4,-1,0,0,8,-4,2,0,0,8,-4,3,0,0,8,-4,4,0,0,8,-4,5,0,0,8,-3,-6,0,0,8,-3,-5,0,0,8,-3,-4,0,0,8,-3,-3,0,0,8,-3,-2,0,0,8,-3,-1,0,0,8,-3,2,0,0,8,-3,3,0,0,8,-3,4,0,0,8,-3,5,0,0,8,-2,-6,0,0,8,-2,-5,0,0,8,-2,-4,0,0,8,-2,-3,0,0,8,-2,-2,0,0,8,-2,-1,0,0,8,-2,2,0,0,8,-2,3,0,0,8,-2,4,0,0,8,-2,5,0,0,8,-1,-6,0,0,8,-1,-5,0,0,8,-1,-4,0,0,8,-1,-3,0,0,8,-1,-2,0,0,8,-1,-1,0,0,8,-1,2,0,0,8,-1,3,0,0,8,-1,4,0,0,8,-1,5,0,0,8,0,-6,0,0,8,0,-5,0,0,8,0,-4,0,0,8,0,-3,0,0,8,0,-2,0,0,8,0,-1,0,0,8,0,2,0,0,8,0,3,0,0,8,0,4,0,0,8,0,5,0,0,8,1,-6,0,0,8,1,-5,0,0,8,1,-4,0,0,8,1,-3,0,0,8,1,-2,0,0,8,1,-1,0,0,8,1,2,0,0,8,1,3,0,0,8,1,4,0,0,8,1,5,0,0,8,2,-6,0,0,8,2,-5,0,0,8,2,-4,0,0,8,2,-3,0,0,8,2,-2,0,0,8,2,-1,0,0,8,2,2,0,0,8,2,3,0,0,8,2,4,0,0,8,2,5,0,0,8,3,-6,0,0,8,3,-5,0,0,8,3,-4,0,0,8,3,-3,0,0,8,3,-2,0,0,8,3,-1,0,0,8,3,2,0,0,8,3,3,0,0,8,3,4,0,0,8,3,5,0,0,8,4,-6,0,0,8,4,-5,0,0,8,4,-4,0,0,8,4,-3,0,0,8,4,-2,0,0,8,4,-1,0,0,8,4,2,0,0,8,4,3,0,0,8,4,4,0,0,8,4,5,0,0,8,5,-6,0,0,8,5,-5,0,0,8,5,-4,0,0,8,5,-3,0,0,8,5,-2,0,0,8,5,-1,0,0,8,5,0,0,0,8,5,1,0,0,8,5,2,0,0,8,5,3,0,0,8,5,4,0,0,8,5,5,0,0,8,4,0,0,0,8,4,1,0,0,8],"Middle":[-7,-7,0,2,7,-7,1,0,2,7,-6,-7,0,2,7,-6,1,0,2,7,-5,-7,0,2,7,-5,1,0,2,7,-4,-7,0,2,7,-4,1,0,2,7,-3,-7,0,2,7,-3,1,0,2,7,-2,-7,0,2,7,-2,1,0,2,7,-1,-7,0,2,7,-1,1,0,2,7,0,-7,0,2,7,0,1,0,2,7,1,-7,0,2,7,1,1,0,2,7,2,-7,0,2,7,2,1,0,2,7,3,-7,0,2,7,3,1,0,3,7,4,-7,0,2,7,5,-7,0,2,7],"Top":[-8,-7,0,3,4,-8,-6,0,3,3,-8,-5,0,3,3,-8,-4,0,3,3,-8,-3,0,3,3,-8,-2,0,3,3,-8,-1,0,3,3,-8,0,0,11,2,-8,1,0,3,4,-8,2,0,3,3,-8,3,0,3,3,-8,4,0,3,3,-8,5,0,3,3,-8,6,0,11,2,-7,0,0,2,2,-7,6,0,2,2,-6,0,0,2,2,-6,6,0,2,2,-5,0,0,2,2,-5,6,0,2,2,-4,0,0,2,2,-4,6,0,2,2,-3,0,0,2,2,-3,6,0,2,2,-2,0,0,2,2,-2,6,0,2,2,-1,0,0,2,2,-1,6,0,2,2,0,0,0,2,2,0,6,0,2,2,1,0,0,2,2,1,6,0,2,2,2,0,0,2,2,2,6,0,2,2,3,0,0,3,2,3,6,0,2,2,4,6,0,2,2,5,6,0,2,2,6,-7,0,1,4,6,-6,0,1,3,6,-5,0,1,3,6,-4,0,1,3,6,-3,0,1,3,6,-2,0,1,3,6,-1,0,1,3,6,0,0,1,3,6,1,0,1,3,6,2,0,1,3,6,3,0,1,3,6,4,0,1,3,6,5,0,1,3,6,6,0,13,2]} \ No newline at end of file +{"NavigationList":[{"Type":0,"Points":[-104,-88,88,-88,88,96,-104,96]},{"Type":1,"Points":[-40,-64,8,-64,8,0,72,0,72,40,-88,40,-88,0,-40,0]}],"Floor":[-7,-6,0,0,8,-7,-5,0,0,8,-7,-4,0,0,8,-7,-3,0,0,8,-7,-2,0,0,8,-7,-1,0,0,8,-7,2,0,0,8,-7,3,0,0,8,-7,4,0,0,8,-7,5,0,0,8,-6,-6,0,0,8,-6,-5,0,0,8,-6,-4,0,0,8,-6,-3,0,0,8,-6,-2,0,0,8,-6,-1,0,0,8,-6,2,0,0,8,-6,3,0,0,8,-6,4,0,0,8,-6,5,0,0,8,-5,-6,0,0,8,-5,-5,0,0,8,-5,-4,0,0,8,-5,-3,0,0,8,-5,-2,0,0,8,-5,-1,0,0,8,-5,2,0,0,8,-5,3,0,0,8,-5,4,0,0,8,-5,5,0,0,8,-4,-6,0,0,8,-4,-5,0,0,8,-4,-4,0,0,8,-4,-3,0,0,8,-4,-2,0,0,8,-4,-1,0,0,8,-4,2,0,0,8,-4,3,0,0,8,-4,4,0,0,8,-4,5,0,0,8,-3,-6,0,0,8,-3,-5,0,0,8,-3,-4,0,0,8,-3,-3,0,0,8,-3,-2,0,0,8,-3,-1,0,0,8,-3,2,0,0,8,-3,3,0,0,8,-3,4,0,0,8,-3,5,0,0,8,-2,-6,0,0,8,-2,-5,0,0,8,-2,2,0,0,8,-2,3,0,0,8,-2,4,0,0,8,-2,5,0,0,8,-1,-6,0,0,8,-1,-5,0,0,8,-1,2,0,0,8,-1,3,0,0,8,-1,4,0,0,8,-1,5,0,0,8,0,-6,0,0,8,0,-5,0,0,8,0,-4,0,0,8,0,-3,0,0,8,0,-2,0,0,8,0,-1,0,0,8,0,2,0,0,8,0,3,0,0,8,0,4,0,0,8,0,5,0,0,8,1,-6,0,0,8,1,-5,0,0,8,1,-4,0,0,8,1,-3,0,0,8,1,-2,0,0,8,1,-1,0,0,8,1,2,0,0,8,1,3,0,0,8,1,4,0,0,8,1,5,0,0,8,2,-6,0,0,8,2,-5,0,0,8,2,-4,0,0,8,2,-3,0,0,8,2,-2,0,0,8,2,-1,0,0,8,2,2,0,0,8,2,3,0,0,8,2,4,0,0,8,2,5,0,0,8,3,-6,0,0,8,3,-5,0,0,8,3,-4,0,0,8,3,-3,0,0,8,3,-2,0,0,8,3,-1,0,0,8,3,2,0,0,8,3,3,0,0,8,3,4,0,0,8,3,5,0,0,8,4,-6,0,0,8,4,-5,0,0,8,4,-4,0,0,8,4,-3,0,0,8,4,-2,0,0,8,4,-1,0,0,8,4,2,0,0,8,4,3,0,0,8,4,4,0,0,8,4,5,0,0,8,5,-6,0,0,8,5,-5,0,0,8,5,-4,0,0,8,5,-3,0,0,8,5,-2,0,0,8,5,-1,0,0,8,5,0,0,0,8,5,1,0,0,8,5,2,0,0,8,5,3,0,0,8,5,4,0,0,8,5,5,0,0,8,4,0,0,0,8,4,1,0,0,8,-7,0,0,0,8,-7,1,0,0,8,-6,1,0,0,8,-6,0,0,0,8],"Middle":[-7,-7,0,2,7,-6,-7,0,2,7,-5,-7,0,2,7,-5,1,0,1,7,-4,-7,0,2,7,-4,1,0,2,7,-3,-7,0,2,7,-3,1,0,2,7,-2,-7,0,2,7,-2,1,0,2,7,-1,-7,0,2,7,-1,1,0,2,7,0,-7,0,2,7,0,1,0,2,7,1,-7,0,2,7,1,1,0,2,7,2,-7,0,2,7,2,1,0,2,7,3,-7,0,2,7,3,1,0,3,7,4,-7,0,2,7,5,-7,0,2,7],"Top":[-8,-7,0,3,4,-8,-6,0,3,3,-8,-5,0,3,3,-8,-4,0,3,3,-8,-3,0,3,3,-8,-2,0,3,3,-8,-1,0,3,3,-8,0,0,3,3,-8,1,0,3,3,-8,2,0,3,3,-8,3,0,3,3,-8,4,0,3,3,-8,5,0,3,3,-8,6,0,11,2,-7,6,0,2,2,-6,6,0,2,2,-5,0,0,1,2,-5,6,0,2,2,-4,0,0,2,2,-4,6,0,2,2,-3,0,0,2,2,-3,6,0,2,2,-2,-4,0,1,2,-2,-3,0,1,3,-2,-2,0,1,3,-2,-1,0,1,3,-2,0,0,13,2,-2,6,0,2,2,-1,-4,0,3,2,-1,-3,0,3,3,-1,-2,0,3,3,-1,-1,0,3,3,-1,0,0,11,2,-1,6,0,2,2,0,0,0,2,2,0,6,0,2,2,1,0,0,2,2,1,6,0,2,2,2,0,0,2,2,2,6,0,2,2,3,0,0,3,2,3,6,0,2,2,4,6,0,2,2,5,6,0,2,2,6,-7,0,1,4,6,-6,0,1,3,6,-5,0,1,3,6,-4,0,1,3,6,-3,0,1,3,6,-2,0,1,3,6,-1,0,1,3,6,0,0,1,3,6,1,0,1,3,6,2,0,1,3,6,3,0,1,3,6,4,0,1,3,6,5,0,1,3,6,6,0,13,2]} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs index d96eb80..41d4a89 100644 --- a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs +++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs @@ -128,7 +128,7 @@ /// /// 是否正在投抛过程中 /// - public bool IsThrowing => _throwForce != null && !_isFallOver; + public bool IsThrowing => VerticalSpeed != 0 && !_isFallOver; /// /// 当前物体的海拔高度, 如果大于0, 则会做自由落体运动, 也就是执行投抛逻辑 diff --git a/DungeonShooting_Godot/src/framework/map/fog/FogMaskHandler.cs b/DungeonShooting_Godot/src/framework/map/fog/FogMaskHandler.cs index 31504dc..2a03b61 100644 --- a/DungeonShooting_Godot/src/framework/map/fog/FogMaskHandler.cs +++ b/DungeonShooting_Godot/src/framework/map/fog/FogMaskHandler.cs @@ -111,7 +111,7 @@ //显示预览过道 roomInfoDoor.PreviewRoomFogMask.SetActive(false); roomInfoDoor.PreviewAisleFogMask.SetActive(true); - roomInfoDoor.PreviewAisleFogMask.TransitionAlpha(1); + roomInfoDoor.PreviewAisleFogMask.TransitionAlpha(0, 1); } } } diff --git a/DungeonShooting_Godot/src/game/activity/role/Role.cs b/DungeonShooting_Godot/src/game/activity/role/Role.cs index 68c7a33..aea85db 100644 --- a/DungeonShooting_Godot/src/game/activity/role/Role.cs +++ b/DungeonShooting_Godot/src/game/activity/role/Role.cs @@ -1247,7 +1247,7 @@ { MeleeAttackCollision.Polygon = Utils.CreateSectorPolygon( Utils.ConvertAngle(-MeleeAttackAngle / 2f), - (weapon.GetLocalFirePosition() - weapon.GetGripPosition()).Length() * 1.2f, + (weapon.GetLocalFirePosition() + weapon.GetGripPosition()).Length() * 1.1f, MeleeAttackAngle, 6 ); diff --git a/DungeonShooting_Godot/src/game/activity/role/enemy/state/AiFindAmmoState.cs b/DungeonShooting_Godot/src/game/activity/role/enemy/state/AiFindAmmoState.cs index 9e71f84..207795b 100644 --- a/DungeonShooting_Godot/src/game/activity/role/enemy/state/AiFindAmmoState.cs +++ b/DungeonShooting_Godot/src/game/activity/role/enemy/state/AiFindAmmoState.cs @@ -41,7 +41,7 @@ } else { - _attackTarget = Master.LookTarget; + _attackTarget = null; } SetTargetWeapon((Weapon)args[0]); diff --git a/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs b/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs index b465060..e0a67d6 100644 --- a/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs +++ b/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs @@ -166,8 +166,9 @@ var attackLayer = bullet.AttackLayer; if (TriggerRole != null && TriggerRole.CollisionWithMask(attackLayer)) //是攻击玩家的子弹 { + //反弹子弹 bullet.PlayDisappearEffect(); - bullet.BasisVelocity = bullet.BasisVelocity.Rotated(Mathf.Pi); + bullet.MoveController.ScaleAllVelocity(-1); bullet.Rotation += Mathf.Pi; bullet.AttackLayer = TriggerRole.AttackLayer; } diff --git a/DungeonShooting_Godot/src/game/ui/roomMap/RoomMapPanel.cs b/DungeonShooting_Godot/src/game/ui/roomMap/RoomMapPanel.cs index 6b24e90..d2d9c77 100644 --- a/DungeonShooting_Godot/src/game/ui/roomMap/RoomMapPanel.cs +++ b/DungeonShooting_Godot/src/game/ui/roomMap/RoomMapPanel.cs @@ -25,6 +25,7 @@ //放大地图后鼠标悬停的房间 private RoomInfo _mouseHoverRoom; private Color _originOutlineColor; + //是否展开地图 private bool _pressMapFlag = false; private Tween _transmissionTween; @@ -65,7 +66,7 @@ _pressMapFlag = false; } //按下地图按键 - if (InputManager.Map && !_isMagnifyMap && !_pressMapFlag) + if (InputManager.Map && !_isMagnifyMap && !_pressMapFlag) //展开小地图 { if (UiManager.GetUiInstanceCount(UiManager.UiName.PauseMenu) == 0) { @@ -75,7 +76,7 @@ MagnifyMap(); } } - else if (!InputManager.Map && _isMagnifyMap) + else if (!InputManager.Map && _isMagnifyMap) //还原小地图 { ResetMap(); _isMagnifyMap = false; @@ -238,6 +239,10 @@ roomInfo.PreviewSprite.MouseEntered += () => { + if (!_pressMapFlag) + { + return; + } ResetOutlineColor(); _mouseHoverRoom = roomInfo; var shaderMaterial = (ShaderMaterial)roomInfo.PreviewSprite.Material; @@ -253,7 +258,14 @@ shaderMaterial.SetShaderParameter("outline_color", new Color(1, 0, 0, 0.9f)); } }; - roomInfo.PreviewSprite.MouseExited += ResetOutlineColor; + roomInfo.PreviewSprite.MouseExited += () => + { + if (!_pressMapFlag) + { + return; + } + ResetOutlineColor(); + }; //过道 if (roomInfo.Doors != null)