From 98ec739b5324c14980fce5db2d66098b142eba3b Mon Sep 17 00:00:00 2001 From: Joalor64 Date: Tue, 4 Jun 2024 12:28:23 -0400 Subject: [PATCH] uh --- TODO | 1 + assets/images/alphabet.xml | 2114 ++++++++++++++--------------- assets/images/mainSide.png | Bin 0 -> 50973 bytes source/meta/state/CreditsState.hx | 17 +- source/meta/state/PlayState.hx | 228 ++-- 5 files changed, 1168 insertions(+), 1192 deletions(-) create mode 100644 assets/images/mainSide.png diff --git a/TODO b/TODO index 60f6764f..3f0d67aa 100644 --- a/TODO +++ b/TODO @@ -3,6 +3,7 @@ [HIGH PRIORITY] - Localization Support +- Fix the goddamn playstate crash - Backport stuff from FNF 0.3.X [LOW PRIORITY] diff --git a/assets/images/alphabet.xml b/assets/images/alphabet.xml index 102bda13..39264c49 100644 --- a/assets/images/alphabet.xml +++ b/assets/images/alphabet.xml @@ -2,1060 +2,1060 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/images/mainSide.png b/assets/images/mainSide.png new file mode 100644 index 0000000000000000000000000000000000000000..e950da2b041176affc3e87d03c7f95c21d0a9b32 GIT binary patch literal 50973 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�a1Wq~TZ($ZW2K%u*27^K@<6n2b*I$gB#M)oRsi`%c zRX7uz)*nqoHR)6_VWb8o;DNkp*3+%ojR}6WPx2PbvI7o2$`^*1t&d@s3!)WUUFeQz z_!Gl8r}rU)nAzPg44vqp)~HY0exj$ZeJI)Xwbotc_4xR=f`Xo(+1rQGt-P}+&VB2v zDTHV~H-5AGP^!h?{yR*%=tQSgUC{-N&uRSeo}*l(k+-jwPOe9is)T5|1`K4>q0qUh z54TDa%7D{yns8}~YcNqt2%>A+f1sitrQqC;V^(hHY=h zGRHDn`2ogT3l4v-ru}28&uyPdVyIWdg~Nw?_P3Z2Y_zt+5AXAIkUBD>rUO8 zS)+g8^s4MC0)hG7;4YH99xYD z9#!Au&HMLvF_vO9VW-QMI4kDu-s?OqG;cQ~MT3EPmGyj}PT&%w2u-IyCIiRQPe}qa zL0!o>L#UQnO!F&!g(V(*S?*)12H`Nvw%!D?I%u-@+sJC|Sh|HhwlDzq{g!V5T$nw$gt5CjZ6IeA#nWmaIuU}{5%;mLr)3-TfTpu>!cl;a2 NK;LL~;;fas{||j3DZc;! literal 0 HcmV?d00001 diff --git a/source/meta/state/CreditsState.hx b/source/meta/state/CreditsState.hx index b8f8d51a..0c0b6f09 100644 --- a/source/meta/state/CreditsState.hx +++ b/source/meta/state/CreditsState.hx @@ -14,6 +14,7 @@ class CreditsState extends MusicBeatState private var creditsStuff:Array> = []; var bg:FlxSprite; + var mainSide:FlxSprite; var descText:FlxText; var intendedColor:FlxColor; var colorTween:FlxTween; @@ -42,6 +43,17 @@ class CreditsState extends MusicBeatState add(bg); bg.screenCenter(); + mainSide = new FlxSprite(0, 0).loadGraphic(Paths.image('mainSide')); + mainSide.scrollFactor.x = 0; + mainSide.scrollFactor.y = 0; + mainSide.setGraphicSize(Std.int(mainSide.width * 0.75)); + mainSide.updateHitbox(); + mainSide.screenCenter(); + mainSide.antialiasing = ClientPrefs.globalAntialiasing; + mainSide.x = -500; + mainSide.y = -90; + add(mainSide); + grpOptions = new FlxTypedGroup(); add(grpOptions); @@ -102,10 +114,11 @@ class CreditsState extends MusicBeatState for (i in 0...creditsStuff.length) { var isSelectable:Bool = !(creditsStuff[i].length <= 1); - var optionText:Alphabet = new Alphabet(90, 320, creditsStuff[i][0], !isSelectable); + var optionText:Alphabet = new Alphabet(0, 320, creditsStuff[i][0], !isSelectable); optionText.isMenuItem = true; optionText.screenCenter(X); optionText.snapToPosition(); + FlxTween.tween(optionText, {x: 90}, 0.9, {ease: FlxEase.quartInOut}); if (isSelectable) optionText.x -= 70; grpOptions.add(optionText); @@ -129,6 +142,8 @@ class CreditsState extends MusicBeatState } } + FlxTween.tween(mainSide, {x: -80}, 0.9, {ease: FlxEase.quartInOut}); + descBox = new AttachedSprite(); descBox.makeGraphic(1, 1, FlxColor.BLACK); descBox.xAdd = -10; diff --git a/source/meta/state/PlayState.hx b/source/meta/state/PlayState.hx index c1670252..d6801751 100644 --- a/source/meta/state/PlayState.hx +++ b/source/meta/state/PlayState.hx @@ -60,59 +60,7 @@ class PlayState extends MusicBeatState { public static var STRUM_X = 48.5; public static var STRUM_X_MIDDLESCROLL = -278; - - public static var ratingStuff:Array = [ - ['F-', 0.2], - ['F', 0.5], - ['D', 0.6], - ['C', 0.7], - ['B', 0.8], - ['A-', 0.89], - ['A', 0.90], - ['A+', 0.93], - ['S-', 0.96], - ['S', 0.99], - ['S+', 0.997], - ['SS-', 0.998], - ['SS', 0.999], - ['SS+', 0.9995], - ['X-', 0.9997], - ['X', 0.9998], - ['X+', 0.999935], - ['P', 1.0] - ]; - - public static var psychRatings:Array = [ - ['You Suck!', 0.2], - ['Shit', 0.4], - ['Bad', 0.5], - ['Bruh', 0.6], - ['Meh', 0.69], - ['Nice', 0.7], - ['Good', 0.8], - ['Great', 0.9], - ['Sick!', 1], - ['Perfect!!', 1] - ]; - - public static var kadeRatings:Array = [ - ['D', 0.59], - ['C', 0.6], - ['B', 0.7], - ['A', 0.8], - ['A.', 0.85], - ['A:', 0.90], - ['AA', 0.93], - ['AA.', 0.965], - ['AA:', 0.99], - ['AAA', 0.997], - ['AAA.', 0.998], - ['AAA:', 0.999], - ['AAAA', 0.99955], - ['AAAA.', 0.9997], - ['AAAA:', 0.9998], - ['AAAAA', 0.999935] - ]; + public static var ratingStuff:Array = []; //event variables private var isCameraOnForcedPos:Bool = false; @@ -441,6 +389,74 @@ class PlayState extends MusicBeatState keysArray = []; + ratingStuff = switch (ClientPrefs.scoreTxtType) { + case 'Default': [ + ['F-', 0.2], + ['F', 0.5], + ['D', 0.6], + ['C', 0.7], + ['B', 0.8], + ['A-', 0.89], + ['A', 0.90], + ['A+', 0.93], + ['S-', 0.96], + ['S', 0.99], + ['S+', 0.997], + ['SS-', 0.998], + ['SS', 0.999], + ['SS+', 0.9995], + ['X-', 0.9997], + ['X', 0.9998], + ['X+', 0.999935], + ['P', 1.0] + ]; + + case 'Psych': [ + ['You Suck!', 0.2], + ['Shit', 0.4], + ['Bad', 0.5], + ['Bruh', 0.6], + ['Meh', 0.69], + ['Nice', 0.7], + ['Good', 0.8], + ['Great', 0.9], + ['Sick!', 1], + ['Perfect!!', 1] + ]; + + case 'Kade': [ + ['D', 0.59], + ['C', 0.6], + ['B', 0.7], + ['A', 0.8], + ['A.', 0.85], + ['A:', 0.90], + ['AA', 0.93], + ['AA.', 0.965], + ['AA:', 0.99], + ['AAA', 0.997], + ['AAA.', 0.998], + ['AAA:', 0.999], + ['AAAA', 0.99955], + ['AAAA.', 0.9997], + ['AAAA:', 0.9998], + ['AAAAA', 0.999935] + ]; + + default: [ + ['?', 0.2], + ['??', 0.4], + ['???', 0.5], + ['????', 0.6], + ['?????', 0.69], + ['??????', 0.7], + ['???????', 0.8], + ['????????', 0.9], + ['?????????', 1], + ['??????????', 1] + ]; + } + for (ass in controlArray) keysArray.push(ClientPrefs.copyKey(ClientPrefs.keyBinds.get(ass.toLowerCase()))); @@ -562,24 +578,15 @@ class PlayState extends MusicBeatState if(SONG.stage == null || SONG.stage.length < 1) { switch (songName) { - case 'spookeez' | 'south' | 'monster': - curStage = 'spooky'; - case 'pico' | 'blammed' | 'philly' | 'philly-nice': - curStage = 'philly'; - case 'milf' | 'satin-panties' | 'high': - curStage = 'limo'; - case 'cocoa' | 'eggnog': - curStage = 'mall'; - case 'winter-horrorland': - curStage = 'mallEvil'; - case 'senpai' | 'roses': - curStage = 'school'; - case 'thorns': - curStage = 'schoolEvil'; - case 'ugh' | 'guns' | 'stress': - curStage = 'tank'; - default: - curStage = 'stage'; + case 'spookeez' | 'south' | 'monster': curStage = 'spooky'; + case 'pico' | 'blammed' | 'philly' | 'philly-nice': curStage = 'philly'; + case 'milf' | 'satin-panties' | 'high': curStage = 'limo'; + case 'cocoa' | 'eggnog': curStage = 'mall'; + case 'winter-horrorland': curStage = 'mallEvil'; + case 'senpai' | 'roses': curStage = 'school'; + case 'thorns': curStage = 'schoolEvil'; + case 'ugh' | 'guns' | 'stress': curStage = 'tank'; + default: curStage = 'stage'; } } SONG.stage = curStage; @@ -1172,16 +1179,11 @@ class PlayState extends MusicBeatState { switch (curStage) { - case 'limo': - gfVersion = 'gf-car'; - case 'mall' | 'mallEvil': - gfVersion = 'gf-christmas'; - case 'school' | 'schoolEvil': - gfVersion = 'gf-pixel'; - case 'tank': - gfVersion = 'gf-tankmen'; - default: - gfVersion = 'gf'; + case 'limo': gfVersion = 'gf-car'; + case 'mall' | 'mallEvil': gfVersion = 'gf-christmas'; + case 'school' | 'schoolEvil': gfVersion = 'gf-pixel'; + case 'tank': gfVersion = 'gf-tankmen'; + default: gfVersion = 'gf'; } switch(Paths.formatToSongPath(SONG.song)) @@ -5915,7 +5917,7 @@ class PlayState extends MusicBeatState Called from flixel.FlxGame::step flixel/FlxGame.hx line 680 Called from flixel.FlxGame::update flixel/FlxGame.hx line 727 Called from flixel.FlxGame::switchState flixel/FlxGame.hx line 625 - Called from meta.state.PlayState::destroy meta/state/PlayState.hx line 5928 + Called from meta.state.PlayState::destroy meta/state/PlayState.hx line 5930 Called from flixel.addons.ui.FlxUIState::destroy flixel/addons/ui/FlxUIState.hx line 331 Called from flixel.addons.transition.FlxTransitionableState::destroy flixel/addons/transition/FlxTransitionableState.hx line 75 Called from flixel.FlxState::destroy flixel/FlxState.hx line 186 @@ -6336,66 +6338,24 @@ class PlayState extends MusicBeatState var ret:Dynamic = callOnLuas('onRecalculateRating', [], false); if(ret != FunkinLua.Function_Stop) { - if(totalPlayed < 1) //Prevent divide by 0 + if (totalPlayed < 1) //Prevent divide by 0 ratingName = '?'; else { // Rating Percent ratingPercent = Math.min(1, Math.max(0, totalNotesHit / totalPlayed)); - - // Rating Name - switch (ClientPrefs.scoreTxtType) + if(ratingPercent >= 1) + ratingName = ratingStuff[ratingStuff.length - 1][0]; + else { - case 'Default': - if(ratingPercent >= 1) - { - ratingName = ratingStuff[ratingStuff.length - 1][0]; //Uses last string - } - else - { - for (i in 0...ratingStuff.length - 1) - { - if(ratingPercent < ratingStuff[i][1]) - { - ratingName = ratingStuff[i][0]; - break; - } - } - } - - case 'Psych': - if(ratingPercent >= 1) - { - ratingName = psychRatings[psychRatings.length - 1][0]; //Uses last string - } - else - { - for (i in 0...psychRatings.length - 1) - { - if(ratingPercent < psychRatings[i][1]) - { - ratingName = psychRatings[i][0]; - break; - } - } - } - - case 'Kade': - if(ratingPercent >= 1) - { - ratingName = kadeRatings[kadeRatings.length - 1][0]; //Uses last string - } - else + for (i in 0...ratingStuff.length - 1) + { + if(ratingPercent < ratingStuff[i][1]) { - for (i in 0...kadeRatings.length - 1) - { - if(ratingPercent < kadeRatings[i][1]) - { - ratingName = kadeRatings[i][0]; - break; - } - } + ratingName = ratingStuff[i][0]; + break; } + } } } comboFunction();