60 lines
2.0 KiB
C#
60 lines
2.0 KiB
C#
using System;
|
|
using System.Threading.Tasks;
|
|
using Mistox;
|
|
using Mistox.Client;
|
|
|
|
class clientExample {
|
|
|
|
public MistoxClient? clientObject;
|
|
|
|
void onServerConnected() {
|
|
Console.WriteLine("Connected to server sucessfully");
|
|
}
|
|
|
|
void onClientConnected(mUDPClient user) {
|
|
Console.WriteLine("User connected to server with username: " + user.UserName);
|
|
}
|
|
|
|
void onClientJoined(mUDPClient user) {
|
|
Console.WriteLine("User is now in range of you and UDP connections started with user : " + user.UserName);
|
|
}
|
|
|
|
void onReceive(mUDPClient? user, dynamic data) {
|
|
switch (data){
|
|
case MessagePacket packet:
|
|
if (user == null) {
|
|
Console.WriteLine($"MSG From [Serverx]: {packet.Data}");
|
|
} else {
|
|
Console.WriteLine($"MSG From [{user.UserName}]: {packet.Data}");
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
void onClientLeft(mUDPClient user) {
|
|
Console.WriteLine("User is no longer in range of you and UDP connections ended with user : " + user.UserName);
|
|
}
|
|
|
|
void onClientDisconnected(mUDPClient user) {
|
|
Console.WriteLine("User disconnected from server with username: " + user.UserName);
|
|
}
|
|
|
|
void onServerDisconnected() {
|
|
Console.WriteLine("Disconnected from server");
|
|
}
|
|
|
|
public async Task StartClient(string userName, string host, int port, string password) {
|
|
clientObject = GameServer.newClient(userName, host, port, password);
|
|
if (clientObject == null) return;
|
|
clientObject.onServerConnected += onServerConnected;
|
|
clientObject.onUserConnected += onClientConnected;
|
|
clientObject.onUserJoined += onClientJoined;
|
|
clientObject.onDataReceived += onReceive;
|
|
clientObject.onUserLeft += onClientLeft;
|
|
clientObject.onUserDisconnected += onClientDisconnected;
|
|
clientObject.onServerDisconnected += onServerDisconnected;
|
|
}
|
|
|
|
} |