From 5ba626b73bc8d5eb1deb63ae7f05428932b46cc2 Mon Sep 17 00:00:00 2001 From: spaciecat <5057054+spaciecat@users.noreply.github.com> Date: Sat, 14 Sep 2019 23:01:57 +1000 Subject: [PATCH] FINALLY SOMETHING HELPED PERFORMANCE browsers try to get all cute and cozy with your images, like... no pal just let me load things and have them stay loaded? --- scripts/game/Game.js | 3 ++- scripts/game/Loader.js | 18 ++++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/scripts/game/Game.js b/scripts/game/Game.js index 91a7a41..f9b7f8e 100644 --- a/scripts/game/Game.js +++ b/scripts/game/Game.js @@ -658,7 +658,8 @@ Game.executeText = function(line){ span.innerHTML = ""; span.style.display = "block"; var iconName = word.slice(1,-1) - var icon = Library.images["fear_"+iconName]; + var icon = new Image(); + icon.src = Library.images["fear_"+iconName].hackSrc; div.children[i].appendChild(icon); icon.style.display = "block"; if(speaker!="i"){ diff --git a/scripts/game/Loader.js b/scripts/game/Loader.js index ad9d72e..e39ad89 100644 --- a/scripts/game/Loader.js +++ b/scripts/game/Loader.js @@ -48,14 +48,16 @@ Loader.addImages = function(imageConfigs){ }; Loader.loadImage = function(imageConfig){ return new RSVP.Promise(function(resolve){ - var img = new Image(); - var id = imageConfig.id; - Library.images[id] = img; // ADD TO LIBRARY - img.onload = function(){ - publish("assetLoaded"); - resolve(); - } - img.src = imageConfig.src; + const id = imageConfig.id; + fetch(imageConfig.src) + .then(response => response.blob()) + .then(blobData => createImageBitmap(blobData)) + .then(bitmap => { + bitmap.hackSrc = imageConfig.src; + Library.images[id] = bitmap; + publish("assetLoaded"); + resolve(); + }) }); };