Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -1432,10 +1432,7 @@ private void ProcessNetworkBehaviour(TypeDefinition typeDefinition, string[] ass
if (typeDefinition.HasGenericParameters)
{
var genericTypes = new List<TypeReference>();
foreach (var parameter in typeDefinition.GenericParameters)
{
genericTypes.Add(parameter);
}
genericTypes.AddRange(typeDefinition.GenericParameters);
callMethod = callMethod.MakeGeneric(genericTypes.ToArray());
}

Expand Down Expand Up @@ -3102,10 +3099,7 @@ private MethodDefinition GenerateStaticHandler(MethodDefinition methodDefinition
if (castType.HasGenericParameters)
{
var genericTypes = new List<TypeReference>();
foreach (var parameter in castType.GenericParameters)
{
genericTypes.Add(parameter);
}
genericTypes.AddRange(castType.GenericParameters);
castType = castType.MakeGenericInstanceType(genericTypes.ToArray());
callMethod = callMethod.MakeGeneric(genericTypes.ToArray());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ public class NetcodeForGameObjectsProjectSettings : ScriptableSingleton<NetcodeF

private void OnEnable()
{
if (NetworkPrefabsPath == "")
if (NetworkPrefabsPath?.Length == 0)
{
NetworkPrefabsPath = DefaultNetworkPrefabsPath;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ private static void OnDeactivate()
if (settings.TempNetworkPrefabsPath != settings.NetworkPrefabsPath)
{
var newPath = settings.TempNetworkPrefabsPath;
if (newPath == "")
if (newPath?.Length == 0)
{
newPath = NetcodeForGameObjectsProjectSettings.DefaultNetworkPrefabsPath;
settings.TempNetworkPrefabsPath = newPath;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ public override void OnInspectorGUI()
overrideIp = EditorGUILayout.TextField("Override Bind IP (optional)", overrideIp);
if (allowRemoteConnections)
{
if (overrideIp == "")
if (overrideIp?.Length == 0)
{
if (isIpV6)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ private void DisplayNetworkManagerProperties()
// Default directory
var directory = "Assets/";
var assetPath = AssetDatabase.GetAssetPath(m_NetworkManager);
if (assetPath == "")
if (assetPath?.Length == 0)
{
assetPath = PrefabUtility.GetPrefabAssetPathOfNearestInstanceRoot(m_NetworkManager);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -240,8 +240,7 @@ public void AnticipateState(TransformState newState)
return;
}
var transform_ = transform;
transform_.position = newState.Position;
transform_.rotation = newState.Rotation;
transform_.SetPositionAndRotation(newState.Position, newState.Rotation);
transform_.localScale = newState.Scale;
m_AnticipatedTransform = newState;
if (CanCommitToTransform)
Expand Down Expand Up @@ -336,8 +335,7 @@ public void SetupForRender()
Transform.m_AnticipatedTransform = Transform.m_AuthoritativeTransform;
}

transform_.position = Transform.m_AnticipatedTransform.Position;
transform_.rotation = Transform.m_AnticipatedTransform.Rotation;
transform_.SetPositionAndRotation(Transform.m_AnticipatedTransform.Position, Transform.m_AnticipatedTransform.Rotation);
transform_.localScale = Transform.m_AnticipatedTransform.Scale;
}
}
Expand All @@ -347,8 +345,7 @@ public void SetupForUpdate()
if (Transform.CanCommitToTransform)
{
var transform_ = Transform.transform;
transform_.position = Transform.m_AuthoritativeTransform.Position;
transform_.rotation = Transform.m_AuthoritativeTransform.Rotation;
transform_.SetPositionAndRotation(Transform.m_AuthoritativeTransform.Position, Transform.m_AuthoritativeTransform.Rotation);
transform_.localScale = Transform.m_AuthoritativeTransform.Scale;
}
}
Expand Down Expand Up @@ -493,8 +490,7 @@ public void Smooth(TransformState from, TransformState to, float durationSeconds
{
m_AnticipatedTransform = to;
m_PreviousAnticipatedTransform = m_AnticipatedTransform;
transform_.position = to.Position;
transform_.rotation = to.Rotation;
transform_.SetPositionAndRotation(to.Position, to.Rotation);
transform_.localScale = to.Scale;
m_SmoothDuration = 0;
m_CurrentSmoothTime = 0;
Expand All @@ -505,8 +501,7 @@ public void Smooth(TransformState from, TransformState to, float durationSeconds

if (!CanCommitToTransform)
{
transform_.position = from.Position;
transform_.rotation = from.Rotation;
transform_.SetPositionAndRotation(from.Position, from.Rotation);
transform_.localScale = from.Scale;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ public bool HasPositionChange
{
get
{
return HasPositionX | HasPositionY | HasPositionZ;
return HasPositionX || HasPositionY || HasPositionZ;
}
}

Expand Down Expand Up @@ -241,7 +241,7 @@ public bool HasRotAngleChange
{
get
{
return HasRotAngleX | HasRotAngleY | HasRotAngleZ;
return HasRotAngleX || HasRotAngleY || HasRotAngleZ;
}
}

Expand Down Expand Up @@ -301,7 +301,7 @@ public bool HasScaleChange
{
get
{
return HasScaleX | HasScaleY | HasScaleZ;
return HasScaleX || HasScaleY || HasScaleZ;
}
}

Expand Down Expand Up @@ -3950,8 +3950,7 @@ private void SetStateInternal(Vector3 pos, Quaternion rot, Vector3 scale, bool s
{
if (InLocalSpace)
{
transform.localPosition = pos;
transform.localRotation = rot;
transform.SetLocalPositionAndRotation(pos, rot);
}
else
{
Expand Down Expand Up @@ -4539,8 +4538,8 @@ private void UpdateTransformState()
// - If UsUnrealiable is not enabled
// - If teleporting or synchronizing
// - If sending an UnrealiableFrameSync or synchronizing the base position of the NetworkDeltaPosition
var networkDelivery = !UseUnreliableDeltas | m_LocalAuthoritativeNetworkState.IsTeleportingNextFrame | m_LocalAuthoritativeNetworkState.IsSynchronizing
| m_LocalAuthoritativeNetworkState.UnreliableFrameSync | m_LocalAuthoritativeNetworkState.SynchronizeBaseHalfFloat
var networkDelivery = !UseUnreliableDeltas || m_LocalAuthoritativeNetworkState.IsTeleportingNextFrame || m_LocalAuthoritativeNetworkState.IsSynchronizing
|| m_LocalAuthoritativeNetworkState.UnreliableFrameSync || m_LocalAuthoritativeNetworkState.SynchronizeBaseHalfFloat
? NetworkDelivery.ReliableSequenced : NetworkDelivery.UnreliableSequenced;

// Server-host-dahost always sends updates to all clients (but itself)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,7 @@ public void Initialize(bool warnInvalid = true)
{
foreach (var list in NetworkPrefabsLists)
{
foreach (var networkPrefab in list.PrefabList)
{
prefabs.Add(networkPrefab);
}
prefabs.AddRange(list.PrefabList);
}
}

Expand Down Expand Up @@ -154,7 +151,7 @@ public void Initialize(bool warnInvalid = true)
if (NetworkLog.CurrentLogLevel <= LogLevel.Error)
{
var sb = new StringBuilder("Removing invalid prefabs from Network Prefab registration: ");
sb.Append(string.Join(", ", removeList));
sb.AppendJoin(", ", removeList);
NetworkLog.LogWarning(sb.ToString());
}
}
Expand Down
4 changes: 2 additions & 2 deletions com.unity.netcode.gameobjects/Runtime/Core/NetworkObject.cs
Original file line number Diff line number Diff line change
Expand Up @@ -364,7 +364,7 @@ internal bool HasParentNetworkObject(Transform transform)
/// <summary>
/// Useful to know if we should or should not send a message
/// </summary>
internal bool HasRemoteObservers => !(Observers.Count() == 0 || (Observers.Contains(NetworkManager.LocalClientId) && Observers.Count() == 1));
internal bool HasRemoteObservers => !(Observers.Count == 0 || (Observers.Contains(NetworkManager.LocalClientId) && Observers.Count == 1));

/// <summary>
/// Distributed Authority Mode Only
Expand Down Expand Up @@ -1085,7 +1085,7 @@ internal void SendOwnershipStatusUpdate()
}
else
{
changeOwnership.ClientIdCount = Observers.Count();
changeOwnership.ClientIdCount = Observers.Count;
changeOwnership.ClientIds = Observers.ToArray();
NetworkManager.ConnectionManager.SendMessage(ref changeOwnership, NetworkDelivery.Reliable, NetworkManager.ServerClientId);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,13 +130,11 @@ public void Handle(ref NetworkContext context)
// the values of the server-side post-parenting transform values
if (!WorldPositionStays)
{
networkObject.transform.localPosition = Position;
networkObject.transform.localRotation = Rotation;
networkObject.transform.SetLocalPositionAndRotation(Position, Rotation);
}
else
{
networkObject.transform.position = Position;
networkObject.transform.rotation = Rotation;
networkObject.transform.SetPositionAndRotation(Position, Rotation);
}
networkObject.transform.localScale = Scale;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -801,8 +801,7 @@ internal NetworkObject InstantiateAndSpawnNoParameterChecks(NetworkObject networ
return null;
}
networkObject.IsPlayerObject = isPlayerObject;
networkObject.transform.position = position;
networkObject.transform.rotation = rotation;
networkObject.transform.SetPositionAndRotation(position, rotation);
// If spawning as a player, then invoke SpawnAsPlayerObject
if (isPlayerObject)
{
Expand Down Expand Up @@ -901,8 +900,7 @@ internal NetworkObject GetNetworkObjectToSpawn(uint globalObjectIdHash, ulong ow
internal NetworkObject InstantiateNetworkPrefab(GameObject networkPrefab, uint prefabGlobalObjectIdHash, Vector3? position, Quaternion? rotation)
{
var networkObject = UnityEngine.Object.Instantiate(networkPrefab).GetComponent<NetworkObject>();
networkObject.transform.position = position ?? networkObject.transform.position;
networkObject.transform.rotation = rotation ?? networkObject.transform.rotation;
networkObject.transform.SetPositionAndRotation(position ?? networkObject.transform.position, rotation ?? networkObject.transform.rotation);
networkObject.NetworkManagerOwner = NetworkManager;
networkObject.PrefabGlobalObjectIdHash = prefabGlobalObjectIdHash;
return networkObject;
Expand Down Expand Up @@ -996,13 +994,11 @@ internal NetworkObject CreateLocalNetworkObject(NetworkObject.SceneObject sceneO
// then we want to apply the position and rotation values world space relative
if ((worldPositionStays && !nonNetworkObjectParent) || !networkObject.AutoObjectParentSync)
{
networkObject.transform.position = position;
networkObject.transform.rotation = rotation;
networkObject.transform.SetPositionAndRotation(position, rotation);
}
else
{
networkObject.transform.localPosition = position;
networkObject.transform.localRotation = rotation;
networkObject.transform.SetLocalPositionAndRotation(position, rotation);
}

// SPECIAL CASE:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,8 +53,7 @@ protected override void OnServerAndClientsCreated()
rigidBody.detectCollisions = false;
rigidBody.position = Vector3.zero;
rigidBody.rotation = Quaternion.identity;
rigidBody.transform.position = Vector3.zero;
rigidBody.transform.rotation = Quaternion.identity;
rigidBody.transform.SetPositionAndRotation(Vector3.zero, Quaternion.identity);
// NOTE: We don't use a sphere collider for this integration test because by the time we can
// assure they don't collide and skew the results the NetworkObjects are already synchronized
// with skewed results
Expand All @@ -77,8 +76,7 @@ protected override void OnServerAndClientsCreated()
rigidBody.detectCollisions = false;
rigidBody.position = Vector3.zero;
rigidBody.rotation = Quaternion.identity;
rigidBody.transform.position = Vector3.zero;
rigidBody.transform.rotation = Quaternion.identity;
rigidBody.transform.SetPositionAndRotation(Vector3.zero, Quaternion.identity);
// NOTE: We don't use a sphere collider for this integration test because by the time we can
// assure they don't collide and skew the results the NetworkObjects are already synchronized
// with skewed results
Expand Down Expand Up @@ -302,8 +300,7 @@ void LogOwnerRigidBody(int stage)
}
else
{
ownerInstance.transform.position = valueSetByOwner;
ownerInstance.transform.rotation = rotation;
ownerInstance.transform.SetPositionAndRotation(valueSetByOwner, rotation);
ownerInstance.transform.localScale = valueSetByOwner;
}

Expand Down Expand Up @@ -392,8 +389,7 @@ void LogOwnerRigidBody(int stage)
else
{
m_UseAdjustedVariance = false;
ownerInstance.transform.position = valueSetByOwner;
ownerInstance.transform.rotation = rotation;
ownerInstance.transform.SetPositionAndRotation(valueSetByOwner, rotation);
}

LogOwnerRigidBody(3);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -726,7 +726,7 @@ private IEnumerator ValidateClients(NetworkManager clientBeingTested, bool initi

if (initialize)
{
clientsInitialized.Add(client.LocalClientId, ownerInitialized & serverInitialized);
clientsInitialized.Add(client.LocalClientId, ownerInitialized && serverInitialized);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,8 +141,7 @@ protected override void OnCreatePlayerPrefab()
var playerNetworkObject = m_PlayerPrefab.GetComponent<NetworkObject>();
m_PlayerPosition = GetRandomVector3(-10.0f, 10.0f);
m_PlayerRotation = Quaternion.Euler(GetRandomVector3(-180.0f, 180.0f));
playerNetworkObject.transform.position = m_PlayerPosition;
playerNetworkObject.transform.rotation = m_PlayerRotation;
playerNetworkObject.transform.SetPositionAndRotation(m_PlayerPosition, m_PlayerRotation);
base.OnCreatePlayerPrefab();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -225,8 +225,7 @@ internal class NetworkPrefaInstanceHandler : INetworkPrefabInstanceHandler
public NetworkObject Instantiate(ulong ownerClientId, Vector3 position, Quaternion rotation)
{
var networkObjectInstance = UnityEngine.Object.Instantiate(m_NetworkObject.gameObject).GetComponent<NetworkObject>();
networkObjectInstance.transform.position = position;
networkObjectInstance.transform.rotation = rotation;
networkObjectInstance.transform.SetPositionAndRotation(position, rotation);
m_Instances.Add(networkObjectInstance);
return networkObjectInstance;
}
Expand Down