Skip to content

Commit 0b06511

Browse files
authored
Merge pull request #1910 from tornac1234/1.7.0.0
1.7.0.0
2 parents 899dde6 + 104c1d1 commit 0b06511

File tree

163 files changed

+197
-3355
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

163 files changed

+197
-3355
lines changed

Directory.Build.props

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project InitialTargets="PrepareForModding">
22
<!-- Set default properties for all projects (can be overridden per project) -->
33
<PropertyGroup>
4-
<Version>1.6.0.1</Version>
4+
<Version>1.7.0.0</Version>
55
<LangVersion>10</LangVersion>
66
<NitroxProject>false</NitroxProject>
77
<TestLibrary>false</TestLibrary>

NitroxClient/ClientAutoFacRegistrar.cs

-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
using NitroxClient.GameLogic.FMOD;
1717
using NitroxClient.GameLogic.HUD;
1818
using NitroxClient.GameLogic.InitialSync.Base;
19-
using NitroxClient.GameLogic.PlayerLogic;
2019
using NitroxClient.GameLogic.PlayerLogic.PlayerModel;
2120
using NitroxClient.GameLogic.PlayerLogic.PlayerModel.Abstract;
2221
using NitroxClient.GameLogic.PlayerLogic.PlayerPreferences;
@@ -141,7 +140,6 @@ private static void RegisterCoreDependencies(ContainerBuilder containerBuilder)
141140
containerBuilder.RegisterType<LiveMixinManager>().InstancePerLifetimeScope();
142141
containerBuilder.RegisterType<NitroxSettingsManager>().InstancePerLifetimeScope();
143142
containerBuilder.RegisterType<ThrottledPacketSender>().InstancePerLifetimeScope();
144-
containerBuilder.RegisterType<PlayerCinematics>().InstancePerLifetimeScope();
145143
containerBuilder.RegisterType<NitroxPDATabManager>().InstancePerLifetimeScope();
146144
}
147145

NitroxClient/Communication/Packets/Processors/PlayerCinematicControllerCallProcessor.cs

-41
This file was deleted.

NitroxClient/Debuggers/NetworkDebugger.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public class NetworkDebugger : BaseDebugger, INetworkDebugger
1616

1717
private readonly List<string> filter = new()
1818
{
19-
nameof(PlayerMovement), nameof(EntityTransformUpdates), nameof(PlayerStats), nameof(CellEntities), nameof(VehicleMovement), nameof(PlayerCinematicControllerCall),
19+
nameof(PlayerMovement), nameof(EntityTransformUpdates), nameof(PlayerStats), nameof(CellEntities), nameof(VehicleMovement),
2020
nameof(PlayFMODAsset), nameof(PlayFMODCustomEmitter), nameof(PlayFMODStudioEmitter), nameof(PlayFMODCustomLoopingEmitter)
2121
};
2222
private readonly List<PacketDebugWrapper> packets = new List<PacketDebugWrapper>(PACKET_STORED_COUNT);

NitroxClient/GameLogic/EscapePodManager.cs

-7
Original file line numberDiff line numberDiff line change
@@ -122,13 +122,6 @@ public GameObject CreateNewEscapePod(EscapePodModel model)
122122
DamageEscapePod(model.Damaged, model.RadioDamaged);
123123
FixStartMethods(escapePod);
124124

125-
// Start() isn't executed for the EscapePod, why? Idk, maybe because it's a scene...
126-
MultiplayerCinematicReference reference = escapePod.AddComponent<MultiplayerCinematicReference>();
127-
foreach (PlayerCinematicController controller in escapePod.GetComponentsInChildren<PlayerCinematicController>())
128-
{
129-
reference.AddController(controller);
130-
}
131-
132125
SURPRESS_ESCAPE_POD_AWAKE_METHOD = false;
133126

134127
return escapePod;

NitroxClient/GameLogic/PlayerLogic/PlayerCinematics.cs

-25
This file was deleted.

