コード例 #1
0
ファイル: SoundBoard.java プロジェクト: NicolasFrd/tripleplay
 public void updateVolume(float volume) {
   if (isPlaying()) {
     float effectiveVolume = volume * _volume;
     if (effectiveVolume > 0) sound.setVolume(effectiveVolume);
     else sound.stop();
   }
 }
コード例 #2
0
ファイル: SoundBoard.java プロジェクト: NicolasFrd/tripleplay
 protected Sound prepareSound() {
   if (sound == null) {
     sound = loadSound(path());
     sound.prepare();
   }
   sound.setVolume(volume.get() * _volume);
   return sound;
 }
コード例 #3
0
ファイル: SoundBoard.java プロジェクト: NicolasFrd/tripleplay
 @Override
 public void release() {
   if (sound != null) {
     if (sound.isPlaying()) sound.stop();
     sound.release();
     sound = null;
   }
 }
コード例 #4
0
ファイル: Player.java プロジェクト: kotucz/ld26
  public void jump() {
    Vec2 linearVelocity = getBody().getLinearVelocity();
    linearVelocity.y = JUMP_SPEED;
    getBody().setLinearVelocity(linearVelocity);

    SOUND_JUMP.play();
  }
コード例 #5
0
ファイル: Level.java プロジェクト: neshaug/drawthelines
 private void complete() {
   complete = true;
   final Surface surface = surfaceLayer.surface();
   surface.clear();
   surface.drawImage(image, 20, 20, surface.width(), surface.height());
   if (sound != null) {
     sound.play();
   }
 }
コード例 #6
0
ファイル: Player.java プロジェクト: kotucz/ld26
 @Override
 public void update(float delta) {
   super.update(delta);
   if (getBody().getPosition().y > 16) {
     PlayN.log().debug("Fallen!");
     SOUND_OUCH.play();
     dead = true;
   }
 }
コード例 #7
0
ファイル: Player.java プロジェクト: kotucz/ld26
 @Override
 public void contact(PhysicsEntity other) {
   if (other instanceof Spike) {
     PlayN.log().debug("Ouch!");
     SOUND_OUCH.play();
     dead = true;
   } else if (other instanceof Block) {
     Block block = (Block) other;
     if (!block.isCollidable()) {
       exitReached = true;
     }
   }
 }
コード例 #8
0
ファイル: SoundBoard.java プロジェクト: NicolasFrd/tripleplay
    protected void startFadeIn(final float fadeMillis) {
      if (!isPlaying()) prepareSound().play();
      sound.setVolume(0); // start at zero, fade in from there
      _faders.add(
          new Fader() {
            @Override
            public boolean update(int delta) {
              _elapsed += delta;
              float vol = Interpolator.LINEAR.apply(0, _range, _elapsed, fadeMillis);
              updateVolume(vol);
              return (vol >= _range); // we're done when the volume hits the target
            }

            protected final float _range = volume.get();
            protected int _elapsed;
          });
    }
コード例 #9
0
ファイル: SoundBoard.java プロジェクト: NicolasFrd/tripleplay
 @Override
 public boolean isPlaying() {
   return (sound == null) ? false : sound.isPlaying();
 }
コード例 #10
0
ファイル: SoundBoard.java プロジェクト: NicolasFrd/tripleplay
 @Override
 protected Sound prepareSound() {
   Sound sound = super.prepareSound();
   sound.setLooping(true);
   return sound;
 }