mirror of
https://github.com/misternebula/quantum-space-buddies.git
synced 2025-01-25 15:35:22 +00:00
fixed the generic issue
This commit is contained in:
parent
a3e3dff725
commit
a7a6b9b86d
@ -5,8 +5,6 @@ namespace QSB.Animation
|
||||
{
|
||||
public class AnimTriggerMessage : QSBMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.AnimTrigger;
|
||||
|
||||
public short TriggerId;
|
||||
public uint SenderId;
|
||||
public float Value;
|
||||
|
@ -62,7 +62,7 @@ namespace QSB.Animation
|
||||
{
|
||||
InitCommon(body);
|
||||
|
||||
_triggerHandler = new MessageHandler<AnimTriggerMessage>();
|
||||
_triggerHandler = new MessageHandler<AnimTriggerMessage>(MessageType.AnimTrigger);
|
||||
_triggerHandler.OnServerReceiveMessage += OnServerReceiveMessage;
|
||||
_triggerHandler.OnClientReceiveMessage += OnClientReceiveMessage;
|
||||
|
||||
|
@ -1,12 +1,9 @@
|
||||
using QSB.Messaging;
|
||||
using UnityEngine.Networking;
|
||||
using UnityEngine.Networking;
|
||||
|
||||
namespace QSB.Events
|
||||
{
|
||||
public class DeathMessage : PlayerMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.Death;
|
||||
|
||||
public DeathType DeathType { get; set; }
|
||||
|
||||
public override void Deserialize(NetworkReader reader)
|
||||
|
@ -2,7 +2,6 @@
|
||||
using System.Linq;
|
||||
using QSB.Messaging;
|
||||
using QSB.TransformSync;
|
||||
using QSB.Utility;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
|
||||
@ -18,7 +17,7 @@ namespace QSB.Events
|
||||
{
|
||||
LocalInstance = this;
|
||||
|
||||
_eventHandler = new MessageHandler<EventMessage>();
|
||||
_eventHandler = new MessageHandler<EventMessage>(MessageType.Event);
|
||||
_eventHandler.OnClientReceiveMessage += OnClientReceiveMessage;
|
||||
_eventHandler.OnServerReceiveMessage += OnServerReceiveMessage;
|
||||
}
|
||||
|
@ -1,6 +1,4 @@
|
||||
using QSB.Messaging;
|
||||
using QSB.Utility;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Runtime.Serialization.Formatters.Binary;
|
||||
@ -10,8 +8,6 @@ namespace QSB.Events
|
||||
{
|
||||
public class EventMessage : PlayerMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.Event;
|
||||
|
||||
public int EventType { get; set; }
|
||||
public object[] Data { get; set; }
|
||||
|
||||
|
@ -1,12 +1,9 @@
|
||||
using QSB.Messaging;
|
||||
using UnityEngine.Networking;
|
||||
using UnityEngine.Networking;
|
||||
|
||||
namespace QSB.Events
|
||||
{
|
||||
public class FullStateMessage : PlayerMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.FullState;
|
||||
|
||||
public string PlayerName { get; set; }
|
||||
public bool IsReady { get; set; }
|
||||
|
||||
|
@ -16,7 +16,7 @@ namespace QSB.Events
|
||||
{
|
||||
Instance = this;
|
||||
|
||||
_stateRequestHandler = new MessageHandler<StateRequestMessage>();
|
||||
_stateRequestHandler = new MessageHandler<StateRequestMessage>(MessageType.FullStateRequest);
|
||||
_stateRequestHandler.OnServerReceiveMessage += OnServerReceiveMessage;
|
||||
}
|
||||
|
||||
|
@ -12,7 +12,7 @@ namespace QSB.Events
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_messageHandler = new MessageHandler<FullStateMessage>();
|
||||
_messageHandler = new MessageHandler<FullStateMessage>(MessageType.FullState);
|
||||
_messageHandler.OnClientReceiveMessage += OnClientReceiveMessage;
|
||||
|
||||
LocalInstance = this;
|
||||
|
@ -1,14 +1,11 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using QSB.Messaging;
|
||||
using UnityEngine.Networking;
|
||||
|
||||
namespace QSB.Events
|
||||
{
|
||||
public class LeaveMessage : PlayerMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.Leave;
|
||||
|
||||
public uint[] ObjectIds { get; set; }
|
||||
|
||||
public override void Deserialize(NetworkReader reader)
|
||||
|
@ -1,7 +1,6 @@
|
||||
using System.Linq;
|
||||
using QSB.Messaging;
|
||||
using QSB.Utility;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
|
||||
namespace QSB.Events
|
||||
@ -15,7 +14,7 @@ namespace QSB.Events
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_leaveHandler = new MessageHandler<LeaveMessage>();
|
||||
_leaveHandler = new MessageHandler<LeaveMessage>(MessageType.Leave);
|
||||
_leaveHandler.OnClientReceiveMessage += OnClientReceiveMessage;
|
||||
}
|
||||
|
||||
@ -42,7 +41,7 @@ namespace QSB.Events
|
||||
|
||||
private void DestroyObject(uint objectId)
|
||||
{
|
||||
var component = GameObject.FindObjectsOfType<NetworkBehaviour>()
|
||||
var component = FindObjectsOfType<NetworkBehaviour>()
|
||||
.FirstOrDefault(x => x.netId.Value == objectId);
|
||||
if (component == null)
|
||||
{
|
||||
|
@ -1,9 +1,6 @@
|
||||
using QSB.Messaging;
|
||||
|
||||
namespace QSB.Events
|
||||
namespace QSB.Events
|
||||
{
|
||||
public class StateRequestMessage : PlayerMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.FullStateRequest;
|
||||
}
|
||||
}
|
||||
|
@ -9,8 +9,11 @@ namespace QSB.Messaging
|
||||
public event Action<T> OnClientReceiveMessage;
|
||||
public event Action<T> OnServerReceiveMessage;
|
||||
|
||||
public MessageHandler()
|
||||
private readonly MessageType _messageType;
|
||||
|
||||
public MessageHandler(MessageType messageType)
|
||||
{
|
||||
_messageType = messageType;
|
||||
if (QSBNetworkManager.IsReady)
|
||||
{
|
||||
Init();
|
||||
@ -23,9 +26,8 @@ namespace QSB.Messaging
|
||||
|
||||
private void Init()
|
||||
{
|
||||
var message = (T)Activator.CreateInstance(typeof(T));
|
||||
NetworkServer.RegisterHandler((short)message.MessageType, OnServerReceiveMessageHandler);
|
||||
NetworkManager.singleton.client.RegisterHandler((short)message.MessageType, OnClientReceiveMessageHandler);
|
||||
NetworkServer.RegisterHandler((short)_messageType, OnServerReceiveMessageHandler);
|
||||
NetworkManager.singleton.client.RegisterHandler((short)_messageType, OnClientReceiveMessageHandler);
|
||||
}
|
||||
|
||||
public void SendToAll(T message)
|
||||
@ -34,7 +36,7 @@ namespace QSB.Messaging
|
||||
{
|
||||
return;
|
||||
}
|
||||
NetworkServer.SendToAll((short)message.MessageType, message);
|
||||
NetworkServer.SendToAll((short)_messageType, message);
|
||||
}
|
||||
|
||||
public void SendToServer(T message)
|
||||
@ -43,7 +45,7 @@ namespace QSB.Messaging
|
||||
{
|
||||
return;
|
||||
}
|
||||
NetworkManager.singleton.client.Send((short)message.MessageType, message);
|
||||
NetworkManager.singleton.client.Send((short)_messageType, message);
|
||||
}
|
||||
|
||||
private void OnClientReceiveMessageHandler(NetworkMessage netMsg)
|
||||
|
@ -2,8 +2,7 @@
|
||||
|
||||
namespace QSB.Messaging
|
||||
{
|
||||
public abstract class QSBMessage : MessageBase
|
||||
public class QSBMessage : MessageBase
|
||||
{
|
||||
public abstract MessageType MessageType { get; }
|
||||
}
|
||||
}
|
||||
|
@ -75,7 +75,7 @@ namespace QSB.TimeSync
|
||||
_shipSpawnPoint.transform.rotation = shipTransform.rotation;
|
||||
}
|
||||
|
||||
_deathHandler = new MessageHandler<DeathMessage>();
|
||||
_deathHandler = new MessageHandler<DeathMessage>(MessageType.Death);
|
||||
_deathHandler.OnServerReceiveMessage += OnServerReceiveMessage;
|
||||
_deathHandler.OnClientReceiveMessage += OnClientReceiveMessage;
|
||||
}
|
||||
|
@ -5,8 +5,6 @@ namespace QSB.TimeSync
|
||||
{
|
||||
public class WakeUpMessage : QSBMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.WakeUp;
|
||||
|
||||
public float ServerTime { get; set; }
|
||||
public int LoopCount { get; set; }
|
||||
|
||||
|
@ -31,7 +31,7 @@ namespace QSB.TimeSync
|
||||
return;
|
||||
}
|
||||
|
||||
_wakeUpHandler = new MessageHandler<WakeUpMessage>();
|
||||
_wakeUpHandler = new MessageHandler<WakeUpMessage>(MessageType.WakeUp);
|
||||
_wakeUpHandler.OnClientReceiveMessage += OnClientReceiveMessage;
|
||||
|
||||
var sceneName = SceneManager.GetActiveScene().name;
|
||||
|
@ -5,8 +5,6 @@ namespace QSB.TransformSync
|
||||
{
|
||||
public class SectorMessage : QSBMessage
|
||||
{
|
||||
public override MessageType MessageType => MessageType.Sector;
|
||||
|
||||
public int SectorId;
|
||||
public uint SenderId;
|
||||
|
||||
|
@ -24,7 +24,7 @@ namespace QSB.TransformSync
|
||||
|
||||
private void Start()
|
||||
{
|
||||
_sectorHandler = new MessageHandler<SectorMessage>();
|
||||
_sectorHandler = new MessageHandler<SectorMessage>(MessageType.Sector);
|
||||
_sectorHandler.OnClientReceiveMessage += OnClientReceiveMessage;
|
||||
_sectorHandler.OnServerReceiveMessage += OnServerReceiveMessage;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user