private void tweenBone(com.brashmonkey.spriter.objects.SpriterBone currentBone, com.brashmonkey.spriter.objects.SpriterBone
			 nextBone, int i, long startTime, long endTime)
        {
            currentBone.copyValuesTo(this.tempBones[i]);
            this.tempBones[i].setTimeline((nextBone != null) ? currentBone.getTimeline() : -1
                );
            com.brashmonkey.spriter.objects.SpriterAbstractObject parent = (this.tempBones[i]
                .hasParent()) ? this.tempBones[this.tempBones[i].getParentId()] : this.tempParent;
            if (nextBone != null)
            {
                if (parent != this.tempParent)
                {
                    if (!currentBone.getParent().equals(nextBone.getParent()))
                    {
                        nextBone = (com.brashmonkey.spriter.objects.SpriterBone)this.getTimelineObject(currentBone
                            , this.tempBones2);
                        com.brashmonkey.spriter.SpriterCalculator.reTranslateRelative(parent, nextBone);
                        nextBone.setAngle(nextBone.getAngle() * this.flippedX * this.flippedY);
                    }
                }
                else
                {
                    if (nextBone.hasParent())
                    {
                        nextBone = (com.brashmonkey.spriter.objects.SpriterBone)this.getTimelineObject(currentBone
                            , this.tempBones2);
                        com.brashmonkey.spriter.SpriterCalculator.reTranslateRelative(parent, nextBone);
                        nextBone.setAngle(nextBone.getAngle() * this.flippedX * this.flippedY);
                    }
                }
                if (this.tempBones[i].tween)
                {
                    this.interpolateAbstractObject(this.tempBones[i], currentBone, nextBone, startTime
                        , endTime);
                }
            }
            this.moddedBones[currentBone.getId()].modSpriterBone(this.tempBones[i]);
            if (this.transitionFixed)
            {
                this.tempBones[i].copyValuesTo(this.lastFrame.getBones()[i]);
            }
            else
            {
                this.tempBones[i].copyValuesTo(this.lastTempFrame.getBones()[i]);
            }
            if (!this.tempBones[i].hasParent() || !this.moddedBones[currentBone.getId()].isActive
                ())
            {
                this.tempBones[i].setX(this.tempBones[i].getX() + this.pivotX);
                this.tempBones[i].setY(this.tempBones[i].getY() + this.pivotY);
            }
            this.translateRelative(this.tempBones[i], parent);
        }
Esempio n. 2
0
        protected internal override void updateBone(com.brashmonkey.spriter.objects.SpriterBone
			 bone)
        {
            base.updateBone(bone);
            bone.copyValuesTo(temp);
            com.brashmonkey.spriter.objects.SpriterAbstractObject parent = (bone.hasParent())
                 ? getRuntimeBones()[bone.getParent().getId()] : this.tempParent;
            com.brashmonkey.spriter.SpriterCalculator.reTranslateRelative(parent, temp);
            temp.copyValuesTo(this.lastFrame.getBones()[temp.getId()]);
        }
        private void tweenObject(com.brashmonkey.spriter.objects.SpriterObject currentObject
			, com.brashmonkey.spriter.objects.SpriterObject nextObject, int i, long startTime
			, long endTime)
        {
            com.brashmonkey.spriter.draw.DrawInstruction dI = this.instructions[i];
            currentObject.copyValuesTo(this.tempObjects[i]);
            com.brashmonkey.spriter.objects.SpriterAbstractObject parent = null;
            if (!currentObject.isTransientObject())
            {
                this.tempObjects[i].setTimeline((nextObject != null) ? currentObject.getTimeline(
                    ) : -1);
                parent = (currentObject.hasParent()) ? this.tempBones[currentObject.getParentId()
                    ] : this.tempParent;
                if (nextObject != null)
                {
                    if (parent != this.tempParent)
                    {
                        if (!currentObject.getParent().equals(nextObject.getParent()))
                        {
                            nextObject = (com.brashmonkey.spriter.objects.SpriterObject)this.getTimelineObject
                                (currentObject, this.tempObjects2);
                            com.brashmonkey.spriter.SpriterCalculator.reTranslateRelative(parent, nextObject);
                            nextObject.setAngle(nextObject.getAngle() * this.flippedX * this.flippedY);
                        }
                    }
                    else
                    {
                        if (nextObject.hasParent())
                        {
                            nextObject = (com.brashmonkey.spriter.objects.SpriterObject)this.getTimelineObject
                                (currentObject, this.tempObjects2);
                            com.brashmonkey.spriter.SpriterCalculator.reTranslateRelative(parent, nextObject);
                            nextObject.setAngle(nextObject.getAngle() * this.flippedX * this.flippedY);
                        }
                    }
                    if (this.tempObjects[i].tween)
                    {
                        this.interpolateSpriterObject(this.tempObjects[i], currentObject, nextObject, startTime
                            , endTime);
                    }
                }
                this.moddedObjects[currentObject.getId()].modSpriterObject(this.tempObjects[i]);
                if (this.transitionFixed)
                {
                    this.tempObjects[i].copyValuesTo(this.lastFrame.getObjects()[i]);
                }
                else
                {
                    this.tempObjects[i].copyValuesTo(this.lastTempFrame.getObjects()[i]);
                }
            }
            else
            {
                parent = this.tempParent;
            }
            if (!this.tempObjects[i].hasParent())
            {
                this.tempObjects[i].setX(this.tempObjects[i].getX() + this.pivotX);
                this.tempObjects[i].setY(this.tempObjects[i].getY() + this.pivotY);
            }
            this.translateRelative(this.tempObjects[i], parent);
            if (this.moddedObjects[currentObject.getId()].getRef() != null)
            {
                this.tempObjects[i].setRef(this.moddedObjects[currentObject.getId()].getRef());
            }
            /*if (this.moddedObjects[currentObject.getId()].getLoader() != null)
            {
                this.tempObjects[i].setLoader(this.moddedObjects[currentObject.getId()].getLoader
                    ());
            }*/
            this.tempObjects[i].copyValuesTo(dI);
            this.setInstructionRef(dI, this.tempObjects[i], nextObject);
        }