IT pan and pitch envelopes now carry regardless of new note action being cut

CQTexperiment
Chris Moeller 2013-11-07 19:41:01 -08:00
parent 3f12de6acd
commit 21db2de0cb
1 changed files with 6 additions and 4 deletions

View File

@ -1801,9 +1801,10 @@ static void it_retrigger_note(DUMB_IT_SIGRENDERER *sigrenderer, IT_CHANNEL *chan
else
nna = channel->playing->instrument->new_note_action;
if (!(channel->playing->flags & IT_PLAYING_SUSTAINOFF) && nna != NNA_NOTE_CUT)
if (!(channel->playing->flags & IT_PLAYING_SUSTAINOFF))
{
vol_env_tick = channel->playing->volume_envelope.tick;
if (nna != NNA_NOTE_CUT)
vol_env_tick = channel->playing->volume_envelope.tick;
pan_env_tick = channel->playing->pan_envelope.tick;
pitch_env_tick = channel->playing->pitch_envelope.tick;
envelopes_copied = 1;
@ -1910,12 +1911,13 @@ static void it_retrigger_note(DUMB_IT_SIGRENDERER *sigrenderer, IT_CHANNEL *chan
if (!channel->playing)
return;
if (!envelopes_copied && sigdata->flags & IT_USE_INSTRUMENTS && nna != NNA_NOTE_CUT) {
if (!envelopes_copied && sigdata->flags & IT_USE_INSTRUMENTS) {
for (i = 0; i < DUMB_IT_N_NNA_CHANNELS; i++) {
IT_PLAYING * playing = sigrenderer->playing[i];
if (!playing || playing->channel != channel) continue;
if (playing->flags & IT_PLAYING_SUSTAINOFF) continue;
vol_env_tick = playing->volume_envelope.tick;
if (nna != NNA_NOTE_CUT)
vol_env_tick = playing->volume_envelope.tick;
pan_env_tick = playing->pan_envelope.tick;
pitch_env_tick = playing->pitch_envelope.tick;
envelopes_copied = 1;