private void SetupSocket_Minigames_3() { socket.On("started_minigame_3", data => { Debug.LogInfo($"Socket.IO: 'started_minigame_3', received data:\n{data?.ToString()}\n", "NETWORK"); var minigameData = (JObject)data; ActiveMinigame3 = new NetworkNeverHaveIEver(minigameData.Value <string>("gameGuid"), minigameData.Value <string>("ownerGuid")); startedMinigame3 = true; }); socket.On("voted_minigame_3", data => { Debug.LogInfo($"Socket.IO: 'voted_minigame_3', received data:\n{data?.ToString()}\n", "NETWORK"); var minigameData = (JObject)data; var redirect = minigameData.TryGetValue("redirect", out _); ActiveMinigame3.SetVote(minigameData.Value <string>("guid"), minigameData.Value <string>("vote")); if (redirect) { return; } if (ActiveMinigame3.Owner == PlayerData.GUID && ActiveMinigame3.IsQuestionDone) { socket.Emit("results_minigame_3", ""); Debug.LogInfo($"Socket.IO Emit: 'results_minigame_3', sent data: \"\"", "NETWORK"); showResultsMinigame3 = true; } else { newVoteMinigame3 = true; } }); socket.On("request_minigame_3", data => { Debug.LogInfo($"Socket.IO: 'request_minigame_3', received data:\n{data?.ToString()}\n", "NETWORK"); var minigameData = (JObject)data; var questionIndex = minigameData.Value <int>("question"); var question = Minigame3Element.GetQuestion(questionIndex); ActiveMinigame3.StartNewQuestion(question); newQuestionMinigame3 = true; }); socket.On("results_minigame_3", data => { Debug.LogInfo($"Socket.IO: 'results_minigame_3', received data:\n{data?.ToString()}\n", "NETWORK"); showResultsMinigame3 = true; }); socket.On("finished_minigame_3", data => { Debug.LogInfo($"Socket.IO: 'finished_minigame_3', received data:\n{data?.ToString()}\n", "NETWORK"); finishedMinigame3 = true; }); }
public override void Load() { Root.AddChild(new Image(0, 0, Globals.WIDTH, Globals.HEIGHT, new game.Sprite("data/sprites/locations/coffee_fellows/bar.jpg"))); Root.AddChild(new Button(Globals.WIDTH / 3f + 20, 40, 200, 40, "Start minigame", () => { NetworkManager.Instance.StartMinigame3(); })); Root.AddChild(chatInstance = new ChatElement(0, 0, Globals.WIDTH / 3f, Globals.HEIGHT)); Root.AddChild(jukeboxInstance = new JukeboxElement(0, 0, Globals.WIDTH, Globals.HEIGHT, "data/sprites/locations/coffee_fellows/jukebox.jpg", new [] { "Song1", "Song2", "Song3", "Song4", "Song5" })); Root.AddChild(new Button(916, 420, 255, 110, "Open jukebox", ButtonStyle.Transparent, () => { jukeboxInstance.Initialize(); })); Root.AddChild(minigame3Element = new Minigame3Element(730f, 314f, 1100f, 450f, LabelStyle.Default.Alter(textSizeNormal: 24f, textAlignmentNormal: FontLoader.CenterCenterAlignment, textColorNormal: Color.White), LabelStyle.Default.Alter(textColorNormal: Color.White), LabelStyle.Default.Alter(textSizeNormal: 12f, textColorNormal: Color.White, textAlignmentNormal: FontLoader.CenterTopAlignment), LabelStyle.Default.Alter(textAlignmentNormal: FontLoader.LeftCenterAlignment, textColorNormal: Color.White), LabelStyle.Default.Alter(textAlignmentNormal: FontLoader.CenterCenterAlignment, textColorNormal: Color.White), ButtonStyle.Transparent, ButtonStyle.Default.Alter(backgroundColorNormal: Color.FromArgb(255, 73, 73, 81), backgroundColorHover: Color.FromArgb(255, 73, 73, 81), backgroundColorPressed: Color.FromArgb(255, 73, 73, 81), borderSizeHover: 4, borderSizeNormal: 4, borderSizePressed: 4, borderColorNormal: Color.White, borderColorHover: Color.White, borderColorPressed: Color.White, textColorHover: Color.Transparent, textColorNormal: Color.Transparent, textColorPressed: Color.Transparent))); Root.AddChild(new Button(10, 10, Globals.WIDTH / 3f - 20f, 40, "Leave room", () => { SoundManager.Instance.StopPlaying(jukeboxInstance.CurrentlyPlaying); NetworkManager.Instance.LeaveRoom(); })); ChatElement.ActiveChat = chatInstance; JukeboxElement.ActiveJukebox = jukeboxInstance; Minigame3Element.ActiveMinigame = minigame3Element; IsLoaded = true; }