SpriteAnimationItem::SpriteAnimationItem(QState *parent) : QState(parent) , m_spriteSheet(new SpriteSheet) , m_spriteAnimation(new QPropertyAnimation(this)) { connect(m_spriteSheet, SIGNAL(sourceChanged()), this, SIGNAL(sourceChanged())); connect(m_spriteSheet, SIGNAL(frameChanged()), this, SIGNAL(frameChanged())); connect(m_spriteSheet, SIGNAL(framesChanged()), this, SIGNAL(framesChanged())); connect(m_spriteSheet, SIGNAL(initialFrameChanged()), this, SIGNAL(initialFrameChanged())); connect(m_spriteAnimation, SIGNAL(finished()), this, SIGNAL(finished())); m_spriteAnimation->setTargetObject(m_spriteSheet); m_spriteAnimation->setPropertyName("frame"); m_spriteAnimation->setStartValue(0); }
void SpriteSheet::setInitialFrame(const int &initialFrame) { if (m_initialFrame != initialFrame) { m_initialFrame = initialFrame; emit initialFrameChanged(); } }