"use strict"; import { Group, RectAreaLight } from "./three_modules"; /* TODO: - Loading light configuration from scene file */ export default class Lights { constructor(scene) { this.state = false; this.lightgroup = new Group(); let intensity = 1; let decay = 20; let rectLight = new RectAreaLight(0xc6ffe5, intensity, 2.15, 2.35); rectLight.decay = decay; rectLight.position.set(4.76, 1.35, -4.08); rectLight.rotation.set(0, -1.57, 0); this.lightgroup.add(rectLight); rectLight = new RectAreaLight(0xc6ffe5, intensity, 2.15, 2.35); rectLight.decay = decay; rectLight.position.set(4.76, 1.35, -6.49); rectLight.rotation.set(0, -1.57, 0); this.lightgroup.add(rectLight); rectLight = new RectAreaLight(0xc6ffe5, intensity, 2.15, 2.35); rectLight.decay = decay; rectLight.position.set(4.76, 1.35, -1.7); rectLight.rotation.set(0, -1.57, 0); this.lightgroup.add(rectLight); rectLight = new RectAreaLight(0xc6ffe5, intensity, 2.24, 2.36); rectLight.decay = decay; rectLight.position.set(-2.27, 1.34, -7.9); rectLight.rotation.set(0, 0, 0); this.lightgroup.add(rectLight); rectLight = new RectAreaLight(0xc6ffe5, intensity, 2.67, 2.36); rectLight.decay = decay; rectLight.position.set(-3.80, 1.34, -6.15); rectLight.rotation.set(0, 1.57, 0); this.lightgroup.add(rectLight); this.lightgroup.name = "lightgroup", this.lightgroup.visible = false; scene.add(this.lightgroup); } disable() { this.state = false; this.lightgroup.visible = false; console.log("Lights disabled"); } enable() { this.state = true; this.lightgroup.visible = true; console.log("Lights enabled"); } toggle() { switch (this.state) { case false: this.enable(); break; case true: this.disable(); break; } } }