Creating Additional Networked Class

circle-exclamation

Class Functions

  • Init() - [OPTIONAL] class initialization.

  • Update() - [OPTIONAL] called every frame.

Local Properties

  • netEvent - return NetworkedEvent class.

Local Functions

  • SendToEveryone(string FunctionName, params object[] arguments) - send command to every player to call function with arguments.

  • SendToClient(string FunctionName, NetworkConnection connection, params object[] arguments) - send command to player with connection to call function with arguments.

  • SendToServer(string FunctionName, params object[] arguments) - send command to server to call function with arguments.

  • Invoke(Function, float seconds) - same logic as UnityEngine.Object.Invoke, call function after time.

Example

using UnityEngine;

namespace Plugin.Additional
{
    public class TestCommunication : Akequ.Base.Room
    {
        public override void Init()
        {
            if (netEvent.isClient)
            {
                SendToServer("GetFromClient", "Test");
            }
        }
        
        public void GetFromClient(string someData, Mirror.NetworkConnectionToClient conn)
        {
            Debug.Log($"Got From Client: {someData}");
            SendToClient("GetFromServer", conn, "Test", 35);
        }
        
        public void GetFromServer(string data, int secData)
        {
            Debug.Log($"Got From Server: {data}, {secData}");
        }
    }
}

Example Solution can be downloaded here: Link to archivearrow-up-right

Testing

Now we can compile this plugin and move library to server plugins folder according to Folder Structure Now we can connect to server and see our message:

Last updated