public void HostGame(Action <ResponseType> response) { // Set this player as the host Host = Game.Name; Hosting = true; DisconnectedWithError = false; // Initialize avatar manager and set the host's avatar avatars = new AvatarsManager(); avatars.AddPlayer(Host); Game.Manager.AddHost(avatars[Host]); net.StartAsHost(Game.Name, (ResponseType res) => { if (res == ResponseType.Success) { net.clientsUpdated = OnUpdateClients; net.onDisconnected = OnDisconnect; net.onUpdateDroppedClients = OnUpdateDropped; } else { OnDisconnect(); } response(res); }); }
protected void Packet_UloadAvatar(long connectionId, byte[] data) { ByteBuffer buffer = new ByteBuffer(); buffer.WriteBytes(data); //Skip packet id buffer.ReadLong(); //Read image bytes byte[] imageBytes = buffer.ReadBytes(buffer.Length()); // upload var urlPath = AvatarsManager.UploadAvatar(connectionId, imageBytes); // send to player OK message ServerSendPackets.Send_UpdateUserAvatar(connectionId, connectionId, urlPath); }
/// <summary> /// Called when a player joins or leaves the room that this player is hosting /// </summary> public void OnUpdatePlayers(NetMessage msg) { Dictionary <string, string> playerColors = AvatarsManager.ToDict(msg.str1); // Add any players that haven't already been registered foreach (var pc in playerColors) { string name = pc.Key; string color = pc.Value; if (players.ContainsKey(name)) { continue; } players.Add(name, new Player { Name = name, Avatar = color }); if (onAddPeer != null) { onAddPeer(name, color); } } // Remove old players that weren't included in the message Dictionary <string, Player> temp = new Dictionary <string, Player> (players); foreach (var p in temp) { string name = p.Key; if (!playerColors.ContainsKey(name)) { players.Remove(name); if (onRemovePeer != null) { onRemovePeer(name); } } } }
public void HostGame (Action<ResponseType> response) { // Set this player as the host Host = Game.Name; Hosting = true; DisconnectedWithError = false; // Initialize avatar manager and set the host's avatar avatars = new AvatarsManager (); avatars.AddPlayer (Host); Game.Manager.AddHost (avatars[Host]); net.StartAsHost (Game.Name, (ResponseType res) => { if (res == ResponseType.Success) { net.clientsUpdated = OnUpdateClients; net.onDisconnected = OnDisconnect; net.onUpdateDroppedClients = OnUpdateDropped; } else { OnDisconnect (); } response (res); }); }
/// <summary> /// Запуск проверки на сервере /// </summary> public override void OnStartServer() { Timing.RunCoroutine(CoroutineForCheckPlayers()); avatarsManager = GetComponent <AvatarsManager>(); notificationsManager = GetComponent <NotificationsManager>(); }
private void InitializePanelContent(string panelName, string previousPanelName) { switch (panelName) { case "MainMenuPanel": ClearBatchAiSquadsTestingMode(); break; case "OptionsPanel": OptionsUI.Instance.InitializeOptionsPanel(); break; case "StatsPanel": StatsUI.Instance.InitializeStatsPanel(); break; case "ModsPanel": ModsManager.InitializePanel(); break; case "CreditsPanel": CreditsUI.InitializePanel(); break; case "BrowseRoomsPanel": BrowseMatches(); break; case "SelectFactionPanel": Global.SquadBuilder.CurrentSquad.ClearAll(); Global.SquadBuilder.View.ShowFactionsImages(); break; case "SquadBuilderPanel": Global.SquadBuilder.View.ShowShipsAndUpgrades(); Global.SquadBuilder.View.UpdateNextButton(); break; case "SelectShipPanel": Global.SquadBuilder.View.ShowShipsFilteredByFaction(); break; case "SelectPilotPanel": Global.SquadBuilder.View.ShowPilotsFilteredByShipAndFaction(); break; case "ShipSlotsPanel": Global.SquadBuilder.View.ShowPilotWithSlots(); break; case "SelectUpgradePanel": Global.SquadBuilder.View.ShowUpgradesList(); break; case "BrowseSavedSquadsPanel": Global.SquadBuilder.View.BrowseSavedSquads(); break; case "SaveSquadronPanel": Global.SquadBuilder.View.PrepareSaveSquadronPanel(); break; case "AvatarsPanel": InitializePlayerCustomization(); break; case "EditionPanel": ShowActiveEdition(Options.Edition); break; case "ShipInfoPanel": Global.SquadBuilder.View.ShowShipInformation(); break; case "SkinsPanel": Global.SquadBuilder.View.ShowSkinsPanel(); break; case "ChosenObstaclesPanel": Global.SquadBuilder.View.ShowChosenObstaclesPanel(); break; case "BrowseObstaclesPanel": Global.SquadBuilder.View.ShowBrowseObstaclesPanel(); break; case "BrowsePopularSquadsPanel": if (previousPanelName == "SquadOptionsPanel") { PopularSquads.LastChosenFaction = "All"; } PopularSquads.LoadPopularSquads(); break; case "BrowsePopularSquadsVariantsPanel": PopularSquads.LoadPopularSquadsVariants(); break; case "BrowseAvatarsPanel": AvatarsManager.LoadAvatars(Faction.None); break; } }
public void SetFactionForAvatars(string factionChar) { AvatarsManager.LoadAvatars(factionChar); }