JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://ui-unicorn.co.uk/game-lesson-1/js/jquery-3.4.1.min.js"></script>

     <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.2.4/gsap.min.js"></script>




     <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.2.4/MotionPathPlugin.min.js"></script>

CSS

body { margin: 0; }
canvas { display: block; }

JavaScript

import * as THREE from "https://ui-unicorn.co.uk/game-lesson-1/js/three.module.js";
import TWEEN from "https://ui-unicorn.co.uk/game-lesson-1/js/tween.esm.js";
import {
  RGBELoader
} from "https://ui-unicorn.co.uk/game-lesson-1/js/RGBELoader.js";
import {
  OrbitControls
} from "https://ui-unicorn.co.uk/game-lesson-1/js/OrbitControls.js";
import {
  GLTFLoader
} from "https://ui-unicorn.co.uk/game-lesson-1/js/GLTFLoader.js";
import {
  RoughnessMipmapper
} from "https://ui-unicorn.co.uk/game-lesson-1/js/RoughnessMipmapper.js";
import {
  CSS2DRenderer,
  CSS2DObject
} from "https://ui-unicorn.co.uk/game-lesson-1/js/CSS2DRenderer.js";

gsap.registerPlugin(MotionPathPlugin);

var container, controls;
var camera, scene, renderergl, loaderGL, time, mixer, mixer2, mixer3, mixer4, mixer6, mixer7, mixer8, mixer9, clock, labelRenderer;
var raycaster, mouse, tween;

var setX, setY, setZ, setRot;
var model, model2, model3, model4, model5, model6, model7, model8, model9;
var cubefix, cube, cube2, cube3, cube4, cube5, character, Characterm, Monster0, score, gltfPlayer, gltfMonster, isZoomed, gltfC1, gltfC2, gltfC3, gltfC4, gltfC5;
var action, action3, action0, action2, action4, action5, action6;
var nearFog, farFog, densityFog, colorFog, colorFog2;
var hotspotLabel1, hotspotLabel2, hotspotLabel3, hotspotLabel4;
var materials = [],
  parameters;
var mouseX = 0,
  mouseY = 0;
var timerAnimate;
var CH0, CH, CH3, CH4;
var game_loader_count = 0;
var observer, text, checkText, partcount, StartButton, ButtonStart;
var fov, aspect, near, far;
var fire;
init();
animate();

function init() {

  container = document.createElement("div");
  container.className = "experience-div";
  $("body").prepend(container);


  fov = {
    value: 45
  };
  aspect = window.innerWidth / window.innerHeight;
  near = {
    value: 1
  };
  far = {
    value: 10000
  };
  camera = new THREE.PerspectiveCamera(fov.value, aspect, near.value, far.value);
  camera.position.set(0, 0, 0);


  scene = new...