;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Pistas 'escondidas' no dormitório revelavam os jogos de 'Round 6'; veja

Desenhos no dormitório principal davam dicas sobre os jogos de "Round 6" - Reprodução: Netflix
Desenhos no dormitório principal davam dicas sobre os jogos de "Round 6" Imagem: Reprodução: Netflix

Colaboração para Splash

11/10/2021 09h57

Maior sucesso da Netflix na atualidade, a série sul-coreana "Round 6" virou uma sensação mundial ao narrar um jogo mortal em que centenas de pessoas com problemas financeiros disputam um prêmio milionário — nos valores em reais, a quantia é de R$ 208 milhões. Na trama, os competidores precisam sobreviver a uma série de brincadeiras infantis, e aqueles que não conseguem vencer as disputas acabam morrendo.

Entre as brincadeiras mortais estão algumas das mais tradicionais da infância, como cabo de guerra, bolinhas de gude, ponte de cristal, entre outros. No entanto, os participantes não têm como prever qual será a próxima brincadeira e são pegos de surpresa.

Porém, de acordo com um vídeo publicado no canal do YouTube do ScreenRant, o que os competidores de "Round 6" não perceberam é que as dicas sobre todos os jogos estavam o tempo todo "na frente deles".

Segundo o noticioso, há várias pistas "escondidas" nas paredes do dormitório principal em que os personagens são colocados para competirem entre si, que indicam quais serão as brincadeiras da narrativa, inclusive em ordem de acontecimento, ou seja, da primeira até a última. Caso tivessem se tocado, isso poderia auxiliá-los a montarem melhores estratégias de jogo e, portanto, de sobrevivência.

No começo da disputa, como há muitas camas no local, fica difícil para os jogadores — e até mesmo o público — perceber. Entretanto, na medida em que dezenas deles vão morrendo, e o espaço fica vazio, as pistas, ou melhor, os desenhos, se tornam mais perceptíveis.

"Round 6" pode ter segunda temporada, diz criador

Hwang Dong-hyuk, criador de "Round 6" ainda não confirma, mas já ite que está planejando reuniões com executivos da Netflix sobre uma possível segunda temporada da série, que é sucesso no Brasil e no mundo todo. O diretor falou sobre os planos em sua primeira entrevista ao Brasil, publicada pelo jornal O Globo.

"Penso que, se fizer, será em cima da tentativa de Gi-hun (Lee Jung-jae) em achar as pessoas que fazem parte do jogo, como o homem com quem ele brincou com o papel. Acho que tentaria encontrá-lo. Há também a história do policial, se ele está vivo ou não. Mas são só ideias."

Vale lembrar que 'Round 6' começou como uma ideia em 2008, muito antes do lançamento do longa japonês que a série supostamente teria plagiado. Na época, Hwang morava com a mãe e a avó e concebeu a história pensando na disparidade social que ele mesmo observava (e vivia) entre ricos e pobres.

Durante alguns anos, Hwang tentou oferecer a ideia para alguns estúdios. Primeiro, como um filme. No entanto, o roteiro era sempre rejeitado.
A extrema violência dos jogos e a execução fantasiosa da série -- e dos personagens -- eram apontados como problemas. O diretor, então, acabou desistindo, porque concluiu que toda a ideia era muito irreal para o público acreditar.

Até que em setembro de 2019 a Netflix comprou o projeto. Na época, a gigante do streaming começava a fazer fortes investimentos no k-drama, apostando na popularidade da cultura oriental entre o público jovem, com grupos musicais e projetos do audiovisual.