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

UPDATED – August 14: GameInformer has posted a new article briefly describing some of the customization items in Call of Duty: Modern Warfare for Operators.

The article states that entire skins will determine the entire look. Infinity Ward does not have plans to make each separate piece an item in this game.

 “We went with a system that is more of an overall skin,” multiplayer design director Geoff Smith says. “We didn’t want to deal with knee pads and the noodly bits. We’d rather do highly authored looks on those characters, rather than having to deal with, ‘Will those socks go with those gloves?’ and trying to make yourself match.”

In the build that GameInformer played, each Operator had 8 Skins to pick from, that were all unlocked through gameplay. Infinity Ward says a final number of skins has not been determined per Operator.

“We might have more or we might have less,” he says. “For me, I don’t want to ever see a skin or an incarnation of a character that’s just arbitrary to fill a number. Our focus has been, whatever customization we put in has to be completely high quality. You don’t just put it there to put a number down.”

Infinity Ward states that the studio’s priority in this game with customization is the Gunsmith, allowing weapons to be customized fully in new ways in the game.

Original Story:

GameInformer’s cover story on Call of Duty: Modern Warfare is live, and we’ve been scouring it for any new details on the new Call of Duty game.

As part of their story, GameInformer notes that Operators in Call of Duty: Modern Warfare that are in the game are unlocked via gameplay and allow players to level up to unlock new Operators in the Coalition and Allegiance factions.

Each operator has their own “various personalities, appearances, voices, executions, and skins.”

For each of the Faction, you start with Default Operator and then unlock each of the different ones through gameplay.

GameInformer states that skins for each Operator dictates the entire character’s entire look, so there’s no very specific types of customization items that can be added to each character — like shoes, hats, etc. One skin determines the entire appearance of the Operator.

SOURCE: GameInformer

comments below