Example #1
0
    public BallSettings GetBallSettings()
    {
        BallSettings ballSettings = new BallSettings();

        ballSettings.Size = Random.Range(_settings.MinSize, _settings.MaxSize);

        ballSettings.Speed = (int)UtilFunc.MapValue(ballSettings.Size, _settings.MinSize, _settings.MaxSize,
                                                    _settings.MaxSpeed, _settings.MinSpeed) + _speedStep;

        ballSettings.StartPos = new Vector3(GetRandomXPos(ballSettings.Size), -GD.ScreenHeight / 2 - ballSettings.Size / 2);
        ballSettings.Color    = Random.ColorHSV();

        ballSettings.Points = (int)UtilFunc.MapValue(ballSettings.Speed,
                                                     _settings.MinSpeed + _speedStep, _settings.MaxSpeed + _speedStep,
                                                     _settings.MinPoints, _settings.MaxPoints + 1);

        return(ballSettings);
    }