Internal messagetypes and channels no longer gets added to the user NetworkConfig

This commit is contained in:
Albin Corén 2018-04-02 18:05:35 +02:00
parent 17a594ee98
commit 6f1f035136

View File

@ -247,32 +247,47 @@ namespace MLAPI.MonoBehaviours.Core
}; };
//MLAPI channels and messageTypes //MLAPI channels and messageTypes
NetworkConfig.Channels.Add(new Channel() List<Channel> internalChannels = new List<Channel>();
internalChannels.Add(new Channel()
{ {
Name = "MLAPI_INTERNAL", Name = "MLAPI_INTERNAL",
Type = QosType.ReliableFragmentedSequenced Type = QosType.ReliableFragmentedSequenced
}); });
NetworkConfig.Channels.Add(new Channel() internalChannels.Add(new Channel()
{ {
Name = "MLAPI_POSITION_UPDATE", Name = "MLAPI_POSITION_UPDATE",
Type = QosType.StateUpdate Type = QosType.StateUpdate
}); });
NetworkConfig.Channels.Add(new Channel() internalChannels.Add(new Channel()
{ {
Name = "MLAPI_ANIMATION_UPDATE", Name = "MLAPI_ANIMATION_UPDATE",
Type = QosType.ReliableSequenced Type = QosType.ReliableSequenced
}); });
NetworkConfig.Channels.Add(new Channel() internalChannels.Add(new Channel()
{ {
Name = "MLAPI_NAV_AGENT_STATE", Name = "MLAPI_NAV_AGENT_STATE",
Type = QosType.ReliableSequenced Type = QosType.ReliableSequenced
}); });
NetworkConfig.Channels.Add(new Channel() internalChannels.Add(new Channel()
{ {
Name = "MLAPI_NAV_AGENT_CORRECTION", Name = "MLAPI_NAV_AGENT_CORRECTION",
Type = QosType.StateUpdate Type = QosType.StateUpdate
}); });
HashSet<string> channelNames = new HashSet<string>();
for (int i = 0; i < internalChannels.Count; i++)
{
if (channelNames.Contains(internalChannels[i].Name))
{
Debug.LogWarning("MLAPI: Duplicate channel name: " + NetworkConfig.Channels[i].Name);
continue;
}
int channelId = cConfig.AddChannel(internalChannels[i].Type);
MessageManager.channels.Add(internalChannels[i].Name, channelId);
channelNames.Add(internalChannels[i].Name);
MessageManager.reverseChannels.Add(channelId, internalChannels[i].Name);
}
MessageManager.messageTypes.Add("MLAPI_CONNECTION_REQUEST", 0); MessageManager.messageTypes.Add("MLAPI_CONNECTION_REQUEST", 0);
MessageManager.messageTypes.Add("MLAPI_CONNECTION_APPROVED", 1); MessageManager.messageTypes.Add("MLAPI_CONNECTION_APPROVED", 1);
MessageManager.messageTypes.Add("MLAPI_ADD_OBJECT", 2); MessageManager.messageTypes.Add("MLAPI_ADD_OBJECT", 2);
@ -283,13 +298,15 @@ namespace MLAPI.MonoBehaviours.Core
MessageManager.messageTypes.Add("MLAPI_DESTROY_POOL_OBJECT", 7); MessageManager.messageTypes.Add("MLAPI_DESTROY_POOL_OBJECT", 7);
MessageManager.messageTypes.Add("MLAPI_CHANGE_OWNER", 8); MessageManager.messageTypes.Add("MLAPI_CHANGE_OWNER", 8);
MessageManager.messageTypes.Add("MLAPI_SYNC_VAR_UPDATE", 9); MessageManager.messageTypes.Add("MLAPI_SYNC_VAR_UPDATE", 9);
NetworkConfig.MessageTypes.Add("MLAPI_OnRecieveTransformFromClient");
NetworkConfig.MessageTypes.Add("MLAPI_OnRecieveTransformFromServer"); List<string> messageTypes = new List<string>(NetworkConfig.MessageTypes);
NetworkConfig.MessageTypes.Add("MLAPI_HandleAnimationMessage"); messageTypes.Add("MLAPI_OnRecieveTransformFromClient");
NetworkConfig.MessageTypes.Add("MLAPI_HandleAnimationParameterMessage"); messageTypes.Add("MLAPI_OnRecieveTransformFromServer");
NetworkConfig.MessageTypes.Add("MLAPI_HandleAnimationTriggerMessage"); messageTypes.Add("MLAPI_HandleAnimationMessage");
NetworkConfig.MessageTypes.Add("MLAPI_OnNavMeshStateUpdate"); messageTypes.Add("MLAPI_HandleAnimationParameterMessage");
NetworkConfig.MessageTypes.Add("MLAPI_OnNavMeshCorrectionUpdate"); messageTypes.Add("MLAPI_HandleAnimationTriggerMessage");
messageTypes.Add("MLAPI_OnNavMeshStateUpdate");
messageTypes.Add("MLAPI_OnNavMeshCorrectionUpdate");
if (NetworkConfig.EnableSceneSwitching) if (NetworkConfig.EnableSceneSwitching)
{ {
@ -334,7 +351,6 @@ namespace MLAPI.MonoBehaviours.Core
} }
} }
HashSet<string> channelNames = new HashSet<string>();
for (int i = 0; i < NetworkConfig.Channels.Count; i++) for (int i = 0; i < NetworkConfig.Channels.Count; i++)
{ {
if(channelNames.Contains(NetworkConfig.Channels[i].Name)) if(channelNames.Contains(NetworkConfig.Channels[i].Name))
@ -350,10 +366,10 @@ namespace MLAPI.MonoBehaviours.Core
//0-32 are reserved for MLAPI messages //0-32 are reserved for MLAPI messages
ushort messageId = 32; ushort messageId = 32;
for (ushort i = 0; i < NetworkConfig.MessageTypes.Count; i++) for (ushort i = 0; i < messageTypes.Count; i++)
{ {
MessageManager.messageTypes.Add(NetworkConfig.MessageTypes[i], messageId); MessageManager.messageTypes.Add(messageTypes[i], messageId);
MessageManager.reverseMessageTypes.Add(messageId, NetworkConfig.MessageTypes[i]); MessageManager.reverseMessageTypes.Add(messageId, messageTypes[i]);
messageId++; messageId++;
} }
return cConfig; return cConfig;