增加update0
This commit is contained in:
@@ -149,19 +149,20 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.X = value.X;
|
skeleton.X = value.X;
|
||||||
skeleton.Y = value.Y;
|
skeleton.Y = value.Y;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool FlipX
|
public override bool FlipX
|
||||||
{
|
{
|
||||||
get => skeleton.FlipX;
|
get => skeleton.FlipX;
|
||||||
set => skeleton.FlipX = value;
|
set { skeleton.FlipX = value; Update(0); }
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool FlipY
|
public override bool FlipY
|
||||||
{
|
{
|
||||||
get => skeleton.FlipY;
|
get => skeleton.FlipY;
|
||||||
set => skeleton.FlipY = value;
|
set { skeleton.FlipY = value; Update(0); }
|
||||||
}
|
}
|
||||||
|
|
||||||
public override string CurrentAnimation
|
public override string CurrentAnimation
|
||||||
|
|||||||
@@ -148,19 +148,20 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.X = value.X;
|
skeleton.X = value.X;
|
||||||
skeleton.Y = value.Y;
|
skeleton.Y = value.Y;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool FlipX
|
public override bool FlipX
|
||||||
{
|
{
|
||||||
get => skeleton.FlipX;
|
get => skeleton.FlipX;
|
||||||
set => skeleton.FlipX = value;
|
set { skeleton.FlipX = value; Update(0); }
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool FlipY
|
public override bool FlipY
|
||||||
{
|
{
|
||||||
get => skeleton.FlipY;
|
get => skeleton.FlipY;
|
||||||
set => skeleton.FlipY = value;
|
set { skeleton.FlipY = value; Update(0); }
|
||||||
}
|
}
|
||||||
|
|
||||||
public override string CurrentAnimation
|
public override string CurrentAnimation
|
||||||
|
|||||||
@@ -95,58 +95,12 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
|
|
||||||
public override float Scale
|
public override float Scale
|
||||||
{
|
{
|
||||||
get
|
get => Math.Abs(skeleton.ScaleX);
|
||||||
{
|
|
||||||
if (skeletonBinary is not null)
|
|
||||||
return skeletonBinary.Scale;
|
|
||||||
else if (skeletonJson is not null)
|
|
||||||
return skeletonJson.Scale;
|
|
||||||
else
|
|
||||||
return 1f;
|
|
||||||
}
|
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
// 保存状态
|
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
||||||
var position = Position;
|
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
||||||
var flipX = FlipX;
|
Update(0);
|
||||||
var flipY = FlipY;
|
|
||||||
var savedTrack0 = animationState.GetCurrent(0);
|
|
||||||
|
|
||||||
var val = Math.Max(value, SCALE_MIN);
|
|
||||||
if (skeletonBinary is not null)
|
|
||||||
{
|
|
||||||
skeletonBinary.Scale = val;
|
|
||||||
skeletonData = skeletonBinary.ReadSkeletonData(SkelPath);
|
|
||||||
}
|
|
||||||
else if (skeletonJson is not null)
|
|
||||||
{
|
|
||||||
skeletonJson.Scale = val;
|
|
||||||
skeletonData = skeletonJson.ReadSkeletonData(SkelPath);
|
|
||||||
}
|
|
||||||
|
|
||||||
// reload skel-dependent data
|
|
||||||
animationStateData = new AnimationStateData(skeletonData) { DefaultMix = animationStateData.DefaultMix };
|
|
||||||
skeleton = new Skeleton(skeletonData);
|
|
||||||
animationState = new AnimationState(animationStateData);
|
|
||||||
|
|
||||||
// 恢复状态
|
|
||||||
Position = position;
|
|
||||||
FlipX = flipX;
|
|
||||||
FlipY = flipY;
|
|
||||||
|
|
||||||
// 恢复原本 Track0 上所有动画
|
|
||||||
if (savedTrack0 is not null)
|
|
||||||
{
|
|
||||||
var entry = animationState.SetAnimation(0, savedTrack0.Animation.Name, true);
|
|
||||||
entry.TrackTime = savedTrack0.TrackTime;
|
|
||||||
var savedEntry = savedTrack0.Next;
|
|
||||||
while (savedEntry is not null)
|
|
||||||
{
|
|
||||||
entry = animationState.AddAnimation(0, savedEntry.Animation.Name, true, 0);
|
|
||||||
entry.TrackTime = savedEntry.TrackTime;
|
|
||||||
savedEntry = savedEntry.Next;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -157,6 +111,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.X = value.X;
|
skeleton.X = value.X;
|
||||||
skeleton.Y = value.Y;
|
skeleton.Y = value.Y;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -167,6 +122,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
||||||
skeleton.ScaleX *= -1;
|
skeleton.ScaleX *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -177,6 +133,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
||||||
skeleton.ScaleY *= -1;
|
skeleton.ScaleY *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -106,6 +106,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
||||||
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -116,6 +117,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.X = value.X;
|
skeleton.X = value.X;
|
||||||
skeleton.Y = value.Y;
|
skeleton.Y = value.Y;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -126,6 +128,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
||||||
skeleton.ScaleX *= -1;
|
skeleton.ScaleX *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -136,6 +139,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
||||||
skeleton.ScaleY *= -1;
|
skeleton.ScaleY *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -102,6 +102,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
||||||
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,6 +113,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.X = value.X;
|
skeleton.X = value.X;
|
||||||
skeleton.Y = value.Y;
|
skeleton.Y = value.Y;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -122,6 +124,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
||||||
skeleton.ScaleX *= -1;
|
skeleton.ScaleX *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -132,6 +135,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
||||||
skeleton.ScaleY *= -1;
|
skeleton.ScaleY *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -102,6 +102,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
||||||
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,6 +113,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.X = value.X;
|
skeleton.X = value.X;
|
||||||
skeleton.Y = value.Y;
|
skeleton.Y = value.Y;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -122,6 +124,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
||||||
skeleton.ScaleX *= -1;
|
skeleton.ScaleX *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -132,6 +135,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
||||||
skeleton.ScaleY *= -1;
|
skeleton.ScaleY *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -102,6 +102,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
skeleton.ScaleX = Math.Sign(skeleton.ScaleX) * value;
|
||||||
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
skeleton.ScaleY = Math.Sign(skeleton.ScaleY) * value;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,6 +113,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
skeleton.X = value.X;
|
skeleton.X = value.X;
|
||||||
skeleton.Y = value.Y;
|
skeleton.Y = value.Y;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -122,6 +124,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
if (skeleton.ScaleX > 0 && value || skeleton.ScaleX < 0 && !value)
|
||||||
skeleton.ScaleX *= -1;
|
skeleton.ScaleX *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -132,6 +135,7 @@ namespace SpineViewer.Spine.Implementations.Spine
|
|||||||
{
|
{
|
||||||
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
if (skeleton.ScaleY > 0 && value || skeleton.ScaleY < 0 && !value)
|
||||||
skeleton.ScaleY *= -1;
|
skeleton.ScaleY *= -1;
|
||||||
|
Update(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user