Run NetworkObject checks before every build

This commit is contained in:
Pascal Serrarens 2022-02-25 10:04:28 +01:00
parent 94690b38e1
commit a75c4b38ec

View File

@ -1,5 +1,6 @@
using UnityEngine; using UnityEngine;
using UnityEditor; using UnityEditor;
using UnityEditor.Build;
#if UNITY_2021_2_OR_NEWER #if UNITY_2021_2_OR_NEWER
using UnityEditor.SceneManagement; using UnityEditor.SceneManagement;
#else #else
@ -9,7 +10,17 @@ using UnityEditor.Experimental.SceneManagement;
namespace Passer { namespace Passer {
[InitializeOnLoad] [InitializeOnLoad]
public class NetworkObject_Check { public class NetworkObject_Check : IPreprocessBuildWithReport {
public int callbackOrder => 0;
public void OnPreprocessBuild(UnityEditor.Build.Reporting.BuildReport report) {
NetworkObject[] networkObjects = Object.FindObjectsOfType<NetworkObject>();
foreach (NetworkObject networkObject in networkObjects)
CheckForNetworkObject(networkObject.gameObject);
}
/// <summary>Check if this gameObject has the right network transform code</summary> /// <summary>Check if this gameObject has the right network transform code</summary>
static NetworkObject_Check() { static NetworkObject_Check() {
NetworkObject[] networkObjects = Object.FindObjectsOfType<NetworkObject>(); NetworkObject[] networkObjects = Object.FindObjectsOfType<NetworkObject>();