diff --git a/HarmonySrc/HandHolds.cs b/HarmonySrc/HandHolds.cs index 49928f0..c300f3d 100644 --- a/HarmonySrc/HandHolds.cs +++ b/HarmonySrc/HandHolds.cs @@ -62,8 +62,10 @@ namespace NecromancerTome public static int Current(EntityPlayerLocal _player) { + // Только от первого лица (16.10: «В виде от третьего лица что-то страшное»): поза и перенос ножа - для рук первого + // лица; от третьего лица модель в руке - у тела, и нож улетал к невидимой руке первого лица. if (_player != null && _player.inventory?.holdingItem?.Name == CinerariumThreads.ThreadKnifeName && - !SnakeMode.Active && !MindPalace.Active && !Possession.Active && !_player.IsDead()) + (_player.emodel as EModelSDCS)?.IsFPV == true && !SnakeMode.Active && !MindPalace.Active && !Possession.Active && !_player.IsDead()) { if (_threadSince < 0f) { diff --git a/HarmonySrc/HandPosePose.cs b/HarmonySrc/HandPosePose.cs index 9dd82fd..3f0f874 100644 --- a/HarmonySrc/HandPosePose.cs +++ b/HarmonySrc/HandPosePose.cs @@ -341,7 +341,8 @@ namespace NecromancerTome { Transform lh = Bone("LeftHand"); Transform m = HeldTweak.Model(); - if (lh != null && m != null) + EntityPlayerLocal pl = GameManager.Instance?.World?.GetPrimaryPlayer(); + if (lh != null && m != null && (pl?.emodel as EModelSDCS)?.IsFPV == true) { m.SetPositionAndRotation(lh.TransformPoint(KnifeLeftPos), lh.rotation * KnifeLeftRot); }