spTween Jewel::DropTo(Vector2 pos)
{
	int time = fabs(getPosition().y - pos.y) * 2;
	spTween tween = addTween(Sprite::TweenPosition(pos),time);
	state = jsDropped;
	return tween;
}
spTween Jewel::PlayAnimation()
{
	if (!(state==jsNormal && locked) )
		return 0;

	state = jsAnimation;

	string anim = jewels_ids[_id];
	return addTween(Sprite::TweenAlpha(0), 500, 1);
}
void MyButton::onEvent(Event* ev)
{
    TouchEvent* event = static_cast<TouchEvent*>(ev);
    if (ev->type == TouchEvent::TOUCH_DOWN)
        setColor(Color::Red);

    if (ev->type == TouchEvent::TOUCH_UP)
        setColor(Color::White);

    if (ev->type == TouchEvent::CLICK)
    {
        //clicked button should scale up and down
        setScale(1.0f);
        addTween(Actor::TweenScale(1.1f), 300, 1, true);
    }
}
void Jewel::SetSelected()
{
	if (state != jsNormal)
		return;

	state = jsSelected;
	spTweenQueue tween = new TweenQueue();
	old_position = getPosition();
	//setPosition(getX() + JEWEL_SIZE/2, getY() + JEWEL_SIZE/2);

	tween->add(Sprite::TweenRotation(MATH_PI * 0.1f), 100);
	tween->add(Sprite::TweenRotation(MATH_PI  * (-0.1f)), 400,-1,true);


	addTween(tween);
}
 void ExplosionEffectsManager::ExplosionEffect::run(TweensManager* tweensManager, const FinishCallback& finishCallback)
 {
     Random& random = Random::getInstance();
     
     float maxDuration = -1.0f;
     SequenceTween* longestSequence = nullptr;
     
     for (int i=0; i<N_BITS; ++i)
     {
         float angle = (i * (360.0f / N_BITS));
         auto sprite = sprites[i];
         sprite->setScale(1.0f);
         sprite->setRotation(angle);
         
         float dist = (40.0f + random.next() * 30.0f);
         Vec2 moveVector(std::cos(angle)*dist, std::sin(angle)*dist);
         Vec2 endPosition = (sprite->getPosition() + moveVector);
         
         float speed = (125.0f + random.next() * 25.0f);
         float movementDuration = (dist / speed);
         float endDelay = 0.0f;
         
         auto sequenceTween = new SequenceTween();
         auto moveAndFade = new ConcurrentTween();
         moveAndFade->addTween(new EaseTween(new MoveTween(sprite, endPosition, movementDuration), EaseFunctions::easeIn));
         moveAndFade->addTween(new RotateTween(sprite, 2.0f*speed, movementDuration));
         moveAndFade->addTween(new EaseTween(new ScaleTween(sprite, 0.25f, movementDuration), EaseFunctions::easeOut));
         sequenceTween->addTween(moveAndFade);
         sequenceTween->addTween(new DelayTween(endDelay));
         sequenceTween->addTween(new VisibilityTween(sprite, false));
         tweensManager->addTween(sequenceTween);
         
         float tweenDuration = (movementDuration + endDelay);
         if (tweenDuration > maxDuration)
         {
             maxDuration = tweenDuration;
             longestSequence = sequenceTween;
         }
     }
     
     longestSequence->addTween(new FunctionTween(finishCallback));
 }
Beispiel #6
0
void ofxTweener::addTween(float &var, float to, float time, float (ofxTransitions::*ease) (float,float,float,float), float delay, float bezierPoint){
	addTween(var,to,time,ease,delay, bezierPoint, true);
}
Beispiel #7
0
void ofxTweener::addTween(float &var, float to, float time, float (ofxTransitions::*ease) (float,float,float,float), float delay){
	addTween(var,to,time,ease,delay,0,false);
}
Beispiel #8
0
void ofxTweener::addTween(float &var, float to, float time){
	addTween(var,to,time, &ofxTransitions::easeOutExpo ,0,0,false);
}
Beispiel #9
0
void ofxTweener::addTween(float &var, float to, float time, float (ofxTransitions::*ease) (float,float,float,float), float delay, float bezierPoint, std::function<void(float *arg)> callback){
	addTween(var,to,time,ease,delay, bezierPoint, true, callback);
}
Beispiel #10
0
void ofxTweener::addTween(float &var, float to, float time, float (ofxTransitions::*ease) (float,float,float,float), std::function<void(float *arg)> callback){
	addTween(var,to,time,ease,0,0,false, callback);
}
Beispiel #11
0
void ofxTweener::addTween(float &var, float to, float time, std::function<void(float *arg)> callback){
	addTween(var,to,time, &ofxTransitions::easeOutExpo ,0,0,false, callback);
}