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

Announced during the Black Ops 4 Zombies Panel at Comic Con: the ultimate Call of Duty: Black Ops 4 Collector’s Edition, the Mystery Box Edition!

The Call of Duty: Black Ops 4 Collector’s Edition includes the Black Ops 4 Mystery Box re-created in real life, which is part of the Chaos story. It makes noises when you open it that matches the game. Pre-orders for the new edition are live at many retailers, including Amazon. The Mystery Box edition is available for SRP $199.99 USD.

Here’s everything included with the Mystery Box Edition:

  • CALL OF DUTY: BLACK OPS 4 GAME – Black Ops is back! Featuring gritty, grounded Multiplayer combat, the biggest Zombies offering ever with three full undead adventures at launch, and Blackout, where the universe of Black Ops comes to life in a massive battle royale experience.
  • COLLECTIBLE ZOMBIES MYSTERY BOX – Inspired by the in-game Zombies Mystery Box, this collectible box features an eerie skeleton exterior along with frightening sounds and lighting.
  • ZOMBIES HEROES FiGPiNS™ – Get the exclusive set of our new Zombies Heroes FiGPiNs featuring Scarlett Rhodes, Bruno Delacroix, Diego Necalli, and Stanton Shaw from Call of Duty: Black Ops 4
  • 10th ANNIVERSARY ZOMBIES PUZZLE – This 1,000-piece puzzle features unique art celebrating 10 years of Treyarch Zombies history.
  • DARK HORSE ZOMBIES COMIC ISSUE #1 – This first issue of the Call of Duty: Black Ops 4 Zombies Dark Horse Comic comes with an exclusive cover only for the Mystery Box Edition. The comic series will unveil details about our Zombies Heroes’ backstories.
  • ZOMBIES LITHOGRAPHS – These three collectible lithographs commemorate Voyage of DespairIX, and Blood of the Dead, three Zombies Experiences in Call of Duty: Black Ops 4.
  • POPSOCKET™ – With its intimidating skull logo, this limited-edition Call of Duty: Black Ops 4 PopSocket is the perfect way to show off your Black Ops fandom.
  • COLLECTIBLE STEELBOOK™– Limited edition SteelBook game case featuring unique art.
  • LIMITED EDITION SPECIALIST ICON PATCHES – Call of Duty: Black Ops 4reintroduces the fan-favorite Multiplayer Specialists, each with their own unique weapon, equipment, and icons. This set of collectible patches is inspired by each of the 10 Specialists’ in-game icons.
  • BLACK OPS PASS– The Call of Duty: Black Ops 4 Black Ops Pass includes Classified — a bonus Zombies experience — available at launch, 4 additional all-new Zombies experiences, 12 Multiplayer maps, and 4 exclusive Blackout characters.
  • ADDITIONAL BONUS CONTENT

SOURCE: Activision Blog

comments below