mirror of
https://github.com/ninjamuffin99/Funkin.git
synced 2024-12-27 07:27:12 +00:00
Merge branch 'develop' into bugfix/freeplay-difficulty-stack-overflow
This commit is contained in:
commit
265039b025
|
@ -41,9 +41,6 @@ There are several useful build flags you can add to a build to affect how it wor
|
|||
- `-DFEATURE_STAGE_EDITOR` to forcibly enable the experimental stage editor.
|
||||
- `-DFEATURE_GHOST_TAPPING` to forcibly enable an experimental gameplay change to the anti-mash system.
|
||||
|
||||
# Troubleshooting - GO THROUGH THESE STEPS BEFORE OPENING ISSUES ON GITHUB!
|
||||
# Troubleshooting
|
||||
|
||||
- During the cloning process, you may experience an error along the lines of `error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)` due to poor connectivity. A common fix is to run ` git config --global http.postBuffer 4096M`.
|
||||
- Make sure your game directory has an `assets` folder! If it's missing, copy the path to your `funkin` folder and run `cd the\path\you\copied`. Then follow the guide starting from **Step 4**.
|
||||
- Check that your `assets` folder is not empty! If it is, go back to **Step 4** and follow the guide from there.
|
||||
- The compilation process often fails due to having the wrong versions of the required libraries. Many errors can be resolved by deleting the `.haxelib` folder and following the guide starting from **Step 5**.
|
||||
If you experience any issues during the compilation process, DO NOT open an issue on GitHub. Instead, check the [Troubleshooting Guide](TROUBLESHOOTING.md) for steps on how to resolve common problems.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Troubleshooting Common Issues
|
||||
# Troubleshooting Common Compilation Issues
|
||||
|
||||
- Weird macro error with a very tall call stack: Restart Visual Studio Code
|
||||
- NOTE: This is caused by Polymod somewhere, and seems to only occur when there is another compile error somewhere in the program. There is a bounty up for it.
|
||||
|
@ -13,3 +13,11 @@
|
|||
|
||||
- `LINK : fatal error LNK1201: error writing to program database ''; check for insufficient disk space, invalid path, or insufficient privilege`
|
||||
- This error occurs if the PDB file located in your `export` folder is in use or exceeds 4 GB. Try deleting the `export` folder and building again from scratch.
|
||||
|
||||
- `error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)`
|
||||
- This error can happen during cloning as a result of poor network connectivity. A common fix is to run ` git config --global http.postBuffer 4096M` in your terminal.
|
||||
|
||||
- Repository is missing an `assets` folder, or `assets` folder is empty.
|
||||
- You did not clone the repository correctly! Copy the path to your `funkin` folder and run `cd the\path\you\copied`. Then follow the compilation guide starting from **Step 4**.
|
||||
|
||||
- Other compilation issues may be caused by installing bad library versions. Try deleting the `.haxelib` folder and following the guide starting from **Step 5**.
|
||||
|
|
|
@ -1993,6 +1993,7 @@ class PlayState extends MusicBeatSubState
|
|||
|
||||
// Skip this if the music is paused (GameOver, Pause menu, start-of-song offset, etc.)
|
||||
if (!(FlxG.sound.music?.playing ?? false)) return;
|
||||
|
||||
var timeToPlayAt:Float = Conductor.instance.songPosition - Conductor.instance.instrumentalOffset;
|
||||
FlxG.sound.music.pause();
|
||||
vocals.pause();
|
||||
|
|
|
@ -33,7 +33,7 @@ class HealthIcon extends FunkinSprite
|
|||
* The character this icon is representing.
|
||||
* Setting this variable will automatically update the graphic.
|
||||
*/
|
||||
public var characterId(default, set):Null<String>;
|
||||
public var characterId(default, set):String = Constants.DEFAULT_HEALTH_ICON;
|
||||
|
||||
/**
|
||||
* Whether this health icon should automatically update its state based on the character's health.
|
||||
|
@ -116,7 +116,7 @@ class HealthIcon extends FunkinSprite
|
|||
*/
|
||||
static final POSITION_OFFSET:Int = 26;
|
||||
|
||||
public function new(char:String = 'bf', playerId:Int = 0)
|
||||
public function new(char:Null<String>, playerId:Int = 0)
|
||||
{
|
||||
super(0, 0);
|
||||
this.playerId = playerId;
|
||||
|
@ -131,7 +131,7 @@ class HealthIcon extends FunkinSprite
|
|||
snapToTargetSize();
|
||||
}
|
||||
|
||||
function set_characterId(value:Null<String>):Null<String>
|
||||
function set_characterId(value:Null<String>):String
|
||||
{
|
||||
if (value == characterId) return value;
|
||||
|
||||
|
@ -412,20 +412,9 @@ class HealthIcon extends FunkinSprite
|
|||
}
|
||||
}
|
||||
|
||||
function correctCharacterId(charId:Null<String>):String
|
||||
function iconExists(charId:String):Bool
|
||||
{
|
||||
if (charId == null)
|
||||
{
|
||||
return Constants.DEFAULT_HEALTH_ICON;
|
||||
}
|
||||
|
||||
if (!Assets.exists(Paths.image('icons/icon-$charId')))
|
||||
{
|
||||
FlxG.log.warn('No icon for character: $charId : using default placeholder face instead!');
|
||||
return Constants.DEFAULT_HEALTH_ICON;
|
||||
}
|
||||
|
||||
return charId;
|
||||
return Assets.exists(Paths.image('icons/icon-$charId'));
|
||||
}
|
||||
|
||||
function isNewSpritesheet(charId:String):Bool
|
||||
|
@ -435,11 +424,11 @@ class HealthIcon extends FunkinSprite
|
|||
|
||||
function loadCharacter(charId:Null<String>):Void
|
||||
{
|
||||
if (charId == null || correctCharacterId(charId) != charId)
|
||||
if (charId == null || !iconExists(charId))
|
||||
{
|
||||
// This will recursively trigger loadCharacter to be called again.
|
||||
characterId = correctCharacterId(charId);
|
||||
return;
|
||||
FlxG.log.warn('No icon for character: $charId : using default placeholder face instead!');
|
||||
characterId = Constants.DEFAULT_HEALTH_ICON;
|
||||
charId = characterId;
|
||||
}
|
||||
|
||||
isLegacyStyle = !isNewSpritesheet(charId);
|
||||
|
|
Loading…
Reference in a new issue