diff --git a/Frameworks/Dumb/dumb/src/it/itrender.c b/Frameworks/Dumb/dumb/src/it/itrender.c index a3ce0ba0c..6b6bbbc32 100644 --- a/Frameworks/Dumb/dumb/src/it/itrender.c +++ b/Frameworks/Dumb/dumb/src/it/itrender.c @@ -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;