1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2025-08-31 10:56:21 +00:00

Compare commits

...

17 commits

Author SHA1 Message Date
Lasercar b4d0951dae Variation fallback & chartdata only difficulties in difficulty toolbox 2025-07-23 00:07:56 +10:00
Hyper_ f1c3e99a11 lasercar................................................................................................................................................................................................. 2025-07-22 07:56:29 +08:00
Hyper_ eefe8927c4 The most deranged line loss of all time 2025-07-21 17:43:55 -05:00
cherry 3ff4f14510 Clear key from correct map 2025-07-21 17:13:42 -05:00
Abnormal 955b0db542 THE REALLY COOL STUTTERING FIX!!!!!!!!!!!! 2025-07-21 15:06:19 -05:00
Eric d2df4f0832
Merge pull request #5440 from FunkinCrew/main
Update develop branch
2025-07-21 13:08:44 -04:00
Eric 351719ab13
Merge pull request #5438 from FunkinCrew/EliteMasterEric-patch-4
Update lime, openfl, flixel repo URLs in hmm.json
2025-07-21 13:05:40 -04:00
Eric 4ecfe9863e
Update lime, openfl, flixel repo URLs in hmm.json 2025-07-21 13:05:15 -04:00
Eric 48e140e5c0
Merge pull request #5432 from FunkinCrew/develop-0.7.2
Release the mobile source code already
2025-07-21 12:17:54 -04:00
Hundrec e6bb965d6b
Merge branch 'main' into develop-0.7.2 2025-07-22 00:13:47 +08:00
Baran b00376c88c 0.7.2 bumping is real 2025-07-21 10:33:13 -05:00
CrusherNotDrip 541bb78da9 Bump to 0.7.1 2025-07-16 21:51:46 -05:00
Hundrec 5f5fff870c Update issue templates for Mobile 2025-07-14 08:25:10 -05:00
CrusherNotDrip 52acd86cdf bump versions to 0.7.0 2025-07-14 07:38:31 -05:00
Eric 29f7aca135
Merge pull request #5183 from Hundrec/patch-13
[DOCS] Fix a link in a Changelog entry
2025-06-06 01:14:53 -04:00
Hundrec 35d4d24731
that's not even the right link
what
2025-06-01 01:50:33 -06:00
Hundrec c0dde5c936
missed one
funkin.assets
2025-06-01 01:46:27 -06:00
15 changed files with 89 additions and 53 deletions

View file

@ -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

View file

@ -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)."

View file

@ -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."

View file

@ -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

View file

@ -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)

View file

@ -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)

View file

@ -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"
}, },
{ {

View file

@ -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");

View file

@ -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)';

View file

@ -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;

View file

@ -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)
{ {

View file

@ -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;

View file

@ -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;

View file

@ -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];

View file

@ -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(