Online Sequencer Forums

Full Version: Offline Sequencer
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6
(04-02-2019, 10:57 AM)theboiidonitello Wrote: [ -> ]
(04-14-2018, 09:55 PM)dfhwze Wrote: [ -> ]Wink hey p.s. im severely stupid so can you explain how to plug this script in?Are we allowed to try to add some tools to it and reupload?

edit: my song reversal tool is available \o/

Code:
'reverse': {
           name: 'Reverse',
           action: function () {
               var reverseNotes = function (measureLength) {
                   /* get time index of last note that ends */
                   var lastNoteEndExact = 0;
                   for (i = 0; i < song.notes.length; i++) {
                       var note = song.notes[i];
                       if (isNumber(note.time) && isNumber(note.length) && note.time + note.length > lastNoteEndExact) {
                           lastNoteEndExact = note.time + note.length;
                       }
                   }
                   /* determine time index of end of song based on last note and grid measures */
                   var lastNoteEnd = Math.floor(lastNoteEndExact);
                   var songEnd = lastNoteEnd - lastNoteEnd % measureLength;
                   songEnd += lastNoteEndExact > songEnd ? measureLength : 0;
                   /* reverse all notes in time */
                   for (i = 0; i < song.notes.length; i++) {
                       var note = song.notes[i];
                       if (isNumber(note.time) && isNumber(note.length)) {
                           var newTime = songEnd - note.time - note.length;
                           song.moveNote(
                                    note,
                                    note.instrument,
                                    note.instrument,
                                    note.time,
                                    newTime,
                                    note.type,
                                    note.type);
                           song.update(note);
                       }
                   }
                   keySelect.selectedIndex = 0;
                   keySelect.onchange();
               }
               /* grid measure is by default 16 (4 beats of 4 '1/4th' notes) */
               /* TODO calculate measureLength from current grid settings */
               reverseNotes(16);
           }
       },

In the console of your browser, copy-paste the code, and press enter while on the Online Sequencer tab.
(04-02-2019, 10:54 AM)dfhwze Wrote: [ -> ]Update for the Online Sequencer:

Reverse Tool ->

Code:
menus[2].items.reverse = {
          name: 'Reverse',
          action: function () {
              var reverseNotes = function (measureLength) {
                  /* get time index of last note that ends */
                  var lastNoteEndExact = 0;
                  for (i = 0; i < song.notes.length; i++) {
                      var note = song.notes[i];
                      if (isNumber(note.time) && isNumber(note.length) && note.time + note.length > lastNoteEndExact) {
                          lastNoteEndExact = note.time + note.length;
                      }
                  }
                  /* determine time index of end of song based on last note and grid measures */
                  var lastNoteEnd = Math.floor(lastNoteEndExact);
                  var songEnd = lastNoteEnd - lastNoteEnd % measureLength;
                  songEnd += lastNoteEndExact > songEnd ? measureLength : 0;
                  /* reverse all notes in time */
                  for (i = 0; i < song.notes.length; i++) {
                      var note = song.notes[i];
                      if (isNumber(note.time) && isNumber(note.length)) {
                          var newTime = songEnd - note.time - note.length;
                          song.moveNote(
                                   note,
                                   note.instrument,
                                   note.instrument,
                                   note.time,
                                   newTime,
                                   note.type,
                                   note.type);
                          song.update(note);
                      }
                  }
                  keySelect.selectedIndex = 0;
                  keySelect.onchange();
              }
              /* grid measure is by default 16 (4 beats of 4 '1/4th' notes) */
              /* TODO calculate measureLength from current grid settings */
              reverseNotes(16);
          }
      };

      menuContainer = $('#menubar_menus');
       menuContainer.empty();

       for (var i = 0; i < menus.length; i++) {
           (function(i) {
               var menu = menus[i];
               var menuTitle = menu.name
               var menuElement = $('<div id="menu_' + menu.name + '" class="menu_title">' + menu.name + '</div>');
               createMenuPopup(menuElement, menuElement, menu);
               menuContainer.append(menuElement);
           })(i);
       }

Hope it works now...
(04-02-2019, 10:17 AM)dfhwze Wrote: [ -> ]
(04-01-2019, 02:11 PM)Sir_Guy Wrote: [ -> ]Is there a way to add the "new" Eguitar with code in this?

Is there a new instrument?
It was updated after the WU, I think. The old one sounds like the intro to The Day That Never Comes
Forgot to thank you, Jacob_, I use this too much.

How do I add those code things, Frank?
there better be hidden intruments
They are there, though I never found the hidden instruments to be useful
(11-11-2019, 12:06 PM)fox Wrote: [ -> ]frank's os clone: https://offline-os.glitch.me/
is there a download?
(05-13-2020, 11:24 PM)technoAptitude Wrote: [ -> ]
(11-11-2019, 12:06 PM)fox Wrote: [ -> ]frank's os clone: https://offline-os.glitch.me/
is there a download?
you can download it with a website downloader, but be cautious  which one you pick to download it to your desktop
Finally, online sequencer without wifi but without having to go through that eternal dinosaur game!
Pages: 1 2 3 4 5 6