mirror of
				https://github.com/DerTyp7/defrain-shooter-unity.git
				synced 2025-10-31 05:27:07 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			116 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System;
 | |
| using UnityEngine;
 | |
| 
 | |
| namespace Mirror
 | |
| {
 | |
|     public struct ReadyMessage : NetworkMessage {}
 | |
| 
 | |
|     public struct NotReadyMessage : NetworkMessage {}
 | |
| 
 | |
|     public struct AddPlayerMessage : NetworkMessage {}
 | |
| 
 | |
|     public struct SceneMessage : NetworkMessage
 | |
|     {
 | |
|         public string sceneName;
 | |
|         // Normal = 0, LoadAdditive = 1, UnloadAdditive = 2
 | |
|         public SceneOperation sceneOperation;
 | |
|         public bool customHandling;
 | |
|     }
 | |
| 
 | |
|     public enum SceneOperation : byte
 | |
|     {
 | |
|         Normal,
 | |
|         LoadAdditive,
 | |
|         UnloadAdditive
 | |
|     }
 | |
| 
 | |
|     public struct CommandMessage : NetworkMessage
 | |
|     {
 | |
|         public uint netId;
 | |
|         public byte componentIndex;
 | |
|         public int functionHash;
 | |
|         // the parameters for the Cmd function
 | |
|         // -> ArraySegment to avoid unnecessary allocations
 | |
|         public ArraySegment<byte> payload;
 | |
|     }
 | |
| 
 | |
|     public struct RpcMessage : NetworkMessage
 | |
|     {
 | |
|         public uint netId;
 | |
|         public byte componentIndex;
 | |
|         public int functionHash;
 | |
|         // the parameters for the Cmd function
 | |
|         // -> ArraySegment to avoid unnecessary allocations
 | |
|         public ArraySegment<byte> payload;
 | |
|     }
 | |
| 
 | |
|     public struct SpawnMessage : NetworkMessage
 | |
|     {
 | |
|         // netId of new or existing object
 | |
|         public uint netId;
 | |
|         public bool isLocalPlayer;
 | |
|         // Sets hasAuthority on the spawned object
 | |
|         public bool isOwner;
 | |
|         public ulong sceneId;
 | |
|         // If sceneId != 0 then it is used instead of assetId
 | |
|         public Guid assetId;
 | |
|         // Local position
 | |
|         public Vector3 position;
 | |
|         // Local rotation
 | |
|         public Quaternion rotation;
 | |
|         // Local scale
 | |
|         public Vector3 scale;
 | |
|         // serialized component data
 | |
|         // ArraySegment to avoid unnecessary allocations
 | |
|         public ArraySegment<byte> payload;
 | |
|     }
 | |
| 
 | |
|     public struct ChangeOwnerMessage : NetworkMessage
 | |
|     {
 | |
|         public uint netId;
 | |
|         public bool isOwner;
 | |
|     }
 | |
| 
 | |
|     public struct ObjectSpawnStartedMessage : NetworkMessage {}
 | |
| 
 | |
|     public struct ObjectSpawnFinishedMessage : NetworkMessage {}
 | |
| 
 | |
|     public struct ObjectDestroyMessage : NetworkMessage
 | |
|     {
 | |
|         public uint netId;
 | |
|     }
 | |
| 
 | |
|     public struct ObjectHideMessage : NetworkMessage
 | |
|     {
 | |
|         public uint netId;
 | |
|     }
 | |
| 
 | |
|     public struct EntityStateMessage : NetworkMessage
 | |
|     {
 | |
|         public uint netId;
 | |
|         // the serialized component data
 | |
|         // -> ArraySegment to avoid unnecessary allocations
 | |
|         public ArraySegment<byte> payload;
 | |
|     }
 | |
| 
 | |
|     // A client sends this message to the server
 | |
|     // to calculate RTT and synchronize time
 | |
|     public struct NetworkPingMessage : NetworkMessage
 | |
|     {
 | |
|         public double clientTime;
 | |
| 
 | |
|         public NetworkPingMessage(double value)
 | |
|         {
 | |
|             clientTime = value;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     // The server responds with this message
 | |
|     // The client can use this to calculate RTT and sync time
 | |
|     public struct NetworkPongMessage : NetworkMessage
 | |
|     {
 | |
|         public double clientTime;
 | |
|         public double serverTime;
 | |
|     }
 | |
| }
 | 
