// 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 latest Game Settings Update for Call of Duty: Black Ops 4 is live on all platforms earlier today.

Treyarch has shared the patch notes on Reddit, alongside an update on what they’re tracking for Global Server Performance issues in Call of Duty: Black Ops 4 across all modes of play.

Here’s the latest from Treyarch:

A note to our players experiencing low server populations in certain areas of the world, particularly South America and South Africa. Earlier this week, we rolled out an update to ensure Blackout matches always start up in these regions despite server population, and we’re constantly working to improve the online experience. We’ve also been rolling out network updates over the past two weeks to improve server performance around the globe. If you’re still experiencing problems with getting into a Blackout match in your region, let us know in the comments below. We’re always listening and working behind the scenes to make sure everyone in the Black Ops 4 community can have the best experience possible, regardless of where they live.

Global:

Blackout

  • Performance
    • Resolved an issue that caused hitching when playing in Quads.

Multiplayer

  • Miscellaneous
    • Added a message to the Defeat screen to clarify that losses are not (and have not been) counted when losing a game that was joined in progress.
    • Resolved an issue in Gun Game where the end-of-match screen would display “Top 3” even if the player was not in the Top 3.
    • Players who unlock the Marksman Mastery Challenge will now receive the XP Reward.
  • Create-a-Class
    • Resolved an exploit where Create-a-Class changes in Custom Games could be carried over into Public Matches.

General

  • Miscellaneous
    • Added UI elements to help players find new items in their inventory.
    • Added new playlist images in the Lobby for various Hardcore game modes.
    • Resolved an issue where the game’s version number could overlap with the player name on various menu screens.
    • Resolved a UI error message that occurred when Black Ops Pass owners skipped the prompt to redeem their bonus.

Details on the PC specific changes in today’s update is available here.

SOURCE: Reddit

comments below