The key to success is timing and precision, as you need to position your paddle correctly to deflect the ball at the right angle.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin sit amet velit vitae lorem tempor auctor. In tempor ac ex ut finibus. Duis lobortis non justo eu venenatis.
-
-
+
diff --git a/docker-compose/requirements/nginx/static/img/skin/1.jpg b/docker-compose/requirements/nginx/static/img/skin/1.jpg
new file mode 100644
index 0000000..8d59925
Binary files /dev/null and b/docker-compose/requirements/nginx/static/img/skin/1.jpg differ
diff --git a/docker-compose/requirements/nginx/static/img/skin/2.jpg b/docker-compose/requirements/nginx/static/img/skin/2.jpg
new file mode 100644
index 0000000..c39c5cf
Binary files /dev/null and b/docker-compose/requirements/nginx/static/img/skin/2.jpg differ
diff --git a/docker-compose/requirements/nginx/static/img/skin/3.jpg b/docker-compose/requirements/nginx/static/img/skin/3.jpg
new file mode 100644
index 0000000..47332ae
Binary files /dev/null and b/docker-compose/requirements/nginx/static/img/skin/3.jpg differ
diff --git a/docker-compose/requirements/nginx/static/img/skin/4.jpg b/docker-compose/requirements/nginx/static/img/skin/4.jpg
new file mode 100644
index 0000000..ba38549
Binary files /dev/null and b/docker-compose/requirements/nginx/static/img/skin/4.jpg differ
diff --git a/docker-compose/requirements/nginx/static/javascript/lobbyPage/3d.js b/docker-compose/requirements/nginx/static/javascript/lobbyPage/3d.js
index 4509595..7d4e657 100644
--- a/docker-compose/requirements/nginx/static/javascript/lobbyPage/3d.js
+++ b/docker-compose/requirements/nginx/static/javascript/lobbyPage/3d.js
@@ -6,22 +6,33 @@
/* By: edbernar {
+ const popup = document.getElementById('popup-background');
+ const skins = document.getElementsByClassName('color-box');
+
+ popup.style.display = 'flex';
+ for (let i = 0; i < skins.length; i++)
+ {
+ skins[i].setAttribute('skinId', this.availableSkins[i].id);
+ if (this.availableSkins[i].color != null)
+ skins[i].style.backgroundColor = `#${this.availableSkins[i].color.toString(16)}`;
+ else
+ skins[i].style.backgroundImage = `url("${this.availableSkins[i].texture}")`
+ skins[i].removeEventListener('click', this.changeSkin.bind(this));
+ skins[i].addEventListener('click', this.changeSkin.bind(this));
+ }
+ popup.removeEventListener('click', this.hideSkinSelector);
+ popup.addEventListener('click', this.hideSkinSelector);
+ })
+ }
+
+ hideSkinSelector(event)
+ {
+ const popup = document.getElementById('popup-background');
+
+ if (event.target.getAttribute('class') == 'popup-background')
+ popup.style.display = 'none';
+ }
+
+ changeSkin (event)
+ {
+ const popup = document.getElementById('popup-background');
+
+ const id = event.target.getAttribute('skinId');
+ popup.style.display = 'none';
+ console.log(this.bar);
+ this.bar.material.dispose();
+ lastSelected = this.availableSkins[id];
+ if (this.availableSkins[id].color != null)
+ this.bar.material = new THREE.MeshPhysicalMaterial({color: this.availableSkins[id].color});
+ else
+ this.bar.material = new THREE.MeshPhysicalMaterial({map: new THREE.TextureLoader().load(this.availableSkins[id].texture)});
+ this.selected = this.availableSkins[id];
}
createBarPlayer(color)
{
- const geometry = new THREE.BoxGeometry(1, 0.1, 0.1);
- const material = new THREE.MeshPhysicalMaterial({color: color});
- const mesh = new THREE.Mesh(geometry, material);
+ const geometry = new THREE.BoxGeometry(1, 0.1, 0.1);
+ let material = null;
+
+ if (typeof(color) == 'number')
+ material = new THREE.MeshPhysicalMaterial({color: color});
+ else
+ material = new THREE.MeshPhysicalMaterial({map: new THREE.TextureLoader().load(color)});
+ const mesh = new THREE.Mesh(geometry, material);
mesh.castShadow = true;
return (mesh);
diff --git a/docker-compose/requirements/nginx/static/javascript/lobbyPage/main.js b/docker-compose/requirements/nginx/static/javascript/lobbyPage/main.js
index ee0f2e5..84560a4 100644
--- a/docker-compose/requirements/nginx/static/javascript/lobbyPage/main.js
+++ b/docker-compose/requirements/nginx/static/javascript/lobbyPage/main.js
@@ -6,7 +6,7 @@
/* By: edbernar