1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2025-09-04 04:38:09 +00:00

Compare commits

..

No commits in common. "f7daadb5c570572c1a6747cda40e8181a9cf9bf0" and "ba201f4b66e6867f0b9ae71e098f021002eca3c9" have entirely different histories.

6 changed files with 15 additions and 87 deletions

View file

@ -103,10 +103,6 @@ class PlayerFreeplayDJData
var assetPath:String;
var animations:Array<AnimationData>;
@:optional
@:default(false)
var legacyBoundsPosition:Bool;
@:optional
@:default("BOYFRIEND")
var text1:String;
@ -158,11 +154,6 @@ class PlayerFreeplayDJData
return assetPath;
}
public function useLegacyBoundsPosition():Bool
{
return legacyBoundsPosition;
}
public function getFreeplayDJText(index:Int):String
{
switch (index)
@ -343,10 +334,6 @@ typedef PlayerResultsAnimationData =
*/
var renderType:String;
@:optional
@:default(false)
var legacyBoundsPosition:Bool;
@:optional
var assetPath:Null<String>;

View file

@ -86,12 +86,6 @@ typedef AtlasSpriteSettings =
*/
@:optional
var applyStageMatrix:Bool;
/**
* Whether to use legacy bounds positioning.
*/
@:optional
var legacyBoundsPosition:Bool;
}
/**
@ -102,25 +96,6 @@ typedef AtlasSpriteSettings =
@:nullSafety
class FunkinSprite extends FlxAnimate
{
/**
* NOTE: This will only work on texture atlases.
*
* If enabled, the sprite will be offset using the bounds origin.
* This imitates the behavior of the legacy bounds FlxAnimate had.
* Turning this on is not recommended, only use this if you know what you're doing.
* It's also worth noting that not all atlases will react correctly, some may need position tweaks.
*/
public var legacyBoundsPosition(default, set):Bool = false;
public function set_legacyBoundsPosition(value:Bool):Bool
{
if (!this.isAnimate) return false;
this.legacyBoundsPosition = value;
this.applyStageMatrix = value;
return value;
}
/**
* @param x Starting X position
* @param y Starting Y position
@ -133,7 +108,7 @@ class FunkinSprite extends FlxAnimate
override function initVars():Void
{
super.initVars();
// TODO: Make `animation` a stub that redirects calls to `mainSprite`?
var newController:FunkinAnimationController = new FunkinAnimationController(this);
animation = newController;
@ -307,8 +282,7 @@ class FunkinSprite extends FlxAnimate
cacheKey: settings?.cacheKey ?? null,
uniqueInCache: settings?.uniqueInCache ?? false,
onSymbolCreate: settings?.onSymbolCreate ?? null,
legacyBoundsPosition: settings?.legacyBoundsPosition ?? false,
applyStageMatrix: (settings?.applyStageMatrix ?? false || settings?.legacyBoundsPosition ?? false)
applyStageMatrix: settings?.applyStageMatrix ?? false
};
var assetLibrary:String = assetLibrary ?? "";
@ -330,7 +304,6 @@ class FunkinSprite extends FlxAnimate
}
this.applyStageMatrix = validatedSettings.applyStageMatrix ?? false;
this.legacyBoundsPosition = validatedSettings.legacyBoundsPosition ?? false;
frames = FlxAnimateFrames.fromAnimate(funkin.Assets.getPath(graphicKey), validatedSettings.spritemaps, validatedSettings.metadataJson,
validatedSettings.cacheKey, validatedSettings.uniqueInCache, {
@ -643,12 +616,6 @@ class FunkinSprite extends FlxAnimate
_rect.height = _rect.height * this.scale.y;
}
if (legacyBoundsPosition && this.isAnimate)
{
result.x += this.timeline.getBoundsOrigin().x;
result.y += this.timeline.getBoundsOrigin().y;
}
return result.subtract(camera.scroll.x * scrollFactor.x, camera.scroll.y * scrollFactor.y);
}

View file

@ -231,11 +231,6 @@ class ResultState extends MusicBeatSubState
if (animation == null) continue;
if (animData?.legacyBoundsPosition ?? false)
{
animation.legacyBoundsPosition = true;
}
animation.zIndex = animData.zIndex ?? 500;
animation.scale.set(animData.scale ?? 1.0, animData.scale ?? 1.0);

View file

@ -108,10 +108,7 @@ class CharSelectGF extends FunkinSprite implements IBPMSyncedScriptedClass
else if (previousGFPath != currentGFPath)
{
this.visible = true;
frames = CharSelectAtlasHandler.loadAtlas(currentGFPath,
{
swfMode: true
});
frames = CharSelectAtlasHandler.loadAtlas(currentGFPath);
enableVisualizer = gfData?.visualizer ?? false;
}

View file

@ -20,8 +20,7 @@ class CharSelectPlayer extends FunkinSprite implements IBPMSyncedScriptedClass
loadTextureAtlas("charSelect/bfChill",
{
applyStageMatrix: true,
swfMode: true
applyStageMatrix: true
});
anim.onFinish.add(function(animLabel:String) {

View file

@ -52,11 +52,6 @@ class FreeplayDJ extends FunkinSprite
filterQuality: HIGH
});
if (playableCharData?.useLegacyBoundsPosition() ?? false)
{
this.legacyBoundsPosition = true;
}
anim.onFrameChange.add(function(name, number, index) {
if (name == playableCharData?.getAnimationPrefix('cartoon'))
{
@ -467,37 +462,25 @@ class FreeplayDJ extends FunkinSprite
{
this.anim.play(id, Force, Reverse, Frame);
this.anim.curAnim.looped = Loop;
applyAnimationOffset();
applyAnimOffset();
}
function applyAnimationOffset():Void
function applyAnimOffset()
{
var animationName:String = getCurrentAnimation();
var animationOffsets:Null<Array<Float>> = playableCharData?.getAnimationOffsetsByPrefix(animationName);
var globalOffsets:Array<Float> = [this.x, this.y];
if (animationOffsets != null)
var AnimName = getCurrentAnimation();
var daOffset = playableCharData?.getAnimationOffsetsByPrefix(AnimName);
var daGlobalOffset = [this.x, this.y];
if (daOffset != null)
{
var finalOffsetX:Float = 0;
var finalOffsetY:Float = 0;
var xValue = daGlobalOffset[0] - daOffset[0] - (FreeplayState.CUTOUT_WIDTH * FreeplayState.DJ_POS_MULTI);
var yValue = daGlobalOffset[1] - daOffset[1];
if (this.legacyBoundsPosition)
{
finalOffsetX = animationOffsets[0];
finalOffsetY = animationOffsets[1];
}
else
{
finalOffsetX = globalOffsets[0] - animationOffsets[0] - (FreeplayState.CUTOUT_WIDTH * FreeplayState.DJ_POS_MULTI);
finalOffsetY = globalOffsets[1] - animationOffsets[1];
}
trace('Successfully applied offset ($animationName): ' + animationOffsets[0] + ', ' + animationOffsets[1]);
offset.set(finalOffsetX, finalOffsetY);
trace('Successfully applied offset ($AnimName): ' + daOffset[0] + ', ' + daOffset[1]);
offset.set(xValue, yValue);
}
else
{
trace('No offset found ($animationName), defaulting to: 0, 0');
trace('No offset found ($AnimName), defaulting to: 0, 0');
offset.set(0, 0);
}
}