diff --git a/.github/PULL_REQUEST_TEMPLATE/bug.md b/.github/PULL_REQUEST_TEMPLATE/bug.md new file mode 100644 index 00000000000..41914c5edee --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/bug.md @@ -0,0 +1,10 @@ +--- +name: Bug Fix +about: Fix a bug or critical performance issue +title: 'Bug Fix: ' +labels: bug +--- +#### Please check for duplicates or similar PRs before creating this issue. +## Does this PR close any issue(s)? If so, link them below. + +## Briefly describe the issue(s) fixed. diff --git a/.github/PULL_REQUEST_TEMPLATE/enhancement.md b/.github/PULL_REQUEST_TEMPLATE/enhancement.md new file mode 100644 index 00000000000..e208deefea1 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/enhancement.md @@ -0,0 +1,10 @@ +--- +name: Enhancement +about: Add a new feature +title: 'Enhancement: ' +labels: enhancement +--- +#### Please check for duplicates or similar PRs before creating this issue. +## Does this PR close any issue(s)? If so, link them below. + +## What do your change(s) add, and why should they be implemented? diff --git a/assets/splash/images/JavaScriptLogo.png b/assets/splash/images/JavaScriptLogo.png new file mode 100644 index 00000000000..61b4c4e0a2a Binary files /dev/null and b/assets/splash/images/JavaScriptLogo.png differ diff --git a/assets/splash/sounds/tada.ogg b/assets/splash/sounds/tada.ogg new file mode 100644 index 00000000000..ba2a262ebd6 Binary files /dev/null and b/assets/splash/sounds/tada.ogg differ diff --git a/source/MainMenuState.hx b/source/MainMenuState.hx index 631d1be300f..a305d947b9a 100644 --- a/source/MainMenuState.hx +++ b/source/MainMenuState.hx @@ -23,7 +23,7 @@ using StringTools; class MainMenuState extends MusicBeatState { - public static var psychEngineJSVersion:String = '1.35.0'; //This is also used for Discord RPC + public static var psychEngineJSVersion:String = '1.36.0'; //This is also used for Discord RPC public static var psychEngineVersion:String = '0.6.3'; //This is also used for Discord RPC public static var curSelected:Int = 0; diff --git a/source/MusicBeatState.hx b/source/MusicBeatState.hx index 6a58da214b0..599540b655b 100644 --- a/source/MusicBeatState.hx +++ b/source/MusicBeatState.hx @@ -187,8 +187,6 @@ class MusicBeatState extends FlxUIState if (oldStep != curStep && curStep > 0) { stepHit(); - if (curStep % 4 == 0) - beatHit(); //troll mode no longer breaks beats if(PlayState.SONG != null) { @@ -283,6 +281,9 @@ class MusicBeatState extends FlxUIState stage.curDecStep = curDecStep; stage.stepHit(); }); + + if (curStep % 4 == 0) + beatHit(); } //runs whenever the game hits a beat diff --git a/source/Note.hx b/source/Note.hx index dfbe155b3ab..e163393e014 100644 --- a/source/Note.hx +++ b/source/Note.hx @@ -39,7 +39,8 @@ typedef PreloadedChartNote = { multSpeed:Float, noteDensity:Float, ignoreNote:Bool, - lowPriority:Bool, + blockHit:Bool, + lowPriority:Bool } typedef NoteSplashData = { @@ -604,6 +605,7 @@ class Note extends FlxSprite missHealth = chartNoteData.missHealth; hitCausesMiss = chartNoteData.hitCausesMiss; ignoreNote = chartNoteData.ignoreNote; + blockHit = chartNoteData.blockHit; multSpeed = chartNoteData.multSpeed; noteDensity = chartNoteData.noteDensity; diff --git a/source/PlayState.hx b/source/PlayState.hx index 9e029cc8091..fbd36c5eb75 100644 --- a/source/PlayState.hx +++ b/source/PlayState.hx @@ -5772,7 +5772,7 @@ class PlayState extends MusicBeatState if (Conductor.songPosition > noteKillOffset + daNote.strumTime) { - if (daNote.mustPress && (!(cpuControlled || usingBotEnergy && strumsHeld[daNote.noteData]) || cpuControlled) && !daNote.ignoreNote && !endingSong && !daNote.wasGoodHit) { + if (daNote.mustPress && (!(cpuControlled || usingBotEnergy && strumsHeld[daNote.noteData]) || cpuControlled) && !daNote.ignoreNote && !daNote.blockHit && !endingSong && !daNote.wasGoodHit) { noteMiss(daNote); if (ClientPrefs.missSoundShit) { diff --git a/source/StartupState.hx b/source/StartupState.hx index 82b9bc13baf..75a4ba5beaf 100644 --- a/source/StartupState.hx +++ b/source/StartupState.hx @@ -19,7 +19,7 @@ class StartupState extends MusicBeatState var logo:FlxSprite; var skipTxt:FlxText; - var maxIntros:Int = 2; + var maxIntros:Int = 3; override public function create():Void { @@ -69,6 +69,14 @@ class StartupState extends MusicBeatState logo.screenCenter(); FlxTween.tween(logo, {alpha: 1, "scale.x": 1, "scale.y": 1}, 1.35, {ease: FlxEase.expoOut, onComplete: _ -> onIntroDone(0.6)}); case 3: + // secret muaahahhahhahaahha + FlxG.sound.play(Paths.sound('tada', 'splash')); + logo.loadGraphic(Paths.image('JavaScriptLogo', 'splash')); + logo.scale.set(0.1,0.1); + logo.updateHitbox(); + logo.screenCenter(); + FlxTween.tween(logo, {alpha: 1, "scale.x": 1, "scale.y": 1}, 1.35, {ease: FlxEase.expoOut, onComplete: _ -> onIntroDone(0.6)}); + case 4: #if VIDEOS_ALLOWED var vidSprite = new MP4Handler(); // it plays but it doesn't show??? #if (hxCodec < "3.0.0") @@ -87,7 +95,7 @@ class StartupState extends MusicBeatState }); #end #end - case 4: + case 5: #if VIDEOS_ALLOWED var vidSprite = new MP4Handler(); // it plays but it doesn't show??? #if (hxCodec < "3.0.0") diff --git a/source/editors/ChartingState.hx b/source/editors/ChartingState.hx index f71be6615f8..e0b4cb54d72 100644 --- a/source/editors/ChartingState.hx +++ b/source/editors/ChartingState.hx @@ -1347,6 +1347,7 @@ class ChartingState extends MusicBeatState saveUndo(_song); //I don't even know why. for(i in 0...value) { + if (_song.notes[curSec + 1] == null) addSection(getSectionBeats()); changeSection(curSec+1); for (note in _song.notes[curSec-1].sectionNotes) {