private void Start() { myGameSettingsInfo = myGameSettingsInfoDefault; // Attempts to load the game settings from file, if no file exists, loads the default ones and creates a save file. try { myGameSettingsInfo = SaveHandler <GameSettingsInfo> .Load(SaveHandler <GameSettingsInfo> .SaveFileName.gameSettingsInfo); LoadGameSettings(myGameSettingsInfo); //OnGameSettingsChanged(this, myGameSettingsInfo); } catch (Exception e) { Debug.Log(e); Debug.Log("No game settings info file has been found, initializing and creating one now"); LoadGameSettings(myGameSettingsInfo); SaveInfo(); //OnGameSettingsChanged(this, myGameSettingsInfo); } m_VolumeSlider.onValueChanged.AddListener(i => VolumeChanged(i)); m_RightHandedSlider.onValueChanged.AddListener(i => RightHandedModeChanged(i)); m_JoystickSizeSlider.onValueChanged.AddListener(i => JoystickSizeChanged(i)); m_ResetButton.onClick.AddListener(() => ResetPlayerPrefs()); }
private static readonly string _imageFolderPath = "path/to/imageFolder"; // TODO: Enter the path to your Image Folder public static void Main(string[] args) { GameSettingsInfo result = Api.InitGame(_apiKey); string gameId = result.GameId; int roundsLeft = result.NumberOfRounds; Console.WriteLine($"Starting a new game with id: {gameId}"); Console.WriteLine($"The game has {roundsLeft} rounds and {result.ImagesPerRound} images per round"); while (roundsLeft > 0) { Console.WriteLine($"Starting new round, {roundsLeft} rounds left"); var solution = new Solution(); var zip = Api.GetImages(_apiKey); List <string> imageNames = SolutionHelper.SaveImagesToDisk(zip, _imageFolderPath); foreach (string name in imageNames) { var imagePath = _imageFolderPath + "/" + name; var imageSolution = ImageAnalyzer(imagePath); solution.Add(name, imageSolution); } ScoreResponse response = Api.ScoreSolution(_apiKey, solution.GetRequest()); SolutionHelper.PrintErrors(response); SolutionHelper.PrintScores(response); roundsLeft = response.RoundsLeft; } SolutionHelper.ClearImagesFromFolder(_imageFolderPath); }
private void ResetPlayerPrefs() { PlayerPrefs.DeleteAll(); Debug.Log("Reset PlayerPrefs! With Reset Button!"); myGameSettingsInfo = myGameSettingsInfoDefault; LoadGameSettings(myGameSettingsInfo); OnGameSettingsChanged(this, myGameSettingsInfo); gameObject.GetComponent <PopupMenuController>().CloseMenu(); }
private void LoadGameSettings(GameSettingsInfo gameSettingsInfo) { m_VolumeSlider.value = gameSettingsInfo.volume; m_JoystickSizeSlider.value = gameSettingsInfo.joystickSize; switch (gameSettingsInfo.rightHandedMode) { case false: m_RightHandedSlider.value = 0f; break; case true: m_RightHandedSlider.value = 1f; break; } }
/** * <summary>Closes any active game and starts a new one, returning an object with information about the game</summary> */ public static GameSettingsInfo InitGame(string apiKey) { var request = new RestRequest("/init", Method.GET); request.AddHeader("x-api-key", apiKey); var response = Client.Execute(request); if (response.StatusCode != System.Net.HttpStatusCode.OK) { Console.WriteLine("Fatal Error: could not start a new game"); PrintResponseError(response); Environment.Exit(1); } GameSettingsInfo result = JsonConvert.DeserializeObject <GameSettingsInfo>(response.Content); return(result); }
private void StartNewGame(GameSettingsInfo gameSettings) { playerInfo = new PlayerStatsInfo(gameSettings.NumberOfLives); //enemy.foreach().GetComponent<AiController>().SetDifficultyLevel(gameSettings.DifficultyLevel); GameEventCenter.scoreChange.Trigger(playerInfo); }
private void StartTrack(GameSettingsInfo gameSettings) { track.volume = gameSettings.MusicVolume / 100.0f; track.Play(); }
public void OnGameSettingsChanged(object sender, GameSettingsInfo gameSettingsInfo) { OnGameSettingsChangedEvent?.Invoke(this, gameSettingsInfo); }
private void StartNewGame(GameSettingsInfo gameSettings) { recordedScore = new RecordedScore(gameSettings.NumberOfGoals); aiPaddle.GetComponent <AiController>().SetDifficultyLevel(gameSettings.DifficultyLevel); GameEventCenter.scoreChange.Trigger(recordedScore); }
private void SetMasterVolume(GameSettingsInfo gameSettings) { audioSource.volume = gameSettings.SoundVolume / 100.0f; }