mirror of
https://github.com/ninjamuffin99/Funkin.git
synced 2025-08-31 10:56:21 +00:00
Compare commits
17 commits
eda8e8a33a
...
b4d0951dae
Author | SHA1 | Date | |
---|---|---|---|
|
b4d0951dae | ||
|
f1c3e99a11 | ||
|
eefe8927c4 | ||
|
3ff4f14510 | ||
|
955b0db542 | ||
|
d2df4f0832 | ||
|
351719ab13 | ||
|
4ecfe9863e | ||
|
48e140e5c0 | ||
|
e6bb965d6b | ||
|
b00376c88c | ||
|
541bb78da9 | ||
|
5f5fff870c | ||
|
52acd86cdf | ||
|
29f7aca135 | ||
|
35d4d24731 | ||
|
c0dde5c936 |
24
.github/ISSUE_TEMPLATE/bug.yml
vendored
24
.github/ISSUE_TEMPLATE/bug.yml
vendored
|
@ -20,13 +20,13 @@ body:
|
||||||
label: Platform
|
label: Platform
|
||||||
description: Which platform are you playing on?
|
description: Which platform are you playing on?
|
||||||
options:
|
options:
|
||||||
|
- Android
|
||||||
|
- iOS/iPadOS
|
||||||
- Newgrounds (Web/HTML5)
|
- Newgrounds (Web/HTML5)
|
||||||
- Itch.io (Web/HTML5)
|
- Itch.io (Web/HTML5)
|
||||||
- Itch.io (Downloadable Build) - Windows
|
- Windows (Downloadable Build)
|
||||||
- Itch.io (Downloadable Build) - MacOS
|
- MacOS (Downloadable Build)
|
||||||
- Itch.io (Downloadable Build) - Linux
|
- Linux (Downloadable Build)
|
||||||
- Google Playstore - Android
|
|
||||||
- App Store - iOS
|
|
||||||
- Compiled from GitHub Source Code
|
- Compiled from GitHub Source Code
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
@ -43,11 +43,23 @@ body:
|
||||||
- Safari
|
- Safari
|
||||||
- Other (Specify in Description field)
|
- Other (Specify in Description field)
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
attributes:
|
||||||
|
label: Mobile Device Model
|
||||||
|
description: (Mobile users only) What mobile device are you playing on?
|
||||||
|
placeholder: ex. iPhone 16, Galaxy S25, iPad 11th Gen
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
attributes:
|
||||||
|
label: Mobile OS Version
|
||||||
|
description: (Mobile users only) What version is your Operating System?
|
||||||
|
placeholder: ex. iOS 18.5, Android 15, iPadOS 18.5
|
||||||
|
|
||||||
- type: input
|
- type: input
|
||||||
attributes:
|
attributes:
|
||||||
label: Version
|
label: Version
|
||||||
description: Which version are you playing on? The game version is in the bottom left corner of the main menu.
|
description: Which version are you playing on? The game version is in the bottom left corner of the main menu.
|
||||||
placeholder: ex. 0.6.4
|
placeholder: ex. 0.7.2
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
|
|
28
.github/ISSUE_TEMPLATE/charting.yml
vendored
28
.github/ISSUE_TEMPLATE/charting.yml
vendored
|
@ -6,7 +6,7 @@ body:
|
||||||
- type: markdown
|
- type: markdown
|
||||||
attributes:
|
attributes:
|
||||||
value: "# PLEASE READ THE [CONTRIBUTING GUIDE](https://github.com/FunkinCrew/Funkin/blob/main/docs/CONTRIBUTING.md) BEFORE OPENING ISSUES!"
|
value: "# PLEASE READ THE [CONTRIBUTING GUIDE](https://github.com/FunkinCrew/Funkin/blob/main/docs/CONTRIBUTING.md) BEFORE OPENING ISSUES!"
|
||||||
|
|
||||||
- type: checkboxes
|
- type: checkboxes
|
||||||
attributes:
|
attributes:
|
||||||
label: Issue Checklist
|
label: Issue Checklist
|
||||||
|
@ -21,35 +21,25 @@ body:
|
||||||
label: Platform
|
label: Platform
|
||||||
description: Which platform are you playing on?
|
description: Which platform are you playing on?
|
||||||
options:
|
options:
|
||||||
|
- Android
|
||||||
|
- iOS/iPadOS
|
||||||
- Newgrounds (Web/HTML5)
|
- Newgrounds (Web/HTML5)
|
||||||
- Itch.io (Web/HTML5)
|
- Itch.io (Web/HTML5)
|
||||||
- Itch.io (Downloadable Build) - Windows
|
- Windows (Downloadable Build)
|
||||||
- Itch.io (Downloadable Build) - MacOS
|
- MacOS (Downloadable Build)
|
||||||
- Itch.io (Downloadable Build) - Linux
|
- Linux (Downloadable Build)
|
||||||
- Compiled from GitHub Source Code
|
- Compiled from GitHub Source Code
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
- type: dropdown
|
|
||||||
attributes:
|
|
||||||
label: Browser
|
|
||||||
description: (Web/HTML5 users only) Which browser are you playing on?
|
|
||||||
options:
|
|
||||||
- Google Chrome
|
|
||||||
- Microsoft Edge
|
|
||||||
- Firefox
|
|
||||||
- Opera
|
|
||||||
- Safari
|
|
||||||
- Other (Specify in Description field)
|
|
||||||
|
|
||||||
- type: input
|
- type: input
|
||||||
attributes:
|
attributes:
|
||||||
label: Version
|
label: Version
|
||||||
description: Which version are you playing on? The game version is in the bottom left corner of the main menu.
|
description: Which version are you playing on? The game version is in the bottom left corner of the main menu.
|
||||||
placeholder: ex. 0.6.4
|
placeholder: ex. 0.7.2
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
- type: markdown
|
- type: markdown
|
||||||
attributes:
|
attributes:
|
||||||
value: "## Describe the charting issue(s)."
|
value: "## Describe the charting issue(s)."
|
||||||
|
|
10
.github/ISSUE_TEMPLATE/compiling.yml
vendored
10
.github/ISSUE_TEMPLATE/compiling.yml
vendored
|
@ -6,7 +6,7 @@ body:
|
||||||
- type: markdown
|
- type: markdown
|
||||||
attributes:
|
attributes:
|
||||||
value: "# PLEASE READ THE [CONTRIBUTING GUIDE](https://github.com/FunkinCrew/Funkin/blob/main/docs/CONTRIBUTING.md) BEFORE OPENING ISSUES!"
|
value: "# PLEASE READ THE [CONTRIBUTING GUIDE](https://github.com/FunkinCrew/Funkin/blob/main/docs/CONTRIBUTING.md) BEFORE OPENING ISSUES!"
|
||||||
|
|
||||||
- type: checkboxes
|
- type: checkboxes
|
||||||
attributes:
|
attributes:
|
||||||
label: Issue Checklist
|
label: Issue Checklist
|
||||||
|
@ -22,6 +22,8 @@ body:
|
||||||
label: Platform
|
label: Platform
|
||||||
description: Which platform are you compiling for?
|
description: Which platform are you compiling for?
|
||||||
options:
|
options:
|
||||||
|
- Android
|
||||||
|
- iOS/iPadOS
|
||||||
- Web/HTML5
|
- Web/HTML5
|
||||||
- Desktop (Windows)
|
- Desktop (Windows)
|
||||||
- Desktop (Mac)
|
- Desktop (Mac)
|
||||||
|
@ -33,11 +35,11 @@ body:
|
||||||
- type: input
|
- type: input
|
||||||
attributes:
|
attributes:
|
||||||
label: Version
|
label: Version
|
||||||
description: Which version are you compiling? The game version is in the bottom left corner of the main menu or in the project.hxp file.
|
description: Which version are you compiling? The game version is in the bottom left corner of the main menu or in the project.hxp file.
|
||||||
placeholder: ex. 0.6.4
|
placeholder: ex. 0.7.2
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
- type: markdown
|
- type: markdown
|
||||||
attributes:
|
attributes:
|
||||||
value: "## Describe your compiling issue."
|
value: "## Describe your compiling issue."
|
||||||
|
|
30
.github/ISSUE_TEMPLATE/crash.yml
vendored
30
.github/ISSUE_TEMPLATE/crash.yml
vendored
|
@ -6,7 +6,7 @@ body:
|
||||||
- type: markdown
|
- type: markdown
|
||||||
attributes:
|
attributes:
|
||||||
value: "# PLEASE READ THE [CONTRIBUTING GUIDE](https://github.com/FunkinCrew/Funkin/blob/main/docs/CONTRIBUTING.md) BEFORE OPENING ISSUES!"
|
value: "# PLEASE READ THE [CONTRIBUTING GUIDE](https://github.com/FunkinCrew/Funkin/blob/main/docs/CONTRIBUTING.md) BEFORE OPENING ISSUES!"
|
||||||
|
|
||||||
- type: checkboxes
|
- type: checkboxes
|
||||||
attributes:
|
attributes:
|
||||||
label: Issue Checklist
|
label: Issue Checklist
|
||||||
|
@ -21,11 +21,13 @@ body:
|
||||||
label: Platform
|
label: Platform
|
||||||
description: Which platform are you playing on?
|
description: Which platform are you playing on?
|
||||||
options:
|
options:
|
||||||
|
- Android
|
||||||
|
- iOS/iPadOS
|
||||||
- Newgrounds (Web/HTML5)
|
- Newgrounds (Web/HTML5)
|
||||||
- Itch.io (Web/HTML5)
|
- Itch.io (Web/HTML5)
|
||||||
- Itch.io (Downloadable Build) - Windows
|
- Windows (Downloadable Build)
|
||||||
- Itch.io (Downloadable Build) - MacOS
|
- MacOS (Downloadable Build)
|
||||||
- Itch.io (Downloadable Build) - Linux
|
- Linux (Downloadable Build)
|
||||||
- Compiled from GitHub Source Code
|
- Compiled from GitHub Source Code
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
@ -42,11 +44,23 @@ body:
|
||||||
- Safari
|
- Safari
|
||||||
- Other (Specify in Description field)
|
- Other (Specify in Description field)
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
attributes:
|
||||||
|
label: Mobile Device Model
|
||||||
|
description: (Mobile users only) What mobile device are you playing on?
|
||||||
|
placeholder: ex. iPhone 16, Galaxy S25, iPad 11th Gen
|
||||||
|
|
||||||
|
- type: input
|
||||||
|
attributes:
|
||||||
|
label: Mobile OS Version
|
||||||
|
description: (Mobile users only) What version is your Operating System?
|
||||||
|
placeholder: ex. iOS 18.5, Android 15, iPadOS 18.5
|
||||||
|
|
||||||
- type: input
|
- type: input
|
||||||
attributes:
|
attributes:
|
||||||
label: Version
|
label: Version
|
||||||
description: Which version are you playing on? The game version is in the bottom left corner of the main menu.
|
description: Which version are you playing on? The game version is in the bottom left corner of the main menu.
|
||||||
placeholder: ex. 0.6.4
|
placeholder: ex. 0.7.2
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
|
@ -61,7 +75,7 @@ body:
|
||||||
- type: textarea
|
- type: textarea
|
||||||
attributes:
|
attributes:
|
||||||
label: Description
|
label: Description
|
||||||
description: Include screenshots or videos of the crash happening. Provide as much detail as you can.
|
description: Include screenshots or videos of the crash happening. Provide as much detail as you can.
|
||||||
placeholder: Describe the crash here...
|
placeholder: Describe the crash here...
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
@ -77,7 +91,7 @@ body:
|
||||||
- type: textarea
|
- type: textarea
|
||||||
attributes:
|
attributes:
|
||||||
label: Crash logs
|
label: Crash logs
|
||||||
description: These can be found in the logs folder where Funkin.exe is.
|
description: These can be found in the logs folder where Funkin.exe is, or in your mobile device's file explorer.
|
||||||
placeholder: Upload your logs here...
|
placeholder: Upload your logs here...
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
|
@ -412,7 +412,7 @@ Select. ([3d3e2bd](https://github.com/FunkinCrew/Funkin/commit/3d3e2bd3786b85814
|
||||||
* @JackXson-Real made their first contribution in [#4346](https://github.com/FunkinCrew/Funkin/pull/4346)
|
* @JackXson-Real made their first contribution in [#4346](https://github.com/FunkinCrew/Funkin/pull/4346)
|
||||||
* @VioletSnowLeopard made their first contribution in [#4382](https://github.com/FunkinCrew/Funkin/pull/4382)
|
* @VioletSnowLeopard made their first contribution in [#4382](https://github.com/FunkinCrew/Funkin/pull/4382)
|
||||||
* @superpowers04 made their first contribution in [#4729](https://github.com/FunkinCrew/Funkin/pull/4729)
|
* @superpowers04 made their first contribution in [#4729](https://github.com/FunkinCrew/Funkin/pull/4729)
|
||||||
* @ShadzXD made their first contribution in [#62](https://github.com/FunkinCrew/Funkin/pull/4729)
|
* @ShadzXD made their first contribution in [funkin.assets#62](https://github.com/FunkinCrew/funkin.assets/pull/62)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@ This section provides guidelines to follow when [opening an issue](https://githu
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
Make sure you're playing:
|
Make sure you're playing:
|
||||||
- the latest version of the game (currently v0.6.4)
|
- the latest version of the game (currently v0.7.2)
|
||||||
- without any mods
|
- without any mods
|
||||||
- on [Newgrounds](https://www.newgrounds.com/portal/view/770371) or downloaded from [itch.io](https://ninja-muffin24.itch.io/funkin)
|
- on [Newgrounds](https://www.newgrounds.com/portal/view/770371) or downloaded from [itch.io](https://ninja-muffin24.itch.io/funkin)
|
||||||
|
|
||||||
|
|
8
hmm.json
8
hmm.json
|
@ -46,7 +46,7 @@
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"dir": null,
|
"dir": null,
|
||||||
"ref": "08fc955ca87f192a971719a675f1d3b21709725d",
|
"ref": "08fc955ca87f192a971719a675f1d3b21709725d",
|
||||||
"url": "https://github.com/FunkinCrew/flixel-mobile"
|
"url": "https://github.com/FunkinCrew/flixel"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flixel-addons",
|
"name": "flixel-addons",
|
||||||
|
@ -171,7 +171,7 @@
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"dir": null,
|
"dir": null,
|
||||||
"ref": "c750ebf6b48c4bc018abe9855fbae5ffdbc4771a",
|
"ref": "c750ebf6b48c4bc018abe9855fbae5ffdbc4771a",
|
||||||
"url": "https://github.com/FunkinCrew/lime-mobile"
|
"url": "https://github.com/FunkinCrew/lime"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "mconsole",
|
"name": "mconsole",
|
||||||
|
@ -213,13 +213,13 @@
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"dir": null,
|
"dir": null,
|
||||||
"ref": "a0df7c3afe360c9af59a76e45007dbf4e53b5131",
|
"ref": "a0df7c3afe360c9af59a76e45007dbf4e53b5131",
|
||||||
"url": "https://github.com/FunkinCrew/openfl-mobile"
|
"url": "https://github.com/FunkinCrew/openfl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "polymod",
|
"name": "polymod",
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"dir": null,
|
"dir": null,
|
||||||
"ref": "3e030c81de99ca84acde681431f806d8103bcf6e",
|
"ref": "866f19edbcd872b3358f9a41f2f6a24c71c191d1",
|
||||||
"url": "https://github.com/larsiusprime/polymod"
|
"url": "https://github.com/larsiusprime/polymod"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -350,7 +350,7 @@ class FunkinMemory
|
||||||
if (sound != null)
|
if (sound != null)
|
||||||
{
|
{
|
||||||
Assets.cache.removeSound(key);
|
Assets.cache.removeSound(key);
|
||||||
previousCachedTextures.remove(key);
|
previousCachedSounds.remove(key);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Assets.cache.clear("songs");
|
Assets.cache.clear("songs");
|
||||||
|
|
|
@ -37,7 +37,7 @@ class FNFLegacyImporter
|
||||||
{
|
{
|
||||||
trace('Migrating song metadata from FNF Legacy.');
|
trace('Migrating song metadata from FNF Legacy.');
|
||||||
|
|
||||||
var songMetadata:SongMetadata = new SongMetadata('Import', Constants.DEFAULT_ARTIST, 'default');
|
var songMetadata:SongMetadata = new SongMetadata('Import', Constants.DEFAULT_ARTIST, Constants.DEFAULT_CHARTER, Constants.DEFAULT_VARIATION);
|
||||||
|
|
||||||
// Set generatedBy string for debugging.
|
// Set generatedBy string for debugging.
|
||||||
songMetadata.generatedBy = 'Chart Editor Import (FNF Legacy)';
|
songMetadata.generatedBy = 'Chart Editor Import (FNF Legacy)';
|
||||||
|
|
|
@ -24,7 +24,7 @@ class SongDataMigrator
|
||||||
|
|
||||||
public static function migrate_SongMetadata_v2_1_0(input:SongData_v2_1_0.SongMetadata_v2_1_0):SongMetadata
|
public static function migrate_SongMetadata_v2_1_0(input:SongData_v2_1_0.SongMetadata_v2_1_0):SongMetadata
|
||||||
{
|
{
|
||||||
var result:SongMetadata = new SongMetadata(input.songName, input.artist, input.variation);
|
var result:SongMetadata = new SongMetadata(input.songName, input.artist, Constants.DEFAULT_CHARTER, input.variation);
|
||||||
result.version = SongRegistry.SONG_METADATA_VERSION;
|
result.version = SongRegistry.SONG_METADATA_VERSION;
|
||||||
result.timeFormat = input.timeFormat;
|
result.timeFormat = input.timeFormat;
|
||||||
result.divisions = input.divisions;
|
result.divisions = input.divisions;
|
||||||
|
@ -66,7 +66,7 @@ class SongDataMigrator
|
||||||
|
|
||||||
public static function migrate_SongMetadata_v2_0_0(input:SongData_v2_0_0.SongMetadata_v2_0_0):SongMetadata
|
public static function migrate_SongMetadata_v2_0_0(input:SongData_v2_0_0.SongMetadata_v2_0_0):SongMetadata
|
||||||
{
|
{
|
||||||
var result:SongMetadata = new SongMetadata(input.songName, input.artist, input.variation);
|
var result:SongMetadata = new SongMetadata(input.songName, input.artist, Constants.DEFAULT_CHARTER, input.variation);
|
||||||
result.version = SongRegistry.SONG_METADATA_VERSION;
|
result.version = SongRegistry.SONG_METADATA_VERSION;
|
||||||
result.timeFormat = input.timeFormat;
|
result.timeFormat = input.timeFormat;
|
||||||
result.divisions = input.divisions;
|
result.divisions = input.divisions;
|
||||||
|
|
|
@ -1447,6 +1447,8 @@ class PlayState extends MusicBeatSubState
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!vwooshTimer.finished) vwooshTimer.active = false;
|
||||||
|
|
||||||
// Pause camera tweening, and keep track of which tweens we pause.
|
// Pause camera tweening, and keep track of which tweens we pause.
|
||||||
if (cameraFollowTween != null && cameraFollowTween.active)
|
if (cameraFollowTween != null && cameraFollowTween.active)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1306,7 +1306,7 @@ class ChartEditorState extends UIState // UIState derives from MusicBeatState
|
||||||
var result:Null<SongMetadata> = songMetadata.get(selectedVariation);
|
var result:Null<SongMetadata> = songMetadata.get(selectedVariation);
|
||||||
if (result == null)
|
if (result == null)
|
||||||
{
|
{
|
||||||
result = new SongMetadata('Default Song Name', Constants.DEFAULT_ARTIST, selectedVariation);
|
result = new SongMetadata('Default Song Name', Constants.DEFAULT_ARTIST, Constants.DEFAULT_CHARTER, selectedVariation);
|
||||||
songMetadata.set(selectedVariation, result);
|
songMetadata.set(selectedVariation, result);
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
|
|
|
@ -580,7 +580,7 @@ class ChartEditorDialogHandler
|
||||||
dialog.hideDialog(DialogButton.CANCEL);
|
dialog.hideDialog(DialogButton.CANCEL);
|
||||||
}
|
}
|
||||||
|
|
||||||
var newSongMetadata:SongMetadata = new SongMetadata('', '', Constants.DEFAULT_VARIATION);
|
var newSongMetadata:SongMetadata = new SongMetadata('', '', '', Constants.DEFAULT_VARIATION);
|
||||||
|
|
||||||
newSongMetadata.variation = targetVariation;
|
newSongMetadata.variation = targetVariation;
|
||||||
newSongMetadata.playData.difficulties = (erect) ? ['erect', 'nightmare'] : ['easy', 'normal', 'hard'];
|
newSongMetadata.playData.difficulties = (erect) ? ['erect', 'nightmare'] : ['easy', 'normal', 'hard'];
|
||||||
|
@ -1219,7 +1219,8 @@ class ChartEditorDialogHandler
|
||||||
var dialogVariationName:Null<TextField> = dialog.findComponent('dialogVariationName', TextField);
|
var dialogVariationName:Null<TextField> = dialog.findComponent('dialogVariationName', TextField);
|
||||||
if (dialogVariationName == null) throw 'Could not locate dialogVariationName TextField in Add Variation dialog';
|
if (dialogVariationName == null) throw 'Could not locate dialogVariationName TextField in Add Variation dialog';
|
||||||
|
|
||||||
var pendingVariation:SongMetadata = new SongMetadata(dialogSongName.text, dialogSongArtist.text, dialogVariationName.text.toLowerCase());
|
var pendingVariation:SongMetadata = new SongMetadata(dialogSongName.text, dialogSongArtist.text, dialogSongCharter.text,
|
||||||
|
dialogVariationName.text.toLowerCase());
|
||||||
|
|
||||||
pendingVariation.playData.stage = dialogStage.value.id;
|
pendingVariation.playData.stage = dialogStage.value.id;
|
||||||
pendingVariation.playData.noteStyle = dialogNoteStyle.value.id;
|
pendingVariation.playData.noteStyle = dialogNoteStyle.value.id;
|
||||||
|
|
|
@ -131,10 +131,16 @@ class ChartEditorImportExportHandler
|
||||||
state.songMetadata = newSongMetadata;
|
state.songMetadata = newSongMetadata;
|
||||||
state.songChartData = newSongChartData;
|
state.songChartData = newSongChartData;
|
||||||
|
|
||||||
if (!state.songMetadata.exists(state.selectedVariation))
|
var variationMetadata:Null<SongMetadata> = state.songMetadata.get(state.selectedVariation);
|
||||||
|
if (variationMetadata == null)
|
||||||
{
|
{
|
||||||
state.selectedVariation = Constants.DEFAULT_VARIATION;
|
// Use the default variation, or the first available variation if that doesn't exist for some reason.
|
||||||
|
if (state.availableDifficulties.indexOf(Constants.DEFAULT_VARIATION) < 0) state.selectedVariation = state.availableVariations[0];
|
||||||
|
else state.selectedVariation = Constants.DEFAULT_VARIATION;
|
||||||
|
|
||||||
|
variationMetadata = state.songMetadata.get(state.selectedVariation);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Use the first available difficulty as a fallback if the currently selected one cannot be found.
|
// Use the first available difficulty as a fallback if the currently selected one cannot be found.
|
||||||
if (state.availableDifficulties.indexOf(state.selectedDifficulty) < 0) state.selectedDifficulty = state.availableDifficulties[0];
|
if (state.availableDifficulties.indexOf(state.selectedDifficulty) < 0) state.selectedDifficulty = state.availableDifficulties[0];
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,6 @@ import funkin.data.song.SongRegistry;
|
||||||
import haxe.ui.components.Button;
|
import haxe.ui.components.Button;
|
||||||
import haxe.ui.containers.dialogs.Dialogs;
|
import haxe.ui.containers.dialogs.Dialogs;
|
||||||
import haxe.ui.containers.dialogs.Dialog.DialogButton;
|
import haxe.ui.containers.dialogs.Dialog.DialogButton;
|
||||||
import funkin.data.song.SongData.SongMetadata;
|
|
||||||
import haxe.ui.components.DropDown;
|
import haxe.ui.components.DropDown;
|
||||||
import haxe.ui.components.HorizontalSlider;
|
import haxe.ui.components.HorizontalSlider;
|
||||||
import funkin.util.VersionUtil;
|
import funkin.util.VersionUtil;
|
||||||
|
@ -215,6 +214,16 @@ class ChartEditorDifficultyToolbox extends ChartEditorBaseToolbox
|
||||||
|
|
||||||
var difficultyList:Array<String> = variationMetadata.playData.difficulties;
|
var difficultyList:Array<String> = variationMetadata.playData.difficulties;
|
||||||
|
|
||||||
|
var variationChartdata:Null<SongChartData> = chartEditorState.songChartData.get(curVariation);
|
||||||
|
if(variationChartdata != null)
|
||||||
|
{
|
||||||
|
var keys:Array<String> = [for (x in variationChartdata.notes.keys()) x];
|
||||||
|
for (key in keys)
|
||||||
|
{
|
||||||
|
difficultyList.pushUnique(key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for (difficulty in difficultyList)
|
for (difficulty in difficultyList)
|
||||||
{
|
{
|
||||||
var _treeDifficulty:TreeViewNode = treeVariation.addNode(
|
var _treeDifficulty:TreeViewNode = treeVariation.addNode(
|
||||||
|
|
Loading…
Reference in a new issue