Smaller fixes tied to note kinds

This commit is contained in:
EliteMasterEric 2024-07-12 21:40:46 -04:00
parent ace762413e
commit d4cbe74939
6 changed files with 16 additions and 5 deletions
source/funkin

View file

@ -199,6 +199,8 @@ class FNFLegacyImporter
{
// Handle the dumb logic for mustHitSection.
var noteData = note.data;
if (noteData < 0) continue; // Exclude Psych event notes.
if (noteData > (STRUMLINE_SIZE * 2)) noteData = noteData % (2 * STRUMLINE_SIZE); // Handle other engine event notes.
// Flip notes if mustHitSection is FALSE (not true lol).
if (!mustHitSection)

View file

@ -7,6 +7,7 @@ import funkin.data.dialogue.speaker.SpeakerRegistry;
import funkin.data.event.SongEventRegistry;
import funkin.data.story.level.LevelRegistry;
import funkin.data.notestyle.NoteStyleRegistry;
import funkin.play.notes.notekind.NoteKindManager;
import funkin.data.song.SongRegistry;
import funkin.data.freeplay.player.PlayerRegistry;
import funkin.data.stage.StageRegistry;
@ -383,6 +384,7 @@ class PolymodHandler
StageRegistry.instance.loadEntries();
CharacterDataParser.loadCharacterCache(); // TODO: Migrate characters to BaseRegistry.
NoteKindManager.loadScripts();
ModuleHandler.loadModuleCache();
}
}

View file

@ -1166,6 +1166,9 @@ class PlayState extends MusicBeatSubState
// super.dispatchEvent(event) dispatches event to module scripts.
super.dispatchEvent(event);
// Dispatch event to note kind scripts
NoteKindManager.callEvent(event);
// Dispatch event to stage script.
ScriptEventDispatcher.callEvent(currentStage, event);
@ -1177,9 +1180,6 @@ class PlayState extends MusicBeatSubState
// Dispatch event to conversation script.
ScriptEventDispatcher.callEvent(currentConversation, event);
// Dispatch event to note kind scripts
NoteKindManager.callEvent(event);
}
/**

View file

@ -521,6 +521,9 @@ class BaseCharacter extends Bopper
{
super.onNoteHit(event);
// If another script cancelled the event, don't do anything.
if (event.eventCanceled) return;
if (event.note.noteData.getMustHitNote() && characterType == BF)
{
// If the note is from the same strumline, play the sing animation.
@ -553,6 +556,9 @@ class BaseCharacter extends Bopper
{
super.onNoteMiss(event);
// If another script cancelled the event, don't do anything.
if (event.eventCanceled) return;
if (event.note.noteData.getMustHitNote() && characterType == BF)
{
// If the note is from the same strumline, play the sing animation.

View file

@ -5,6 +5,7 @@ import funkin.modding.events.ScriptEvent;
import funkin.ui.debug.charting.util.ChartEditorDropdowns;
import funkin.data.notestyle.NoteStyleRegistry;
import funkin.play.notes.notestyle.NoteStyle;
import funkin.play.notes.notekind.ScriptedNoteKind;
import funkin.play.notes.notekind.NoteKind.NoteKindParam;
class NoteKindManager

View file

@ -45,8 +45,8 @@ class Bopper extends StageProp implements IPlayStateScriptedClass
public var idleSuffix(default, set):String = '';
/**
* If this bopper is rendered with pixel art,
* disable anti-aliasing and render at 6x scale.
* If this bopper is rendered with pixel art, disable anti-aliasing.
* @default `false`
*/
public var isPixel(default, set):Bool = false;