1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2024-12-27 07:27:12 +00:00

Merge pull request #3005 from gamerbross/bugfix/default-face-icon

[BUGFIX] Default health icon (face) not used
This commit is contained in:
Eric 2024-09-16 18:23:23 -04:00 committed by GitHub
commit c9e2e7bef5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

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