1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2024-11-04 13:54:22 +00:00

Merge branch 'rewrite/master' into feature/more-new-charts

This commit is contained in:
Cameron Taylor 2024-03-27 01:09:45 -04:00
commit cccfdd0638
5 changed files with 27 additions and 13 deletions

View file

@ -1,17 +1,18 @@
package funkin.audio;
import flixel.sound.FlxSound;
import flixel.group.FlxGroup.FlxTypedGroup;
import flixel.util.FlxSignal.FlxTypedSignal;
import flixel.math.FlxMath;
import flixel.sound.FlxSound;
import flixel.system.FlxAssets.FlxSoundAsset;
import funkin.util.tools.ICloneable;
import flixel.tweens.FlxTween;
import flixel.util.FlxSignal.FlxTypedSignal;
import funkin.audio.waveform.WaveformData;
import funkin.audio.waveform.WaveformDataParser;
import funkin.data.song.SongData.SongMusicData;
import funkin.data.song.SongRegistry;
import funkin.audio.waveform.WaveformData;
import openfl.media.SoundMixer;
import funkin.audio.waveform.WaveformDataParser;
import flixel.math.FlxMath;
import funkin.util.tools.ICloneable;
import openfl.Assets;
import openfl.media.SoundMixer;
#if (openfl >= "8.0.0")
import openfl.utils.AssetType;
#end
@ -325,6 +326,7 @@ class FunkinSound extends FlxSound implements ICloneable<FunkinSound>
if (FlxG.sound.music != null)
{
FlxG.sound.music.fadeTween?.cancel();
FlxG.sound.music.stop();
FlxG.sound.music.kill();
}
@ -401,6 +403,8 @@ class FunkinSound extends FlxSound implements ICloneable<FunkinSound>
{
// trace('[FunkinSound] Destroying sound "${this._label}"');
super.destroy();
FlxTween.cancelTweensOf(this);
this._label = 'unknown';
}
/**

View file

@ -151,11 +151,14 @@ class SoundGroup extends FlxTypedGroup<FunkinSound>
* Stop all the sounds in the group.
*/
public function stop()
{
if (members != null)
{
forEachAlive(function(sound:FunkinSound) {
sound.stop();
});
}
}
public override function destroy()
{

View file

@ -160,7 +160,9 @@ class VoicesGroup extends SoundGroup
public override function destroy():Void
{
playerVoices.destroy();
playerVoices = null;
opponentVoices.destroy();
opponentVoices = null;
super.destroy();
}
}

View file

@ -1925,14 +1925,14 @@ class PlayState extends MusicBeatSubState
FlxG.sound.music.play(true, startTimestamp - Conductor.instance.instrumentalOffset);
FlxG.sound.music.pitch = playbackRate;
// I am going insane.
// Prevent the volume from being wrong.
FlxG.sound.music.volume = 1.0;
FlxG.sound.music.fadeTween?.cancel();
trace('Playing vocals...');
add(vocals);
vocals.play();
vocals.volume = 1.0;
vocals.pitch = playbackRate;
resyncVocals();
@ -2927,6 +2927,9 @@ class PlayState extends MusicBeatSubState
// If the camera is being tweened, stop it.
cancelAllCameraTweens();
// Dispatch the destroy event.
dispatchEvent(new ScriptEvent(DESTROY, false));
if (currentConversation != null)
{
remove(currentConversation);
@ -2970,7 +2973,6 @@ class PlayState extends MusicBeatSubState
{
remove(currentStage);
currentStage.kill();
dispatchEvent(new ScriptEvent(DESTROY, false));
currentStage = null;
}

View file

@ -438,6 +438,8 @@ class StoryMenuState extends MusicBeatState
}
}
FunkinSound.playOnce(Paths.sound('scrollMenu'), 0.4);
updateText();
updateBackground(previousLevelId);
updateProps();
@ -481,6 +483,7 @@ class StoryMenuState extends MusicBeatState
if (hasChanged)
{
buildDifficultySprite();
FunkinSound.playOnce(Paths.sound('scrollMenu'), 0.4);
// Disable the funny music thing for now.
// funnyMusicThing();
}