mirror of
				https://github.com/DerTyp7/defrain-shooter-unity.git
				synced 2025-10-31 05:27:07 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			86 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System;
 | |
| using UnityEngine;
 | |
| 
 | |
| namespace Mirror
 | |
| {
 | |
|     /// <summary>
 | |
|     /// SyncVars are used to synchronize a variable from the server to all clients automatically.
 | |
|     /// <para>Value must be changed on server, not directly by clients.  Hook parameter allows you to define a client-side method to be invoked when the client gets an update from the server.</para>
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Field)]
 | |
|     public class SyncVarAttribute : PropertyAttribute
 | |
|     {
 | |
|         public string hook;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// Call this from a client to run this function on the server.
 | |
|     /// <para>Make sure to validate input etc. It's not possible to call this from a server.</para>
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Method)]
 | |
|     public class CommandAttribute : Attribute
 | |
|     {
 | |
|         public int channel = Channels.Reliable;
 | |
|         public bool requiresAuthority = true;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// The server uses a Remote Procedure Call (RPC) to run this function on clients.
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Method)]
 | |
|     public class ClientRpcAttribute : Attribute
 | |
|     {
 | |
|         public int channel = Channels.Reliable;
 | |
|         public bool includeOwner = true;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// The server uses a Remote Procedure Call (RPC) to run this function on a specific client.
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Method)]
 | |
|     public class TargetRpcAttribute : Attribute
 | |
|     {
 | |
|         public int channel = Channels.Reliable;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// Prevents clients from running this method.
 | |
|     /// <para>Prints a warning if a client tries to execute this method.</para>
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Method)]
 | |
|     public class ServerAttribute : Attribute {}
 | |
| 
 | |
|     /// <summary>
 | |
|     /// Prevents clients from running this method.
 | |
|     /// <para>No warning is thrown.</para>
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Method)]
 | |
|     public class ServerCallbackAttribute : Attribute {}
 | |
| 
 | |
|     /// <summary>
 | |
|     /// Prevents the server from running this method.
 | |
|     /// <para>Prints a warning if the server tries to execute this method.</para>
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Method)]
 | |
|     public class ClientAttribute : Attribute {}
 | |
| 
 | |
|     /// <summary>
 | |
|     /// Prevents the server from running this method.
 | |
|     /// <para>No warning is printed.</para>
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Method)]
 | |
|     public class ClientCallbackAttribute : Attribute {}
 | |
| 
 | |
|     /// <summary>
 | |
|     /// Converts a string property into a Scene property in the inspector
 | |
|     /// </summary>
 | |
|     public class SceneAttribute : PropertyAttribute {}
 | |
| 
 | |
|     /// <summary>
 | |
|     /// Used to show private SyncList in the inspector,
 | |
|     /// <para> Use instead of SerializeField for non Serializable types </para>
 | |
|     /// </summary>
 | |
|     [AttributeUsage(AttributeTargets.Field)]
 | |
|     public class ShowInInspectorAttribute : Attribute {}
 | |
| }
 | 
