示例#1
0
 private void readGrace(TGNoteEffect effect) throws IOException {
   int fret = readUnsignedByte();
   int dynamic = readUnsignedByte();
   int transition = readByte();
   int duration = readUnsignedByte();
   int flags = readUnsignedByte();
   TGEffectGrace grace = new TGEffectGrace();
   grace.setFret(fret);
   grace.setDynamic(
       (TGVelocities.MIN_VELOCITY + (TGVelocities.VELOCITY_INCREMENT * dynamic))
           - TGVelocities.VELOCITY_INCREMENT);
   grace.setDuration(duration);
   grace.setDead((flags & 0x01) != 0);
   grace.setOnBeat((flags & 0x02) != 0);
   if (transition == 0) {
     grace.setTransition(Transition.NONE);
   } else if (transition == 1) {
     grace.setTransition(Transition.SLIDE);
   } else if (transition == 2) {
     grace.setTransition(Transition.BEND);
   } else if (transition == 3) {
     grace.setTransition(Transition.HAMMER);
   }
   effect.setGrace(grace);
 }
 private void readGrace(TGNoteEffect effect) throws IOException {
   int fret = readUnsignedByte();
   TGEffectGrace grace = getFactory().newEffectGrace();
   grace.setOnBeat(false);
   grace.setDead((fret == 255));
   grace.setFret(((!grace.isDead()) ? fret : 0));
   grace.setDynamic(
       (TGVelocities.MIN_VELOCITY + (TGVelocities.VELOCITY_INCREMENT * readUnsignedByte()))
           - TGVelocities.VELOCITY_INCREMENT);
   int transition = readUnsignedByte();
   if (transition == 0) {
     grace.setTransition(TGEffectGrace.TRANSITION_NONE);
   } else if (transition == 1) {
     grace.setTransition(TGEffectGrace.TRANSITION_SLIDE);
   } else if (transition == 2) {
     grace.setTransition(TGEffectGrace.TRANSITION_BEND);
   } else if (transition == 3) {
     grace.setTransition(TGEffectGrace.TRANSITION_HAMMER);
   }
   grace.setDuration(readUnsignedByte());
   effect.setGrace(grace);
 }
示例#3
0
  private TGEffectGrace readGraceEffect() {
    int header = readHeader();

    TGEffectGrace effect = this.factory.newEffectGrace();

    effect.setDead((header & GRACE_FLAG_DEAD) != 0);

    effect.setOnBeat((header & GRACE_FLAG_ON_BEAT) != 0);

    // leo el fret
    effect.setFret(readByte());

    // leo la duracion
    effect.setDuration(readByte());

    // leo el velocity
    effect.setDynamic(readByte());

    // leo la transicion
    effect.setTransition(readByte());

    return effect;
  }