// パーティクルの初期化 void ResultSlimeObject::initParticle() { //メインで作った色を取得 StageNumber stageNumber; ResultData stageColor; int stageNum = stageNumber.loadStageNumber(); int colorR = stageColor.readColorR( stageNum ); int colorG = stageColor.readColorG( stageNum ); int colorB = stageColor.readColorB( stageNum ); // パーティクルの生成に必要な設定記述子を生成する。 LiquidFunParticleDescCreator creator; LiquidFunParticleDesc particleDesc { creator.createParticleDesc( 10.0f ) }; LiquidFunParticleGroupDesc groupDesc { creator.createParticleGroupDesc( Color3B( colorR, colorG, colorB ), { 360, 1280 }, PARTICLE_TYPE, 160, 120 ) }; // パーティクルを装着する。 mParticle = LiquidFunParticleSettlor::attachParticle( particleDesc ); mParticleGroup = LiquidFunParticleSettlor::attachParticleGroup( mParticle, groupDesc ); // 液体挙動を無効化する。 //disableLiquidBehavior(); }
void ResultEvaluation::playAnimation(){ Evaluation* e = Evaluation::create(); addChild( e ); Sequence* animation = nullptr; StageNumber stageNumber; ResultData resultData; int stageNum = stageNumber.loadStageNumber(); int ColorR = resultData.readColorR( stageNum ); int ColorG = resultData.readColorG( stageNum ); int ColorB = resultData.readColorB( stageNum ); if ( e->getTag() == EvaluationTag::BAD ){ animation = Sequence::create( DelayTime::create( 0.5f ), CallFunc::create( [ = ] (){ mIsAnimation = true; Sprite* sprite = Sprite::create("Texture/GameResult/" + EvaluationPath.at( EvaluationTag::BAD ) + ".png" ); sprite->setColor( Color3B( ColorR, ColorG, ColorB ) ); //sprite->setPosition( 360, 930 ); ADX2Player::getInstance().play( 9 ); sprite->setAnchorPoint( Vec2::ANCHOR_MIDDLE ); this->addChild(sprite); }), nullptr); } if ( e->getTag() == EvaluationTag::GOOD ){ animation = Sequence::create( DelayTime::create( 0.5f ), CallFunc::create( [ = ] (){ mIsAnimation = true; Sprite* sprite = Sprite::create("Texture/GameResult/" + EvaluationPath.at( EvaluationTag::GOOD ) + ".png" ); sprite->setColor( Color3B( ColorR, ColorG, ColorB ) ); //sprite->setPosition( 360, 930 ); ADX2Player::getInstance().play( 9 ); sprite->setAnchorPoint( Vec2::ANCHOR_MIDDLE ); this->addChild(sprite); }), nullptr); } if ( e->getTag() == EvaluationTag::EXCELLENT ){ animation = Sequence::create( DelayTime::create( 0.5f ), CallFunc::create( [ = ] (){ mIsAnimation = true; Sprite* sprite = Sprite::create("Texture/GameResult/" + EvaluationPath.at( EvaluationTag::EXCELLENT ) + ".png" ); sprite->setColor( Color3B( ColorR, ColorG, ColorB ) ); //sprite->setPosition( 360, 930 ); ADX2Player::getInstance().play( 9 ); sprite->setAnchorPoint( Vec2::ANCHOR_MIDDLE ); this->addChild(sprite); }), nullptr); } if ( e->getTag() == EvaluationTag::PERFECT ){ animation = Sequence::create( DelayTime::create( 0.5f ), CallFunc::create( [ = ] (){ mIsAnimation = true; Sprite* sprite = Sprite::create("Texture/GameResult/" + EvaluationPath.at( EvaluationTag::PERFECT ) + ".png" ); sprite->setColor( Color3B( ColorR, ColorG, ColorB ) ); //sprite->setPosition( 360, 930 ); ADX2Player::getInstance().play( 9 ); sprite->setAnchorPoint( Vec2::ANCHOR_MIDDLE ); this->addChild(sprite); }), nullptr); } animation->setTag( 0 ); this->runAction( animation ); }