NitroxClient/GameLogic/RemotePlayer.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
using NitroxClient.GameLogic.PlayerLogic.PlayerModel.Abstract;
77
using NitroxClient.MonoBehaviours;
88
using NitroxClient.Unity.Helper;
9-
using NitroxModel.Helper;
109
using NitroxModel.MultiplayerSession;
1110
using UnityEngine;
1211
using UWE;
@@ -69,6 +68,7 @@ public RemotePlayer(GameObject playerBody, PlayerContext playerContext, List<Tec
6968
PlayerModel.GetComponent<ConditionRules>().enabled = false;
7069

7170
AnimationController = PlayerModel.AddComponent<AnimationController>();
71+
AnimationController.Initialize(this);
7272

7373
Transform inventoryTransform = new GameObject("Inventory").transform;
7474
inventoryTransform.SetParent(Body.transform);

NitroxClient/GameLogic/Terrain.cs

+10-5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System.Collections;
1+
using System;
2+
using System.Collections;
23
using System.Collections.Generic;
34
using NitroxClient.Communication.Abstract;
45
using NitroxClient.Map;
@@ -103,10 +104,14 @@ public static IEnumerator WaitForWorldLoad()
103104
// In WorldStreamer.CreateStreamers() three coroutines are created to constantly call UpdateCenter() on the streamers
104105
// We force these updates so that the world streamer gets busy instantly
105106
WorldStreamer streamerV2 = LargeWorldStreamer.main.streamerV2;
106-
streamerV2.UpdateStreamingCenter(MainCamera.camera.transform.position);
107-
streamerV2.octreesStreamer.UpdateCenter(streamerV2.streamingCenter);
108-
streamerV2.lowDetailOctreesStreamer.UpdateCenter(streamerV2.streamingCenter);
109-
streamerV2.clipmapStreamer.UpdateCenter(streamerV2.streamingCenter);
107+
// Sometimes, the world streamers can't find any cells to load and will throw an error, in which case we just skip the cell loading
108+
try
109+
{
110+
streamerV2.UpdateStreamingCenter(MainCamera.camera.transform.position);
111+
streamerV2.octreesStreamer.UpdateCenter(streamerV2.streamingCenter);
112+
streamerV2.lowDetailOctreesStreamer.UpdateCenter(streamerV2.streamingCenter);
113+
streamerV2.clipmapStreamer.UpdateCenter(streamerV2.streamingCenter);
114+
} catch (Exception) { }
110115

111116
yield return new WaitUntil(() => LargeWorldStreamer.main.IsWorldSettled());
112117
Player.main.cinematicModeActive = false;

NitroxClient/MonoBehaviours/AnimationController.cs

+20-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using UnityEngine;
1+
using NitroxClient.GameLogic;
2+
using UnityEngine;
23

34
namespace NitroxClient.MonoBehaviours
45
{
@@ -7,6 +8,7 @@ public class AnimationController : MonoBehaviour
78
{
89
private const float SMOOTHING_SPEED = 4f;
910
private Animator animator;
11+
private RemotePlayer remotePlayer;
1012

1113
public bool UpdatePlayerAnimations { get; set; } = true;
1214
public Quaternion AimingRotation { get; set; }
@@ -23,6 +25,23 @@ public void Awake()
2325
this["is_underwater"] = true;
2426
}
2527

28+
public void Initialize(RemotePlayer remotePlayer)
29+
{
30+
this.remotePlayer = remotePlayer;
31+
remotePlayer.PlayerDeathEvent.AddHandler(this, Reset);
32+
}
33+
34+
public void OnDestroy()
35+
{
36+
remotePlayer?.PlayerDeathEvent.RemoveHandler(this, Reset);
37+
}
38+
39+
private void Reset(RemotePlayer remotePlayer)
40+
{
41+
animator.Rebind();
42+
animator.Update(0);
43+
}
44+
2645
public void FixedUpdate()
2746
{
2847
if (UpdatePlayerAnimations)

NitroxClient/MonoBehaviours/CinematicController/MultiplayerCinematicController.cs

-156
This file was deleted.

0 commit comments

Comments
 (0)