diff --git a/project.hxp b/project.hxp index 2378f20ca..08d1e4815 100644 --- a/project.hxp +++ b/project.hxp @@ -180,7 +180,8 @@ class Project extends HXProject { /** * `-DFEATURE_NEWGROUNDS_DEBUG` - * If this flag is enabled, the game will enable the Newgrounds library's debug functions. + * If this flag is enabled, the game will enable Newgrounds.io's debug functions. + * This provides additional information in requests, as well as "faking" medal and leaderboard submissions. */ static final FEATURE_NEWGROUNDS_DEBUG:FeatureFlag = "FEATURE_NEWGROUNDS_DEBUG"; @@ -190,6 +191,13 @@ class Project extends HXProject { */ static final FEATURE_NEWGROUNDS_AUTOLOGIN:FeatureFlag = "FEATURE_NEWGROUNDS_AUTOLOGIN"; + /** + * `-DFEATURE_NEWGROUNDS_TESTING_MEDALS` + * If this flag is enabled, use the medal IDs from the debug test bench. + * If disabled, use the actual medal IDs. + */ + static final FEATURE_NEWGROUNDS_TESTING_MEDALS:FeatureFlag = "FEATURE_NEWGROUNDS_TESTING_MEDALS"; + /** * `-DFEATURE_FUNKVIS` * If this flag is enabled, the game will enable the Funkin Visualizer library. @@ -493,7 +501,8 @@ class Project extends HXProject { FEATURE_LOG_TRACE.apply(this, true); FEATURE_NEWGROUNDS.apply(this, true); - FEATURE_NEWGROUNDS_DEBUG.apply(this, FEATURE_NEWGROUNDS.isEnabled(this) && FEATURE_DEBUG_FUNCTIONS.isEnabled(this)); + FEATURE_NEWGROUNDS_DEBUG.apply(this, false); + FEATURE_NEWGROUNDS_TESTING_MEDALS.apply(this, FEATURE_NEWGROUNDS.isEnabled(this) && FEATURE_DEBUG_FUNCTIONS.isEnabled(this)); FEATURE_NEWGROUNDS_AUTOLOGIN.apply(this, FEATURE_NEWGROUNDS.isEnabled(this) && isWeb()); // Should default to true on workspace builds and false on release builds. diff --git a/source/funkin/InitState.hx b/source/funkin/InitState.hx index 32ec56c70..9c1743fe1 100644 --- a/source/funkin/InitState.hx +++ b/source/funkin/InitState.hx @@ -240,7 +240,7 @@ class InitState extends FlxState storyMode: true, title: "Cum Song Erect by Kawai Sprite", songId: "cum", - characterId: "bf", + characterId: "pico", difficultyId: "nightmare", isNewHighscore: true, scoreData: @@ -256,7 +256,7 @@ class InitState extends FlxState combo: 69, maxCombo: 69, totalNotesHit: 140, - totalNotes: 190 + totalNotes: 240 } // 2400 total notes = 7% = LOSS // 275 total notes = 69% = NICE diff --git a/source/funkin/api/discord/DiscordClient.hx b/source/funkin/api/discord/DiscordClient.hx index 71cbf28a1..b0cb3180a 100644 --- a/source/funkin/api/discord/DiscordClient.hx +++ b/source/funkin/api/discord/DiscordClient.hx @@ -2,8 +2,10 @@ package funkin.api.discord; #if FEATURE_DISCORD_RPC import hxdiscord_rpc.Discord; +import hxdiscord_rpc.Types.DiscordButton; import hxdiscord_rpc.Types.DiscordEventHandlers; import hxdiscord_rpc.Types.DiscordRichPresence; +import hxdiscord_rpc.Types.DiscordUser; import sys.thread.Thread; class DiscordClient diff --git a/source/funkin/api/newgrounds/Leaderboards.hx b/source/funkin/api/newgrounds/Leaderboards.hx index 4af7e1b49..33caee4c6 100644 --- a/source/funkin/api/newgrounds/Leaderboards.hx +++ b/source/funkin/api/newgrounds/Leaderboards.hx @@ -74,7 +74,7 @@ class Leaderboards public static function submitSongScore(songId:String, difficultyId:String, score:Int):Void { var tag = '${difficultyId}'; - Leaderboards.submitScore(Leaderboard.getLeaderboardBySong(songId), score, tag); + Leaderboards.submitScore(Leaderboard.getLeaderboardBySong(songId, difficultyId), score, tag); } } #end @@ -89,61 +89,113 @@ enum abstract Leaderboard(Int) // // STORY LEVELS // - var StoryWeek1 = #if FEATURE_NEWGROUNDS_DEBUG 14239 #else 9615 #end; - var StoryWeek2 = #if FEATURE_NEWGROUNDS_DEBUG 14240 #else 9616 #end; - var StoryWeek3 = #if FEATURE_NEWGROUNDS_DEBUG 14242 #else 9767 #end; - var StoryWeek4 = #if FEATURE_NEWGROUNDS_DEBUG 14241 #else 9866 #end; - var StoryWeek5 = #if FEATURE_NEWGROUNDS_DEBUG 14243 #else 9956 #end; - var StoryWeek6 = #if FEATURE_NEWGROUNDS_DEBUG 14244 #else 9957 #end; - var StoryWeek7 = #if FEATURE_NEWGROUNDS_DEBUG 14245 #else 1000000 #end; - var StoryWeekend1 = #if FEATURE_NEWGROUNDS_DEBUG 14237 #else 1000000 #end; + var StoryWeek1 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14239 #else 9615 #end; + var StoryWeek2 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14240 #else 9616 #end; + var StoryWeek3 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14242 #else 9767 #end; + var StoryWeek4 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14241 #else 9866 #end; + var StoryWeek5 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14243 #else 9956 #end; + var StoryWeek6 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14244 #else 9957 #end; + var StoryWeek7 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14245 #else 1000000 #end; + var StoryWeekend1 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14237 #else 1000000 #end; // // SONGS // // Tutorial - var Tutorial = #if FEATURE_NEWGROUNDS_DEBUG 14249 #else 1000000 #end; + var Tutorial = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14249 #else 1000000 #end; + var TutorialErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var TutorialPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Week 1 - var Bopeebo = #if FEATURE_NEWGROUNDS_DEBUG 14246 #else 9603 #end; - var Fresh = #if FEATURE_NEWGROUNDS_DEBUG 14247 #else 9602 #end; - var DadBattle = #if FEATURE_NEWGROUNDS_DEBUG 14248 #else 9605 #end; + var Bopeebo = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14246 #else 9603 #end; + var BopeeboErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var BopeeboPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Fresh = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14247 #else 9602 #end; + var FreshErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var FreshPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var DadBattle = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 14248 #else 9605 #end; + var DadBattleErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var DadBattlePicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Week 2 - var Spookeez = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9604 #end; - var South = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9606 #end; - var Monster = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; + var Spookeez = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9604 #end; + var SpookeezErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var SpookeezPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var South = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9606 #end; + var SouthErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var SouthPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Monster = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var MonsterErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var MonsterPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Week 3 - var Pico = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9766 #end; - var PhillyNice = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9769 #end; - var Blammed = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9768 #end; + var Pico = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9766 #end; + var PicoErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var PicoPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var PhillyNice = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9769 #end; + var PhillyNiceErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var PhillyNicePicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Blammed = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9768 #end; + var BlammedErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var BlammedPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Week 4 - var SatinPanties = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; - var High = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9867 #end; - var MILF = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9868 #end; + var SatinPanties = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var SatinPantiesErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var SatinPantiesPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var High = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9867 #end; + var HighErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var HighPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var MILF = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9868 #end; + var MILFErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var MILFPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Week 5 - var Cocoa = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; - var Eggnog = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; - var WinterHorrorland = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; + var Cocoa = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var CocoaErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var CocoaPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Eggnog = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var EggnogErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var EggnogPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var WinterHorrorland = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var WinterHorrorlandErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var WinterHorrorlandPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Week 6 - var Senpai = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9958 #end; - var Roses = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9959 #end; - var Thorns = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 9960 #end; + var Senpai = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9958 #end; + var SenpaiErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9958 #end; + var SenpaiPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Roses = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9959 #end; + var RosesErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9959 #end; + var RosesPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Thorns = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9960 #end; + var ThornsErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 9960 #end; + var ThornsPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Week 7 - var Ugh = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; - var Guns = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; - var Stress = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; + var Ugh = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var UghErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var UghPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Guns = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var GunsErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var GunsPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Stress = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var StressErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var StressPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Weekend 1 - var Darnell = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; - var LitUp = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; - var TwoHot = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; // Variable names can't start with a number! - var Blazin = #if FEATURE_NEWGROUNDS_DEBUG 1000000 #else 1000000 #end; + var Darnell = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var DarnellErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var DarnellBFMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var LitUp = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var LitUpErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var LitUpBFMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var TwoHot = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; // Variable names can't start with a number! + var TwoHotErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var TwoHotBFMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var Blazin = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var BlazinErect = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; + var BlazinBFMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 1000000 #else 1000000 #end; public function getId():Int { @@ -184,65 +236,205 @@ enum abstract Leaderboard(Int) /** * Get the leaderboard for a given level and difficulty. * @param levelId The ID for the story level. - * @param difficulty The current difficulty. + * @param difficulty The current difficulty, suffixed with the variation, like `easy-pico` or `nightmare`. * @return The Leaderboard ID for the given level and difficulty. */ - public static function getLeaderboardBySong(songId:String):Leaderboard + public static function getLeaderboardBySong(songId:String, difficulty:String):Leaderboard { - switch (songId) + var variation = Constants.DEFAULT_VARIATION; + var difficultyParts = difficulty.split('-'); + + if (difficultyParts.length >= 2) + { + variation = difficultyParts[difficultyParts.length - 1]; + } + else if (Constants.DEFAULT_DIFFICULTY_LIST_ERECT.contains(difficulty)) + { + variation = "erect"; + } + + switch (variation) { - case "tutorial": - return Tutorial; - case "bopeebo": - return Bopeebo; - case "fresh": - return Fresh; - case "dadbattle": - return DadBattle; - case "spookeez": - return Spookeez; - case "south": - return South; - case "monster": - return Monster; case "pico": - return Pico; - case "philly-nice": - return PhillyNice; - case "blammed": - return Blammed; - case "satin-panties": - return SatinPanties; - case "high": - return High; - case "milf": - return MILF; - case "cocoa": - return Cocoa; - case "eggnog": - return Eggnog; - case "winter-horrorland": - return WinterHorrorland; - case "senpai": - return Senpai; - case "roses": - return Roses; - case "thorns": - return Thorns; - case "ugh": - return Ugh; - case "guns": - return Guns; - case "stress": - return Stress; - case "darnell": - return Darnell; - case "litup": - return LitUp; - case "2hot": - return TwoHot; - case "blazin": - return Blazin; + switch (songId) + { + case "tutorial": + return TutorialPicoMix; + case "bopeebo": + return BopeeboPicoMix; + case "fresh": + return FreshPicoMix; + case "dadbattle": + return DadBattlePicoMix; + case "spookeez": + return SpookeezPicoMix; + case "south": + return SouthPicoMix; + case "monster": + return MonsterPicoMix; + case "pico": + return PicoPicoMix; + case "philly-nice": + return PhillyNicePicoMix; + case "blammed": + return BlammedPicoMix; + case "satin-panties": + return SatinPantiesPicoMix; + case "high": + return HighPicoMix; + case "milf": + return MILFPicoMix; + case "cocoa": + return CocoaPicoMix; + case "eggnog": + return EggnogPicoMix; + case "winter-horrorland": + return WinterHorrorlandPicoMix; + case "senpai": + return SenpaiPicoMix; + case "roses": + return RosesPicoMix; + case "thorns": + return ThornsPicoMix; + case "ugh": + return UghPicoMix; + case "guns": + return GunsPicoMix; + case "stress": + return StressPicoMix; + default: + return Unknown; + } + case "bf": + switch (songId) + { + case "darnell": + return DarnellBFMix; + case "litup": + return LitUpBFMix; + case "2hot": + return TwoHotBFMix; + case "blazin": + return BlazinBFMix; + default: + return Unknown; + } + case "erect": + switch (songId) + { + case "tutorial": + return TutorialErect; + case "bopeebo": + return BopeeboErect; + case "fresh": + return FreshErect; + case "dadbattle": + return DadBattleErect; + case "spookeez": + return SpookeezErect; + case "south": + return SouthErect; + case "monster": + return MonsterErect; + case "pico": + return PicoErect; + case "philly-nice": + return PhillyNiceErect; + case "blammed": + return BlammedErect; + case "satin-panties": + return SatinPantiesErect; + case "high": + return HighErect; + case "milf": + return MILFErect; + case "cocoa": + return CocoaErect; + case "eggnog": + return EggnogErect; + case "winter-horrorland": + return WinterHorrorlandErect; + case "senpai": + return SenpaiErect; + case "roses": + return RosesErect; + case "thorns": + return ThornsErect; + case "ugh": + return UghErect; + case "guns": + return GunsErect; + case "stress": + return StressErect; + case "darnell": + return DarnellErect; + case "litup": + return LitUpErect; + case "2hot": + return TwoHotErect; + case "blazin": + return BlazinErect; + default: + return Unknown; + } + case "default": + switch (songId) + { + case "tutorial": + return Tutorial; + case "bopeebo": + return Bopeebo; + case "fresh": + return Fresh; + case "dadbattle": + return DadBattle; + case "spookeez": + return Spookeez; + case "south": + return South; + case "monster": + return Monster; + case "pico": + return Pico; + case "philly-nice": + return PhillyNice; + case "blammed": + return Blammed; + case "satin-panties": + return SatinPanties; + case "high": + return High; + case "milf": + return MILF; + case "cocoa": + return Cocoa; + case "eggnog": + return Eggnog; + case "winter-horrorland": + return WinterHorrorland; + case "senpai": + return Senpai; + case "roses": + return Roses; + case "thorns": + return Thorns; + case "ugh": + return Ugh; + case "guns": + return Guns; + case "stress": + return Stress; + case "darnell": + return Darnell; + case "litup": + return LitUp; + case "2hot": + return TwoHot; + case "blazin": + return Blazin; + default: + return Unknown; + } default: return Unknown; } diff --git a/source/funkin/api/newgrounds/Medals.hx b/source/funkin/api/newgrounds/Medals.hx index 7cb9b23d7..f095b50a8 100644 --- a/source/funkin/api/newgrounds/Medals.hx +++ b/source/funkin/api/newgrounds/Medals.hx @@ -147,111 +147,111 @@ enum abstract Medal(Int) from Int to Int * I Said Funkin'! * Start the game for the first time. */ - var StartGame = #if FEATURE_NEWGROUNDS_DEBUG 80894 #else 60960 #end; + var StartGame = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80894 #else 60960 #end; /** * That's How You Do It! * Beat Tutoria l in Story Mode (on any difficulty). */ - var StoryTutorial = 80906; + var StoryTutorial = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80906 #else 1000000 #end; /** * More Like Daddy Queerest * Beat Week 1 in Story Mode (on any difficulty). */ - var StoryWeek1 = #if FEATURE_NEWGROUNDS_DEBUG 80899 #else 60961 #end; + var StoryWeek1 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80899 #else 60961 #end; /** * IT IS THE SPOOKY MONTH * Beat Week 2 in Story Mode (on any difficulty). */ - var StoryWeek2 = #if FEATURE_NEWGROUNDS_DEBUG 80900 #else 1000000 #end; + var StoryWeek2 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80900 #else 1000000 #end; /** * Zeboim Damn Ima Nut * Beat Week 3 in Story Mode (on any difficulty). */ - var StoryWeek3 = #if FEATURE_NEWGROUNDS_DEBUG 80901 #else 1000000 #end; + var StoryWeek3 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80901 #else 1000000 #end; /** * Mommy Must Murder * Beat Week 4 in Story Mode (on any difficulty). */ - var StoryWeek4 = #if FEATURE_NEWGROUNDS_DEBUG 80902 #else 1000000 #end; + var StoryWeek4 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80902 #else 1000000 #end; /** * FNF Corruption Mod (real) * Beat Week 5 in Story Mode (on any difficulty). */ - var StoryWeek5 = #if FEATURE_NEWGROUNDS_DEBUG 80903 #else 1000000 #end; + var StoryWeek5 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80903 #else 1000000 #end; /** * The Original .EXE * Beat Week 6 in Story Mode (on any difficulty). */ - var StoryWeek6 = #if FEATURE_NEWGROUNDS_DEBUG 80904 #else 1000000 #end; + var StoryWeek6 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80904 #else 1000000 #end; /** * I'm Gonna Beep-Beep a Garbage Truck Into Your Girlfriend's Face! * Beat Week 7 in Story Mode (on any difficulty). */ - var StoryWeek7 = #if FEATURE_NEWGROUNDS_DEBUG 80905 #else 1000000 #end; + var StoryWeek7 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80905 #else 1000000 #end; /** * Yo, Really Think So? * Beat Weekend 1 in Story Mode (on any difficulty). */ - var StoryWeekend1 = #if FEATURE_NEWGROUNDS_DEBUG 80907 #else 1000000 #end; + var StoryWeekend1 = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80907 #else 1000000 #end; /** * A Challenger Appears * Beat any Pico remix in Freeplay (on any difficulty). */ - var FreeplayPicoMix = #if FEATURE_NEWGROUNDS_DEBUG 80910 #else 1000000 #end; + var FreeplayPicoMix = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80910 #else 1000000 #end; /** * The Sex Update * Earn a Perfect rating on any song on Hard difficulty or higher. * NOTE: Should also be awarded for a Gold Perfect because otherwise that would be annoying. */ - var PerfectRatingHard = #if FEATURE_NEWGROUNDS_DEBUG 80908 #else 1000000 #end; + var PerfectRatingHard = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80908 #else 1000000 #end; /** * Get Ratio'd * Earn a Loss rating on any song (on any difficulty). */ - var LossRating = #if FEATURE_NEWGROUNDS_DEBUG 80915 #else 1000000 #end; + var LossRating = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80915 #else 1000000 #end; /** * You Should Drink More Water * Earn a Golden Perfect rating on any song on Hard difficulty or higher. */ - var GoldPerfectRatingHard = #if FEATURE_NEWGROUNDS_DEBUG 80909 #else 1000000 #end; + var GoldPerfectRatingHard = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80909 #else 1000000 #end; /** * Harder Than Hard * Beat any Erect remix in Freeplay on Erect or Nightmare difficulty. */ - var ErectDifficulty = #if FEATURE_NEWGROUNDS_DEBUG 80911 #else 1000000 #end; + var ErectDifficulty = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80911 #else 1000000 #end; /** * The Rap God * Earn a Gold Perfect rating on any song on Nightmare difficulty. */ - var GoldPerfectRatingNightmare = #if FEATURE_NEWGROUNDS_DEBUG 80912 #else 1000000 #end; + var GoldPerfectRatingNightmare = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80912 #else 1000000 #end; /** * Just Like The Game! * Get freaky on a Friday. * NOTE: You must beat at least one song on any difficulty. */ - var FridayNight = #if FEATURE_NEWGROUNDS_DEBUG 80913 #else 61034 #end; + var FridayNight = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80913 #else 61034 #end; /** * Nice * Earn a rating of EXACTLY 69% (good luck). */ - var Nice = 80914; + var Nice = #if FEATURE_NEWGROUNDS_TESTING_MEDALS 80914 #else 1000000 #end; public function getId():Int { diff --git a/source/funkin/util/Constants.hx b/source/funkin/util/Constants.hx index aa3f65aed..0915e553f 100644 --- a/source/funkin/util/Constants.hx +++ b/source/funkin/util/Constants.hx @@ -235,7 +235,7 @@ class Constants /** * Standardized variations for charts */ - public static final DEFAULT_VARIATION_LIST:Array = ['default', 'erect', 'pico']; + public static final DEFAULT_VARIATION_LIST:Array = ['default', 'erect', 'pico', 'bf']; /** * The default intensity multiplier for camera bops.