@@ -33,7 +33,7 @@ public class ServerAdditiveSceneLoader : NetworkBehaviour
33
33
/// </summary>
34
34
List < ulong > m_PlayersInTrigger ;
35
35
36
- bool m_IsActive ;
36
+ bool IsActive => IsServer && IsSpawned ;
37
37
38
38
enum SceneState
39
39
{
@@ -58,13 +58,11 @@ public override void OnNetworkSpawn()
58
58
59
59
NetworkManager . SceneManager . OnSceneEvent += OnSceneEvent ;
60
60
m_PlayersInTrigger = new List < ulong > ( ) ;
61
- m_IsActive = true ;
62
61
}
63
62
}
64
63
65
64
public override void OnNetworkDespawn ( )
66
65
{
67
- m_IsActive = false ;
68
66
if ( IsServer )
69
67
{
70
68
NetworkManager . OnClientDisconnectCallback -= RemovePlayer ;
@@ -86,7 +84,7 @@ void OnSceneEvent(SceneEvent sceneEvent)
86
84
87
85
void OnTriggerEnter ( Collider other )
88
86
{
89
- if ( m_IsActive ) // make sure that OnNetworkSpawn has been called before this
87
+ if ( IsActive ) // make sure that OnNetworkSpawn has been called before this
90
88
{
91
89
if ( other . CompareTag ( m_PlayerTag ) && other . TryGetComponent ( out NetworkObject networkObject ) )
92
90
{
@@ -107,7 +105,7 @@ void OnTriggerEnter(Collider other)
107
105
108
106
void OnTriggerExit ( Collider other )
109
107
{
110
- if ( m_IsActive ) // make sure that OnNetworkSpawn has been called before this
108
+ if ( IsActive ) // make sure that OnNetworkSpawn has been called before this
111
109
{
112
110
if ( other . CompareTag ( m_PlayerTag ) && other . TryGetComponent ( out NetworkObject networkObject ) )
113
111
{
@@ -118,7 +116,7 @@ void OnTriggerExit(Collider other)
118
116
119
117
void FixedUpdate ( )
120
118
{
121
- if ( m_IsActive ) // make sure that OnNetworkSpawn has been called before this
119
+ if ( IsActive ) // make sure that OnNetworkSpawn has been called before this
122
120
{
123
121
if ( m_SceneState == SceneState . Unloaded && m_PlayersInTrigger . Count > 0 )
124
122
{
0 commit comments