SergClient

Esta clase puede ser instanciada o también puede ser padre de herencia para otras clases, esta clase es la encargada de conectarse con el servidor dentro de la red local.

Atributos

Accesibilidad

Nombre

Descripción

public

Esta variable almacena los parámetros necesarios para el arranque y correcto funcionamiento del cliente

readonly

Connected

Este atributo indica si el cliente se encuentra conectado al servidor

Funciones

ConnectToServer()

Esta función de manera automática intenta conectarse al servidor dentro de la red local

Ejemplo:

void Conect(){
    client.ConnectToServer();
}

TryConnect()

Esta función intentará conectarse con el servidor local, en caso de fallar retornará false

Ejemplo:

void Conect(){
    if(client(client.TryConnect()){
        Console.WriteLine("Se puede conectar");
    }else{
        Console.WriteLine("No hay ningun servidor local activo");
    }
}

Emit()

Esta función sirve para enviar datos al servidor y que este lo redistribuya.

Parámetro

Tipo

Descripción

name

string

Este parámetro corresponde al nombre de la acción a la cual debe llamar

data

string

Este parámetro corresponde a los datos personalizados que deberá envía al servidor

data

object

Este parámetro hace referencia a una instancia de datos la cual será serializada antes de enviar

Variantes de la función para su uso

// Solo envia una accion de manera remota
Emit(string name)
// Llama a la acción de manera remota con datos
Emit(string name, string data)
// Llama a la acción remota con un objeto serializado en JSON como dato
Emit(string name, object data)

Ejemplo:

void ChangePosition(){
    // pasar solo texto
    string dataPos = $"x:{transform.position.x}|y:{transform.position.y}|z:{transform.position.z}";
    server.Emit("change-position", dataPos);
    // pasamos el dato como un objeto de tipo PlayerPosition, el cual se serializará de manera interna
    PlayerPosition pos = transform.position;
    server.Emit("change-position", pos);
}

On()

Esta función alista la escucha de una acción por parte del servidor, por ejemplo, en caso de que algun jugador cambien la posición y envien la acción, esta función se encarga de recibirla.

Parámetro

Tipo

Descripción

name

string

Este parámetro corresponde al nombre de la acción que debe escuchar o recibir (debe ser idéntico al que se haya puesto en el Emit del emisor)

callback

Esta es una función delegada la cual recibe como parámetro un string.

protected void On(string name, SergIOCallback callback);

Ejemplo:

void PrepareListeners(){
    // Uso mediante Lambda
    server.On("change-position", (data) => {
        Console.WriteLine(data);
    });
    server.On("change-position", OnChangePosition);
}

void OnChangePosition(string data){
    Console.WriteLine(data);
}

Disconnect()

Esta función desconecta del servidor al jugador y recibe de manera no obligatoria un único parámetro

Tipo

Nombre

Default

Descripción

bool

isSenderLocal

false

Este parámetro indica si la función se está llamando desde la misma clase o desde otro lugar, si es falso no enviará un aviso al resto de conexiones que se está desconectando, en cambio si el valor es true, este enviará un evento de que el cliente se está desconectando.

Ejemplo:

void OnQuit(){
    client.Diconnect(true);
}

Last updated

Was this helpful?