-
-
Notifications
You must be signed in to change notification settings - Fork 201
Open
Description
Unity version: 2022.3.62f2
FishNet version: 4.6.20 PRO
Using enum generics in NetworkBehaviour classes with Rpcs it throws this at runtime
public abstract class FooBase<TBar> : NetworkBehaviour
where TBar : Enum
{
private readonly SyncVar<int> _syncVar = new();
private TBar _bar;
[ServerRpc] //!!! IF SERVER RPC EXISTS IF THROWS AN ERROR
private void Quux(int value)
{
}
}
public enum EBar
{
A = 0,
B = 1,
C = 2,
}
public class Foo : FooBase<EBar>
{
}
ERROR LOG
BadImageFormatException: Method with open type while not compiling gshared
Foo.NetworkInitialize___Early () (at <1a0fdd6cad3d4f069493378c4eaae67e>:0)
Foo.Awake () (at <1a0fdd6cad3d4f069493378c4eaae67e>:0)
UnityEngine.Object:Instantiate(NetworkObject, Vector3, Quaternion, Transform)
FishNet.Utility.Performance.DefaultObjectPool:<RetrieveObject>g__GetFromInstantiate|6_0(<>c__DisplayClass6_0&) (at Assets/FishNet/Runtime/Utility/Performance/DefaultObjectPool.cs:125)
FishNet.Utility.Performance.DefaultObjectPool:RetrieveObject(Int32, UInt16, ObjectPoolRetrieveOption, Transform, Nullable`1, Nullable`1, Nullable`1, Boolean) (at Assets/FishNet/Runtime/Utility/Performance/DefaultObjectPool.cs:96)
FishNet.Managing.NetworkManager:GetPooledInstantiated(Int32, UInt16, ObjectPoolRetrieveOption, Transform, Nullable`1, Nullable`1, Nullable`1, Boolean) (at Assets/FishNet/Runtime/Managing/NetworkManager.ObjectPooling.cs:95)
FishNet.Managing.NetworkManager:GetPooledInstantiated(NetworkObject, Vector3, Quaternion, Boolean) (at Assets/FishNet/Runtime/Managing/NetworkManager.ObjectPooling.cs:24)
FishNet.Component.Spawning.PlayerSpawner:SceneManager_OnClientLoadedStartScenes(NetworkConnection, Boolean) (at Assets/FishNet/Runtime/Generated/Component/Spawning/PlayerSpawner.cs:107)
FishNet.Managing.Scened.SceneManager:TryInvokeLoadedStartScenes(NetworkConnection, Boolean) (at Assets/FishNet/Runtime/Managing/Scened/SceneManager.cs:502)
FishNet.Managing.Scened.SceneManager:OnClientLoadedScenes(NetworkConnection, ClientScenesLoadedBroadcast, Channel) (at Assets/FishNet/Runtime/Managing/Scened/SceneManager.cs:706)
FishNet.Managing.Scened.SceneManager:OnClientSentEmptyStartScenes(NetworkConnection, EmptyStartScenesBroadcast, Channel) (at Assets/FishNet/Runtime/Managing/Scened/SceneManager.cs:605)
FishNet.Broadcast.Helping.ClientBroadcastHandler`1:InvokeHandlers(NetworkConnection, PooledReader, Channel) (at Assets/FishNet/Runtime/Serializing/Helping/Broadcasts.cs:98)
FishNet.Managing.Server.ServerManager:ParseBroadcast(PooledReader, NetworkConnection, Channel) (at Assets/FishNet/Runtime/Managing/Server/ServerManager.Broadcast.cs:94)
FishNet.Managing.Server.ServerManager:ParseReceived(ServerReceivedDataArgs) (at Assets/FishNet/Runtime/Managing/Server/ServerManager.cs:845)
FishNet.Managing.Server.ServerManager:Transport_OnServerReceivedData(ServerReceivedDataArgs) (at Assets/FishNet/Runtime/Managing/Server/ServerManager.cs:702)
FishNet.Transporting.Tugboat.Tugboat:HandleServerReceivedDataArgs(ServerReceivedDataArgs) (at Assets/FishNet/Runtime/Transporting/Transports/Tugboat/Tugboat.cs:304)
FishNet.Transporting.Tugboat.Server.ServerSocket:IterateIncoming() (at Assets/FishNet/Runtime/Transporting/Transports/Tugboat/Core/ServerSocket.cs:469)
FishNet.Transporting.Tugboat.Tugboat:IterateIncoming(Boolean) (at Assets/FishNet/Runtime/Transporting/Transports/Tugboat/Tugboat.cs:235)
FishNet.Managing.Transporting.TransportManager:IterateIncoming(Boolean) (at Assets/FishNet/Runtime/Managing/Transporting/TransportManager.cs:750)
FishNet.Managing.Timing.TimeManager:TryIterateData(Boolean) (at Assets/FishNet/Runtime/Managing/Timing/TimeManager.cs:1111)
FishNet.Managing.Timing.TimeManager:IncreaseTick() (at Assets/FishNet/Runtime/Managing/Timing/TimeManager.cs:733)
FishNet.Managing.Timing.TimeManager:<TickUpdate>g__MethodLogic|113_0() (at Assets/FishNet/Runtime/Managing/Timing/TimeManager.cs:392)
FishNet.Managing.Timing.TimeManager:TickUpdate() (at Assets/FishNet/Runtime/Managing/Timing/TimeManager.cs:380)
FishNet.Transporting.NetworkReaderLoop:Update() (at Assets/FishNet/Runtime/Transporting/NetworkReaderLoop.cs:29)
Metadata
Metadata
Assignees
Labels
No labels