Added setSlotAlpha to Spine 3 plugin

This commit is contained in:
Richard Davey 2024-02-01 14:02:10 +00:00
parent b3722b1989
commit 2d6594cb18

View file

@ -284,6 +284,8 @@ var SpineGameObject = new Class({
*
* Alpha values are provided as a float between 0, fully transparent, and 1, fully opaque.
*
* To set the alpha of a specific attachment, use the `setSlotAlpha` method instead.
*
* @method SpineGameObject#setAlpha
* @since 3.19.0
*
@ -291,23 +293,42 @@ var SpineGameObject = new Class({
*
* @return {this} This Game Object instance.
*/
setAlpha: function (value, slotName)
setAlpha: function (value)
{
if (value === undefined) { value = 1; }
if (slotName)
this.alpha = value;
return this;
},
/**
* Set the Alpha level for the given attachment slot.
*
* The alpha controls the opacity of the slot as it renders.
*
* Alpha values are provided as a float between 0, fully transparent, and 1, fully opaque.
*
* To set the alpha for the whole skeleton, use the `setAlpha` method instead.
*
* @method SpineGameObject#setSlotAlpha
* @since 3.80.0
*
* @param {string} slotName - The name of the slot to find.
* @param {number} [value=1] - The alpha value used for the slot.
*
* @return {this} This Game Object instance.
*/
setSlotAlpha: function (value, slotName)
{
if (value === undefined) { value = 1; }
var slot = this.findSlot(slotName);
if (slot)
{
slot.color.a = Clamp(value, 0, 1);
}
}
else
{
this.alpha = value;
}
return this;
},
@ -995,6 +1016,8 @@ var SpineGameObject = new Class({
{
this.setAnimation(0, animationName, loop, ignoreIfPlaying);
this.preUpdate(0, 16.66667);
return this;
},