Changeset 36869

Show
Ignore:
Timestamp:
02/27/10 20:21:21 (3 years ago)
Author:
arche
Message:

ノートオンされている間にエンベロープ設定を変更した際の挙動が変わっていたのを修正

Location:
lang/actionscript/flmml/trunk/src
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • lang/actionscript/flmml/trunk/src/com/txt_nifty/sketch/flmml/MEnvelope.as

    r36224 r36869  
    5555                                m_counter = m_timeInSamples; 
    5656                                m_currentPoint = m_envelopePoint; 
    57                                 while(m_counter >= m_currentPoint.next.time){ 
     57                                while(m_currentPoint.next != null && m_counter >= m_currentPoint.next.time){ 
    5858                                        m_currentPoint = m_currentPoint.next; 
    5959                                        m_counter -= m_currentPoint.time; 
    60                                         if(m_currentPoint.next == null){ 
    61                                                 m_currentVal = m_currentPoint.level; 
    62                                                 break; 
    63                                         }else{ 
    64                                                 m_step = (m_currentPoint.next.level - m_currentPoint.level) / m_currentPoint.next.time; 
    65                                                 m_currentVal = m_currentPoint.level; 
    66                                         } 
     60                                } 
     61                                if(m_currentPoint.next == null){ 
     62                                        m_currentVal = m_currentPoint.level; 
     63                                }else{ 
     64                                        m_step = (m_currentPoint.next.level - m_currentPoint.level) / m_currentPoint.next.time; 
     65                                        m_currentVal = m_currentPoint.level + (m_step * m_counter); 
    6766                                } 
    6867                        }