private async void OnTutorialButtonClick() { this.transform.Find("Container").gameObject.SetActive(false); SinglePlayerGameData data = await LobbyServerApi.CreateTutorialGame(); Main.StartTutorialGame(data.gameServerId, data.playerId, data.aiId); }
private async void OnCreateGameButtonClick() { string player1DeckId = deckIds[player1DeckDropdown.value]; string player2DeckId = deckIds[player2DeckDropdown.value]; await LobbyServerApi.CreateGame(player1DeckId, player2DeckId); UpdateGames(); }
private async void OnButtonClick(GameObject deckButton) { var value = deckButton.GetComponent <ButtonValue>().value; if (ChooseDeck.isSinglePlayer) { this.transform.Find("Decs").gameObject.SetActive(false); SinglePlayerGameData data = await LobbyServerApi.CreateSinglePlayerGame(value); Main.StartGame(data.gameServerId, data.playerId, data.aiId); } else { FindingOpponent.deckId = value; SceneManager.LoadScene("FindingOpponent"); } }
async void Start() { googleAnalytics.LogScreen("Finding opponent"); var backButton = this.transform.Find("BackButton").GetComponent <Button>(); backButton.onClick.AddListener(this.OnBackButtonClick); var response = await LobbyServerApi.FindOpponent(deckId); if (response.gameFound) { Main.StartGame(response.gameId, response.playerId, response.opponentId); } else { this.transform.Find("FindingOpponent").GetComponent <TextMeshProUGUI>().text = "Game not found"; } }
async void Start() { googleAnalytics.LogScreen("Choose deck"); DecksData decksData = await LobbyServerApi.GetPlayerDecks <DecksData>(); foreach (DeckData deck in decksData.Decks) { var deckButton = this.CreateButton(); deckButton.transform.Find("Text").GetComponent <Text>().text = deck.name; deckButton.GetComponent <ButtonValue>().value = deck._id; deckButton.GetComponent <Button>().onClick.AddListener(() => this.OnButtonClick(deckButton)); } var backButton = this.CreateButton(); backButton.transform.Find("Text").GetComponent <Text>().text = "Main menu"; backButton.GetComponent <Button>().onClick.AddListener(this.OnBackButtonClick); }
private async void UpdateDropdowns() { DecksData decksData = await LobbyServerApi.GetDecks <DecksData>(); List <Dropdown.OptionData> options = new List <Dropdown.OptionData>(); deckIds = new List <string>(); foreach (DeckData deck in decksData.Decks) { deckIds.Add(deck._id); Dropdown.OptionData option = new Dropdown.OptionData(); option.text = deck.name; options.Add(option); } player1DeckDropdown.ClearOptions(); player1DeckDropdown.AddOptions(options); player2DeckDropdown.ClearOptions(); player2DeckDropdown.AddOptions(options); }
private async void UpdateGames() { var lobbyGames = this.transform.Find("LobbyGames"); foreach (Transform child in lobbyGames) { GameObject.Destroy(child.gameObject); } GamesData gamesData = await LobbyServerApi.GetGames <GamesData>(); foreach (GameData game in gamesData.Games) { GameObject lobbyGame = Instantiate <GameObject>(this.lobbyGame, lobbyGames); lobbyGame.transform.SetParent(lobbyGames.transform); LobbyGame lobbyGameComponent = lobbyGame.GetComponent <LobbyGame>(); lobbyGameComponent.lobbyGameId = game._id; lobbyGameComponent.gameServerId = game.gameServerId; lobbyGameComponent.deckName1 = game.deckName1; lobbyGameComponent.deckName2 = game.deckName2; } }
private async void OnDeleteGameHandler(LobbyGame lobbyGame) { await LobbyServerApi.DeleteGame(lobbyGame.lobbyGameId); UpdateGames(); }