Exemplo n.º 1
0
  private void easterEggProgress(int eggIndex) {
    int eggsFound = 0;
    for (int i = 0; i < EGG_COUNT; i++) {
      if (mEasterEggTracker[i]) {
        eggsFound++;
      }
    }

    if (!mEasterEggTracker[eggIndex]) {
      mEasterEggTracker[eggIndex] = true;
      eggsFound++;
      // Play sound
      switch (eggsFound) {
        case 1:
          mCallback.playSoundOnce(R.raw.confirm1);
          break;
        case 2:
          mCallback.playSoundOnce(R.raw.confirm2);
          break;
        case 3:
          mCallback.playSoundOnce(R.raw.confirm3);
          break;
      }
    }

    if (eggsFound == EGG_COUNT) {
      showEasterEgg();
      // reset easter egg state
      for (int i = 0; i < EGG_COUNT; i++) {
        mEasterEggTracker[i] = false;
      }
    }
  }
Exemplo n.º 2
0
  // Make the UFO spin around and fly away
  private void easterEggInteraction() {
    mCallback.playSoundOnce(R.raw.easter_egg);

    // Fade into the distance
    ObjectAnimator anim = ObjectAnimator.ofFloat(mImageUfo, "size", 1.0f, 0f);
    anim.setInterpolator(new AccelerateInterpolator());
    anim.setDuration(ImageWithAlphaAndSize.ANIM_DURATION);
    anim.addListener(
        new Animator.AnimatorListener() {
          @Override
          public void onAnimationStart(Animator animation) {}

          @Override
          public void onAnimationEnd(Animator animation) {
            mImageUfo.setAlpha(ImageWithAlphaAndSize.INVISIBLE);
          }

          @Override
          public void onAnimationCancel(Animator animation) {}

          @Override
          public void onAnimationRepeat(Animator animation) {}
        });
    anim.start();
  }