Changeset 19331

Show
Ignore:
Timestamp:
09/15/08 17:15:58 (5 years ago)
Author:
tekisuke
Message:

lang/actionscript/flmml/: ゲートタイム指定2 @q を追加。

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

Legend:

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

    r18868 r19331  
    186186                    m_tracks[m_trackNo].recLPF(swt, amt, frq, res); 
    187187                } 
     188                break; 
     189            case 'q': // gate time 2 
     190                next(); 
     191                m_tracks[m_trackNo].recGate2(getUInt(2) * 2); // '*2' according to TSSCP 
    188192                break; 
    189193            default: 
  • lang/actionscript/flmml/trunk/src/com/txt_nifty/sketch/flmml/MTrack.as

    r15293 r19331  
    1111        private var m_volume:int;         // default volume    (max:127) 
    1212        private var m_gate:Number;        // default gate time (max:1.0) 
     13        private var m_gate2:int;          // gate time 2 
    1314        private var m_events:Array;       // 
    1415        private var m_pointer:int;        // current event no. 
     
    2627            playTempo(120); 
    2728            m_volume             = 100; 
    28             m_gate               = 15/16; 
     29            recGate(15/16); 
    2930            m_events             = new Array(); 
    3031            m_pointer = 0; 
     
    195196            var e1:MEvent = new MEvent(); 
    196197            if (keyoff) { 
    197                 var gate:int = (int)(len * m_gate); 
     198                var gate:int; 
     199                gate = (m_gate2 < 0) ? (int)(len * m_gate) : (len - m_gate2); 
     200                if (gate <= 0) gate = 0; 
    198201                seek(gate); 
    199202                e1.setNoteOff(noteNo, vel); 
     
    255258        public function recGate(gate:Number):void { 
    256259            m_gate = gate; 
     260            m_gate2 = -1; 
     261        } 
     262 
     263        public function recGate2(gate2:int):void { 
     264            m_gate2 = gate2; 
    257265        } 
    258266