// initialize jwplayer var playerInstance = jwplayer('player'); // player dom elements var playerContainerEl = document.querySelector('.player-container'); // returns video player position from top of document function getElementOffsetTop(el) { var boundingClientRect = el.getBoundingClientRect(); var bodyEl = document.body; var docEl = document.documentElement; var scrollTop = window.pageYOffset || docEl.scrollTop || bodyEl.scrollTop; var clientTop = docEl.clientTop || bodyEl.clientTop || 0; return Math.round(boundingClientRect.top + scrollTop - clientTop); } // returns the current y scroll position function getScrollTop() { var docEl = document.documentElement; return (window.pageYOffset || docEl.scrollTop) - (docEl.clientTop || 0); } // configure jwplayer instance playerInstance.setup({ autostart: true, playlist: 'https://cdn.jwplayer.com/v2/playlists/mYdavspX', primary: 'html5', setFullscreen: true, width: '100%' }); // when jwplayer instance is ready playerInstance.on('ready', function() { var config = playerInstance.getConfig(); var utils = playerInstance.utils; // get height of player element var playerHeight = config.containerHeight; // flag determining whether close has been clicked var closed = true; // CHANGED // flag determing whether player is playing var playing = false; // ADDED // eventhandler for when close button is being pressed document.getElementsByClassName('icon-close')[0].addEventListener('click', () => { closed = true; onScrollViewHandler(); }); playerInstance.on('play', function() { closed = false; playing = true; // ADDED }).on('pause', function () { playing = false; // ADDED }).on('adPlay', function() { closed = false; // ADDED playing = true; // ADDED }).on('adPause', function() { playing = false; // ADDED }); // get player element position from top of document var playerOffsetTop = getElementOffsetTop(playerContainerEl); // set player container to match height of actual video element playerContainerEl.style.height = playerHeight + 'px'; // below we handle window scroll event without killing performance function onScrollViewHandler() { var minimized = getScrollTop() >= playerOffsetTop; if (closed && minimized) { minimized = false; jwplayer().pause(); playing = false; // ADDED } else if (!minimized && !playing) { closed = true; // ADDED } utils.toggleClass(playerContainerEl, 'player-minimize', minimized); // update the player's size so the controls are adjusted playerInstance.resize(); } // namespace for whether or not we are waiting for setTimeout() to finish var isScrollTimeout = false; // window onscroll event handler window.onscroll = function() { // skip if we're waiting on a scroll update timeout to finish if (isScrollTimeout) return; // flag that a new timeout will begin isScrollTimeout = true; // otherwise, call scroll event view handler onScrollViewHandler(); // set new timeout setTimeout(function() { // reset timeout flag to false (no longer waiting) isScrollTimeout = false; }, 80); }; });

The Call of Duty League has announced a new schedule and additional details for their 2020 season after announcing in later December a change in the league’s structure to return to a format legacy to Call of Duty esports.

The league has revealed that there will be less events overall in 2020 compared to the initial home stead season schedule, but the overall format will be familiar to the legacy of Call of Duty esports.

Here’s the details on the new format for the league, direct from the CDL team:

Beginning at Launch Weekend in Minneapolis on Jan 24-26, and throughout the entirety of the 2020 regular season, all teams will earn 10 CDL Points for every match won. League standings will be determined by the total amount of CDL Points accumulated. At Launch Weekend, all 12 teams in the league will play two matches over the course of the three-day event.

Beginning in London on February 8, Home Series Weekend events will feature eight teams competing in a tournament bracket. The eight teams competing will be separated into two groups of four (i.e., four teams in Group A and four teams in Group B). The first-round matchups for each group will be determined ahead of each event by the League Office. Over the course of each Home Series Weekend, the four teams that have won two matches in their respective groups will advance to compete in a single-elimination bracket to determine the Home Series Weekend event winner. Teams will earn 10 CDL Points for each win. The overall Home Series Weekend event winner will also earn 10 bonus CDL Points.

Each Home Series Weekend, CDL Points will be distributed in the following structure:

  • 1st Place – 50 CDL Points
  • 2nd Place – 30 CDL Points
  • 3rd/4th Place – 20 CDL Points
  • 5th/6th Place – 10 CDL Points
  • 7th/8th Place – 0 CDL Points

Tiebreakers will be determined based on the following criteria, as needed:

  1. Teams’ Head-to-Head Match Win Percentage
  2. Teams’ Head-to-Head Game Win Percentage
  3. Teams’ Overall Game Win Percentage

Regular season CDL Points will determine which eight teams qualify for the playoffs. As a reminder, at the end of the regular season, the top eight ranked teams, including four wild card spots, will advance to the playoffs. The four wild card teams will compete in a single-elimination bracket, with two teams advancing. The two teams that advance from wild card matches will face off against the third and fourth overall seeds to start off double-elimination bracket play. The top two overall seeds will receive first-round byes when double-elimination play commences. The final two teams will compete for the Call of Duty League Championship.

The new schedule is available on the Call of Duty League website HERE. There is a reduced number of events for the season compared to what was originally announced.

The 2020 Call of Duty League season begins January 24-26 with the Launch Weekend event hosted by Minnesota Rokkr team.

SOURCE: Call of Duty League

comments below