private void sendConnexionNotification(myGameObject p) { _scene.Broadcast("player_connected", s => { var writer = new BinaryWriter(s, Encoding.UTF8, true); writer.Write(p.id); writer.Write(p.color_red); writer.Write(p.color_blue); writer.Write(p.color_green); }, PacketPriority.MEDIUM_PRIORITY, PacketReliability.RELIABLE_SEQUENCED); }
public Player(myGameObject obj, long updateTime) { id = obj.id; name = obj.name; pos_x = obj.pos_x; pos_y = obj.pos_y; rotation = obj.rotation; color_red = obj.color_red; color_blue = obj.color_blue; color_green = obj.color_green; lastUpdate = updateTime; }
private Task onConnected(IScenePeerClient client) { myGameObject player = client.GetUserData <myGameObject>(); if (_players.Count < 100) { _scene.Broadcast("chat", player.name + " a rejoint le combat !"); _scene.GetComponent <ILogger>().Debug("server", "client connected with name : " + player.name); client.Send("get_id", s => { var writer = new BinaryWriter(s, Encoding.UTF8, true); writer.Write(client.Id); }, PacketPriority.MEDIUM_PRIORITY, PacketReliability.RELIABLE); player.id = client.Id; sendConnectedPlayersToNewPeer(client); sendConnexionNotification(player); _players.TryAdd(client.Id, new Player(player, _env.Clock)); } return(Task.FromResult(true)); }