MCPcopy Create free account
hub / github.com/esengine/esengine / applyValue

Method applyValue

packages/fairygui/src/core/Transition.ts:652–721  ·  view source on GitHub ↗
(item: ITransitionItem)

Source from the content-addressed store, hash-verified

650 }
651
652 private applyValue(item: ITransitionItem): void {
653 if (!item.target) return;
654 const value = item.value;
655 const target = item.target;
656
657 switch (item.type) {
658 case ETransitionActionType.XY:
659 if (target === this._owner) {
660 if (value.b1 && value.b2) target.setXY((value.f1 || 0) + this._ownerBaseX, (value.f2 || 0) + this._ownerBaseY);
661 else if (value.b1) target.x = (value.f1 || 0) + this._ownerBaseX;
662 else target.y = (value.f2 || 0) + this._ownerBaseY;
663 } else if (value.b3) {
664 if (value.b1 && value.b2) target.setXY((value.f1 || 0) * this._owner.width, (value.f2 || 0) * this._owner.height);
665 else if (value.b1) target.x = (value.f1 || 0) * this._owner.width;
666 else if (value.b2) target.y = (value.f2 || 0) * this._owner.height;
667 } else {
668 if (value.b1 && value.b2) target.setXY(value.f1 || 0, value.f2 || 0);
669 else if (value.b1) target.x = value.f1 || 0;
670 else if (value.b2) target.y = value.f2 || 0;
671 }
672 break;
673 case ETransitionActionType.Size:
674 if (!value.b1) value.f1 = target.width;
675 if (!value.b2) value.f2 = target.height;
676 target.setSize(value.f1 || 0, value.f2 || 0);
677 break;
678 case ETransitionActionType.Pivot:
679 target.setPivot(value.f1 || 0, value.f2 || 0, target.pivotAsAnchor);
680 break;
681 case ETransitionActionType.Alpha:
682 target.alpha = value.f1 || 0;
683 break;
684 case ETransitionActionType.Rotation:
685 target.rotation = value.f1 || 0;
686 break;
687 case ETransitionActionType.Scale:
688 target.setScale(value.f1 || 0, value.f2 || 0);
689 break;
690 case ETransitionActionType.Skew:
691 target.setSkew(value.f1 || 0, value.f2 || 0);
692 break;
693 case ETransitionActionType.Visible:
694 target.visible = value.visible || false;
695 break;
696 case ETransitionActionType.Transition:
697 if (this._playing && value.trans) {
698 this._totalTasks++;
699 const startTime = this._startTime > item.time ? this._startTime - item.time : 0;
700 let endTime = this._endTime >= 0 ? this._endTime - item.time : -1;
701 if (value.stopTime !== undefined && value.stopTime >= 0 && (endTime < 0 || endTime > value.stopTime)) {
702 endTime = value.stopTime;
703 }
704 value.trans.timeScale = this._timeScale;
705 value.trans._play(() => { this._totalTasks--; this.checkAllComplete(); }, value.playTimes || 1, 0, startTime, endTime, this._reversed);
706 }
707 break;
708 case ETransitionActionType.Shake:
709 target.x = target.x - (value.lastOffsetX || 0) + (value.offsetX || 0);

Callers 2

playItemMethod · 0.95
onTweenUpdateMethod · 0.95

Calls 7

checkAllCompleteMethod · 0.95
setXYMethod · 0.80
setPivotMethod · 0.80
setSkewMethod · 0.80
_playMethod · 0.80
setSizeMethod · 0.45
setScaleMethod · 0.45

Tested by

no test coverage detected