// 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); }; });

Activision and Infinity Ward have announced the launch of the Gunfight 2v2 Tournament system in a beta version inside of Call of Duty: Modern Warfare – available starting today on all platforms.

This tournament system was announced back during the 2v2 Gunfight Alpha in August as a way to compete and level up in Call of Duty: Modern Warfare’s Gunfight mode. It allows players to be match made into tournaments in a bracket structure and compete alongside a friend throughout the tournament. The brackets auto update and allow players to move up the system.

Here’s the details from Activision Blog:

Rules of Play

Gunfight is an intense cage match where players are given one life, one randomly chosen loadout, and one teammate to head into battle and eliminate the opposition. The gameplay of Gunfight remains the same during the tournament, but they are a few other things you need to know about on the road to victory.

The tournament is single elimination with 32 players, 16 teams, and 8 rounds on the way to being crowned the victor. You advance with a win or go back to the lobby with a defeat. For each victory you earn XP and other rewards. For winning the tournament for the first time you can earn a high tier cosmetic reward and XP!

The tournament is bracket style, and you’ll be able to see the teams on both sides of the bracket. You’ll wait at a menu screen before the match and have a little bit of time to choose your Operator and discuss game strategy. Afterwards you’ll load into the game and play your first round. If you win, you’ll advance to the next round. Just note, you may have to wait in the lobby until your opponent finishes their match. 

SOURCE: Activision

comments below