using System;
using UnityEngine;
namespace Unity.Netcode
{
internal enum NetworkPrefabOverride
{
None,
Prefab,
Hash
}
///
/// Class that represents a NetworkPrefab
///
[Serializable]
internal class NetworkPrefab
{
///
/// The override setttings for this NetworkPrefab
///
public NetworkPrefabOverride Override;
///
/// Asset reference of the network prefab
///
public GameObject Prefab;
///
/// Used when prefab is selected for the source prefab to override value (i.e. direct reference, the prefab is within the same project)
/// We keep a separate value as the user might want to have something different than the default Prefab for the SourcePrefabToOverride
///
public GameObject SourcePrefabToOverride;
///
/// Used when hash is selected for the source prefab to override value (i.e. a direct reference is not possible such as in a multi-project pattern)
///
public uint SourceHashToOverride;
///
/// The prefab to replace (override) the source prefab with
///
public GameObject OverridingTargetPrefab;
}
}