예제 #1
0
 protected override IGenerator[] GetNewGenerators()
 {
     return(new IGenerator[]
     {
         new SortedRecordSettingGenerator <int>("Local High Scores", new SortedIntRecords(MaxListSize, true))
         {
             PropertyName = HighScoresPropertyName,
             TooltipDocumentation = new string[]
             {
                 "List of highest scores"
             },
         },
         new PropertyGenerator("TopScore", typeof(IRecord <int>))
         {
             GetterCode = GeneratorDecorator.CreatePropertyWriter(HighScoresPropertyName, "TopRecord"),
             TooltipDocumentation = new string[]
             {
                 "Gets the top score from <seealso cref=\"" + HighScoresPropertyName + "\"/>"
             },
         },
         new StoredStringGenerator("Last Entered Name", string.Empty)
         {
             IsValueRetainedOnClear = true,
             TooltipDocumentation = new string[]
             {
                 "The name the player entered last time they got a new high score.",
                 "Used as a convenience feature for players to enter their name",
                 "more quickly on repeated playthroughs."
             },
         }
     });
 }
예제 #2
0
 protected override IGenerator[] GetNewGenerators()
 {
     // Return an array
     return(new IGenerator[]
     {
         new StoredIntGenerator("Number of Unlocked Levels", DefaultNumLevelsUnlocked)
         {
             Processor = MinCap <int> .Get(DefaultNumLevelsUnlocked),
             PropertyName = "NumLevelsUnlocked",
             TooltipDocumentation = new string[]
             {
                 "The number of levels unlocked."
             },
         },
         new PropertyGenerator(DefaultNumLevelsUnlockedName, typeof(int))
         {
             GetterCode = GeneratorDecorator.CreatePropertyWriter(typeof(AddLocalAnalytics).Name, DefaultNumLevelsUnlockedName),
             TooltipDocumentation = new string[]
             {
                 "Default number of levels unlocked."
             },
         },
         new StoredIntGenerator("Number of Times App Open", 0)
         {
             IsValueRetainedOnClear = true,
             Processor = MinCap <int> .Get(0),
             PropertyName = "NumberOfTimesAppOpened",
             TooltipDocumentation = new string[]
             {
                 "The number of times the player opened this game."
             },
         },
         new StoredPlayTimeGenerator("Total Play Time", "TotalPlayTime")
         {
             TooltipDocumentation = new string[]
             {
                 "How long the player played this game."
             },
         },
     });
 }
예제 #3
0
 protected override IGenerator[] GetNewGenerators()
 {
     return(new IGenerator[]
     {
         /////////////////////////////////////////////////////
         // Keyboard Stuff
         /////////////////////////////////////////////////////
         new StoredBoolGenerator("Split Keyboard Axis", false)
         {
             PropertyName = "IsKeyboardAxisSensitivitySplit",
             IsValueRetainedOnClear = true,
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, splits the keyboard's X- and Y-axis' sensitivity"
             }
         },
         new StoredFloatGenerator("Keyboard X-Axis Sensitivity", DefaultSensitivity)
         {
             IsValueRetainedOnClear = true,
             Processor = Clamp <float> .Get(0, 1),
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "The keyboard's X-axis' sensitivity.",
                 "A value between 0 and 1."
             }
         },
         new StoredFloatGenerator("Keyboard Y-Axis Sensitivity", DefaultSensitivity)
         {
             IsValueRetainedOnClear = true,
             Processor = Clamp <float> .Get(0, 1),
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "The keyboard's Y-axis' sensitivity.",
                 "A value between 0 and 1.",
                 "This value isn't used if <see cref=\"IsKeyboardAxisSensitivitySplit\"/> is false."
             }
         },
         new StoredBoolGenerator("Keyboard X-Axis is Inverted", false)
         {
             IsValueRetainedOnClear = true,
             PropertyName = "IsKeyboardXAxisInverted",
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, inverts the keyboard's X-axis."
             }
         },
         new StoredBoolGenerator("Keyboard Y-Axis is Inverted", false)
         {
             IsValueRetainedOnClear = true,
             PropertyName = "IsKeyboardYAxisInverted",
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, inverts the keyboard's Y-axis."
             }
         },
         /////////////////////////////////////////////////////
         // Mouse Stuff
         /////////////////////////////////////////////////////
         new StoredBoolGenerator("Split Mouse Axis", false)
         {
             IsValueRetainedOnClear = true,
             PropertyName = "IsMouseAxisSensitivitySplit",
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, splits the mouse's X- and Y-axis' sensitivity"
             }
         },
         new StoredFloatGenerator("Mouse X-Axis Sensitivity", DefaultSensitivity)
         {
             IsValueRetainedOnClear = true,
             Processor = Clamp <float> .Get(0, 1),
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "The mouse's X-axis' sensitivity.",
                 "A value between 0 and 1."
             }
         },
         new StoredFloatGenerator("Mouse Y-Axis Sensitivity", DefaultSensitivity)
         {
             IsValueRetainedOnClear = true,
             Processor = Clamp <float> .Get(0, 1),
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "The keyboard's Y-axis' sensitivity.",
                 "A value between 0 and 1.",
                 "This value isn't used if <see cref=\"IsKeyboardAxisSensitivitySplit\"/> is false."
             }
         },
         new StoredBoolGenerator("Mouse X-Axis is Inverted", false)
         {
             IsValueRetainedOnClear = true,
             PropertyName = "IsMouseXAxisInverted",
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, inverts the keyboard's X-axis."
             }
         },
         new StoredBoolGenerator("Mouse Y-Axis is Inverted", false)
         {
             IsValueRetainedOnClear = true,
             PropertyName = "IsMouseYAxisInverted",
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, inverts the keyboard's Y-axis."
             }
         },
         SmoothCameraFactorOptionProperty,
         IsSmoothCameraEnabledProperty,
         new PropertyGenerator(CameraSmoothFactorPropertyName, typeof(float))
         {
             GetterCode = GeneratorDecorator.CreatePropertyWriter(ClassName, CameraSmoothFactorPropertyName),
             TooltipDocumentation = new string[]
             {
                 "The amount to apply the camera smoothing. Zero indicates instant-snapping to mouse."
             },
         },
         /////////////////////////////////////////////////////
         // Scroll Wheel Stuff
         /////////////////////////////////////////////////////
         new StoredFloatGenerator("Scroll Wheel Sensitivity", DefaultSensitivity)
         {
             IsValueRetainedOnClear = true,
             Processor = Clamp <float> .Get(0, 1),
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "The mouse' scroll wheel's sensitivity.",
                 "A value between 0 and 1."
             }
         },
         new StoredBoolGenerator("Scroll Wheel is Inverted", false)
         {
             IsValueRetainedOnClear = true,
             PropertyName = "IsScrollWheelInverted",
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, inverts the mouse' scroll wheel."
             }
         },
         /////////////////////////////////////////////////////
         // Graphics Stuff
         /////////////////////////////////////////////////////
         IsCameraShakesEnabledProperty,
         IsHeadBobbingOptionEnabledProperty,
         new PropertyGenerator(IsHeadingBobbingEnabledPropertyName, typeof(bool))
         {
             GetterCode = GeneratorDecorator.CreatePropertyWriter(ClassName, IsHeadingBobbingEnabledPropertyName),
             TooltipDocumentation = new string[]
             {
                 "If true, enables head bobbing camera effect."
             },
         },
         new StoredBoolGenerator("Is Screen Flashes Enabled", true)
         {
             IsValueRetainedOnClear = true,
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, enables flashing graphic effects."
             }
         },
         new StoredBoolGenerator("Is Motion Blurs Enabled", true)
         {
             IsValueRetainedOnClear = true,
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, enables motion blur graphic effects."
             }
         },
         new StoredBoolGenerator("Is Bloom Effect Enabled", true)
         {
             IsValueRetainedOnClear = true,
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, enables bloom graphic effects."
             }
         },
         /////////////////////////////////////////////////////
         // Accessibility Stuff
         /////////////////////////////////////////////////////
         new StoredFloatGenerator("Text Size Multiplier", DefaultScale)
         {
             IsValueRetainedOnClear = true,
             Processor = Clamp <float> .Get(0.5f, 1.5f),
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "Multiplier on how much the font size of a text should change."
             }
         },
         new StoredBoolGenerator("Is Invincibility Mode Enabled", false)
         {
             IsValueRetainedOnClear = true,
             SetterScope = AccessModifier.Internal,
             TooltipDocumentation = new string[]
             {
                 "If true, enables invincibility mode; this accessibility feature prevents the player's health from decreasing!"
             }
         },
         CustomTimeScaleOptionProperty,
         IsCustomTimeScaleEnabledProperty,
         new PropertyGenerator(CustomTimeScalePropertyName, typeof(float))
         {
             GetterCode = GeneratorDecorator.CreatePropertyWriter(ClassName, CustomTimeScalePropertyName),
             TooltipDocumentation = new string[]
             {
                 "The default global time scale for the game."
             },
         },
     });
 }