diff --git a/docker-compose/requirements/djangoserver/file/server/server/typeRequests/tournamentRequest.py b/docker-compose/requirements/djangoserver/file/server/server/typeRequests/tournamentRequest.py index 4507d91..ee43fbd 100644 --- a/docker-compose/requirements/djangoserver/file/server/server/typeRequests/tournamentRequest.py +++ b/docker-compose/requirements/djangoserver/file/server/server/typeRequests/tournamentRequest.py @@ -6,7 +6,7 @@ # By: edbernar

Shimoneta to iu Gainen

Charlotte

Absolute Duo

Tokyo Ghoul

Dragon Ball

Naruto

Bleach

Terror in ressonance

Black Butler (Film pas vu)

Black Bullet

Parasite

Log Horizon (S4 en attente)

Death Note

Noragami

Nanatsu No taizan (Suite pas encore vu)

Fullmetal Alchemist

Mirai Nikki

One Punch Man (S3 en attente)

Hunter x Hunter (Suite en attente)

Erased

Another 

Ao no Exorcist

Death Parade

Kekkei Sensen

Beelzebub

Assasination Classroom

Deadman Wonderland

Toradora

Sakurasou no Pet na Kanojo

Tonari No Kaibutsu-Kun

Kokoro connect

Kyoukai no Kanata

To love Ru

Elfen Lied

Yosuga no Sora

11 eyes

A.I.C.O Incarnation

After Lost

inou battle wa nichijoukei no naka DE (S2 en attente)

Kill la Kill

Saiki Kusuo no psi nan

To aru Majutsu no Index

K Project

Boku wa tomodachi ga sukunei

To aru Kagaku no Railgun (S5 en attente)

To aru Kagaku no Accelerator (S2 en attente)

Durarara

Isekai Wa Smartphone To Tomo (S2 en attente)

Love Hina (J'ai pas encore vu les OAV)

Sword Art Online (Suite en attente)

Tsurezure Children (S2 en attente)

God Eater (Jusqu'à Ep 13. Ep bonus ?)

Needless

Twin Star Exorcists

Ben-to

Guilty Crown

Irozuku Sekai no Ashita Kara

Angel beats

Seishun Buta Yarou wa Bunny Girl Senpai no Yume wo Minai

Akashic Records of Bastard Magic Instructor (S2 en attente)

Hajimete no Gal

Mahou Sensou (Suite en attente)

My Hero Academia (S7 en attente/ Film non-vu)

Demon Slayer (S3 en attente)

Mob Psycho (La fin est vraiment une fin, mais peut-être une suite ?)

Shinmai Maou no Testament 

Goblin Slayer (S2 en attente)

Domestic na Kanojo (La fin est vraiment une fin, mais peut-être une suite ?)

The Promised Neverland (S2 en attente)

Classroom of the Elite (S2 en attente)

Mahou Shoujo Site (S2 en attente)

Chuunibyou demo Koi ga Shitai! (Peut-être une suite (s3) ?/ Vu 2 saisons et 2 films)

Clannad

Eromanga Sensei (S2 en attente)

My Teen Romantic Comedy SNAFU (S4 en attente)

Orange

Maid Sama (Peut être une s2)

If Her Flag Breaks

Sakamoto

Danshi Koukousei no Nichijou

Jojo's bizarre Adventure (Attente de la suite)

Kuzu no Honkai (Peut-être une S2)

Koi to Uso (S2 en attente/OAV vu)

Citrus (Peut-etre une S2)

Relife (Peut-être une S2 (Très peu de chances) /OAV (4) vu)

Kaguya-Sama : Love is war (S4 en attente/1 OAV vu)

Anohana

Saenai Heroine no Sodatekata (S2 vu/Film vu)

One Piece

Nagi no Asukara (Peut etre une S2/OAV / Peut etre la suite dans le manga mais introuvable en scan)

Yesterday wo Utatte (Peut etre un S2)

Oresuki (Peut-être une S2 (Très peu de chances)/OAV vu)

Keijo (Peut être une S2)

Nourin (S2 en attente/Lire les scans car peu de chances de voir S2 en animé)

Hamefura (S2 en attente)

Dogeza de Tanondemita

Rent a Girlfriend (S3 en attente)

The Quintessential Quintuplets (Film vu)

Masamune-kun no Revenge

Danna ga Nani o Itteiru ka Wakaranai Ken (S3 en attente)

Miss Kobayashi's Dragon Maid (Peut-être une S3)

Tonikawa (S2 en attente)

Shingeki no Kyojin (S4 part 3 en attente)

Monster Musume (Peut être une S2)

Himouto - Umaru chan (S1/S2 vu)

Your Lie in April

Plastic Memories

Gamers! (S2 en attente)

Tsuki ga Kirei (Peut être une S2)

Aho Girl! (Peut-être une S2)

Zombie Saga Land (S2 en attente (Avril 2021))

Golden Time (La fin est vraiment une fin, mais peut-être une suite ?)

Date a live (S5 en attente)

Jujutsu Kaisen (S2 en attente)

Redo of Healer (S2 en attente)

Isshuukan friends (S2 en attente/Lire les scans car peu de chances de voir S2 en animé)

Horimiya (Peut être une S2)

3D Kanojo (La fin est vraiment une fin, mais peut-être une suite ?)

Kakegurui (S3 en attente)

Konosuba (Suite en attente)

Otaku Otaku (S2 en attente/Oav en attente)

Arifureta (S3 en attente)

Hyouka (S2 en attente)

Fire force (S3 en attente)

Tokyo Revengers (S2 en attente)

Ijiranaide, nagatoro san (S2 en attente)

Darwin's Game (S2 en attente)

Angels of Death

Higehiro

Moi, quand je me réincarne en Slime (S3 en attente)

Seijo no Maryoku wa Bannou desu (S2 en attente)

Uzaki-chan ha asobitai (S3 en attente)

Osamake (S2 en attente)

Tokyo Ravens (S2 en attente)

Rakudai Kishi no Eiyuutan (S2 en attente)

Grand blue (S2 en attente)

Inuyashiki

Netsuzou Trap (Peut-être une S2)

Fruit Basket

Black clover (Suite en attente - Ep 170)

Majo no Tabitabi (S2 en attente)

Kanojo mo kanojo (S2 en attente)

Bokutachi no remake (S2 en attente)

Code Geass (film vu)

Ano Natsu de Matteru (S2 en attente)

Kenja no Mago (S2 en attente)

Just Because (La fin est vraiment une fin, mais peut-être une S2 ?)

Btoom! (S2 en attente)

Nisekoi (S3 en attente/ 4 OAV vu)

Blood Lad (S2 en attente/ 1 OAV pas vu)

Akame ga kill 

Re:Zero (S3 en attente)

Mieruko chan (S2 en attente)

Komi can't communicate (S3 en attente)

Senpai ga Uzai Kouhai no Hanashi (S2 en attente)

Takt Op. Destiny (S2 en attente)

Tantei wa mou, Shindeiru (S2 en attente)

Devilman Crybaby

Mushoku Tensei (S2 en attente)

Sono Bisque Doll wa Koi wo Suru (S2 en attente)

Akebi-chan no Serafuku (S2 en attente)

Wonder Egg Priority (S2 en attente)

Tower of God (S2 en attente)

Ousama Ranking (S2 en attente)

We never learn (2 OAV vu)

Gokushufudou

The Daily Life of the Immortal King (S3 en attente)

Itsudatte Bokura no Koi wa 10cm datta

Tada kun wa koi wo shinai 

Kamisama ni Natta hi

Hataraku Maou sama (S3 en attente)

Araburu Kisetsu no Otome domo yo

Lovely Complex

Happy Sugar Life

Shiki de

Danmachi (S4 en attente/Aucun OAV vu)

Munou na nana (S2 en attente)

Hinamatsuri (S2 en attente)

Aharen-san wa Hakarenai (S2 en attente)

Tomodachi Game (S2 en attente)

Spy x Family (S2 en attente)

Koi ha Sekai sefuku no ato de (Peut être une S2)

Shikimori's Not Just a Cutie (S2 en attente)

A couple of Cuckoos (S2 en attente)

Asterisk War (S3 en attente)

Karakai Jouzu No Takagi-San (S4 en attente)

White Album 1

White Album 2

My Stepmom's Daughter Is My Ex (S2 en attente)

Soredemo Ayumu wa Yosetekuru (S2 en attente)

Engage Kiss

Lycoris Recall (peut-être une S2)

Yamada-kun and the Seven Witches

Adachi to Shimamura (S2 en attente)

Kinsou no Vermeil (S2 en attente)

Cyberpunk

Gekkan Shoujo Nozaki kun (S2 en attente/Lire les scans car peu de chances de voir S2 en animé)

B Gata H Kei (S2 en attente)

Bakuman

Oremonogatari

Kiznaiver

Steins;Gate (5 OAV vu)

Mekakucity Actors

Summer Time Renderer

Darling in the franxx (peut être une S2)

Jaku-Chara Tomozaki-kun (S2 en attente)

Link Click (S2 en attente)

91 Days

Made In Abyss (S3 en attente)

Bocchi the rock (S2 en attente)

Fuufu Ijou, Koibito Miman (S2 en attente)

Chainsaw Man (S2 en attente)

Renai Flops

The Eminence in Shadow (S2 en attente)

Nana

Isekai Ojisan (S2 en attente)

Blue lock (S2 en attente)

The Angel Next Door Spoils Me Rotten (peut être une S2)

Tomo-chan wa Onnanoko!

Boku no Kokoro no Yabai Yatsu (peut être une S2)

Kubo san wa Mob wo Yurusanai (S2 en attente) 

Yamada-kun to Lv999 no Koi wo Suru

Oshi no ko (S2 en attente)

Mashle (S2 en attente)

Hell's paradise (S2 en attente)

Vinland Saga (S3 en attente)

Insomniac After School (S2 en attente)

Suki na Ko ga Megane wo Wasureta (S2 en attente)

\ No newline at end of file diff --git a/docker-compose/requirements/nginx/static/img/multiOnlineGamePage/pastel.jpg b/docker-compose/requirements/nginx/static/img/multiOnlineGamePage/pastel.jpg index bd46042..c2cb965 100644 Binary files a/docker-compose/requirements/nginx/static/img/multiOnlineGamePage/pastel.jpg and b/docker-compose/requirements/nginx/static/img/multiOnlineGamePage/pastel.jpg differ diff --git a/docker-compose/requirements/nginx/static/img/multiOnlineGamePage/wallTexture.jpg b/docker-compose/requirements/nginx/static/img/multiOnlineGamePage/wallTexture.jpg new file mode 100644 index 0000000..0bcfc33 Binary files /dev/null and b/docker-compose/requirements/nginx/static/img/multiOnlineGamePage/wallTexture.jpg differ diff --git a/docker-compose/requirements/nginx/static/javascript/filesLoader.js b/docker-compose/requirements/nginx/static/javascript/filesLoader.js index b2edbda..d0cda04 100644 --- a/docker-compose/requirements/nginx/static/javascript/filesLoader.js +++ b/docker-compose/requirements/nginx/static/javascript/filesLoader.js @@ -6,7 +6,7 @@ /* By: edbernar { - const popup = document.getElementById('popup-background'); - const skins = document.getElementsByClassName('color-box'); + const popup = document.getElementById('popup-skin-selector'); + const skins = document.getElementsByClassName('color-box-skin'); popup.style.display = 'flex'; for (let i = 0; i < skins.length; i++) @@ -80,20 +80,20 @@ class barSelecter } popup.removeEventListener('click', this.hideSkinSelector); popup.addEventListener('click', this.hideSkinSelector); - }) + }); } hideSkinSelector(event) { - const popup = document.getElementById('popup-background'); + const popup = document.getElementById('popup-skin-selector'); - if (event.target.getAttribute('class') == 'popup-background') + if (event.target.getAttribute('class') == 'popup-skin-selector') popup.style.display = 'none'; } changeSkin (event) { - const popup = document.getElementById('popup-background'); + const popup = document.getElementById('popup-skin-selector'); const id = event.target.getAttribute('skinId'); popup.style.display = 'none'; diff --git a/docker-compose/requirements/nginx/static/javascript/lobbyPage/main.js b/docker-compose/requirements/nginx/static/javascript/lobbyPage/main.js index d25fd6a..8e49bf8 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 { + for (let i = 0; i < document.body.children.length; i++) + { + document.body.children[i].style.animation = null; + } + }, 600); startButton.addEventListener('click', startMode); methButton.addEventListener('click', goBackHome); document.getElementsByClassName('menuSelected')[gameMode].style.display = 'flex'; diff --git a/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Map.js b/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Map.js index 7b9f1ab..6b5c5a5 100644 --- a/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Map.js +++ b/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Map.js @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Map.js :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: hubourge +#+ +:+ +#+ */ +/* By: edbernar { if (elem.mesh instanceof THREE.Group) { @@ -267,7 +266,7 @@ class Map } geometry1 = new THREE.TorusGeometry(1, 0.1, 12, 24); - material1 = new THREE.MeshPhysicalMaterial({color: 0x00ff00}); + material1 = new THREE.MeshPhysicalMaterial({color: 0x6290C8}); ring1 = new THREE.Mesh(geometry1, material1); ring1.rotateX(-Math.PI / 2); ring1.position.set(0, 0, 0); @@ -276,7 +275,7 @@ class Map material1.opacity = 0.75; geometry2 = new THREE.TorusGeometry(1, 0.1, 12, 24); - material2 = new THREE.MeshPhysicalMaterial({color: 0x00ff00}); + material2 = new THREE.MeshPhysicalMaterial({color: 0x829CBC}); ring2 = new THREE.Mesh(geometry2, material2); ring2.rotateX(-Math.PI / 2); ring2.position.set(0, 0 + 0.1, 0); @@ -285,7 +284,7 @@ class Map material2.opacity = 0.65; geometry3 = new THREE.TorusGeometry(1, 0.1, 12, 24); - material3 = new THREE.MeshPhysicalMaterial({color: 0x00ff00}); + material3 = new THREE.MeshPhysicalMaterial({color: 0x376996}); ring3 = new THREE.Mesh(geometry3, material3); ring3.rotateX(-Math.PI / 2); ring3.position.set(0, 0 + 0.2, 0); @@ -294,23 +293,23 @@ class Map material3.opacity = 0.35; geometry4 = new THREE.CircleGeometry(0.2, 24); - material4 = new THREE.MeshPhysicalMaterial({color: 0xaaffaa}); + material4 = new THREE.MeshPhysicalMaterial({color: 0x376996}); circle1 = new THREE.Mesh(geometry4, material4); circle1.rotateX(-Math.PI / 2); circle1.position.set(0, 0 - 0.048, 0); geometry5 = new THREE.CircleGeometry(0.24, 24); - material5 = new THREE.MeshPhysicalMaterial({color: 0x00ff00}); + material5 = new THREE.MeshPhysicalMaterial({color: 0x6290C8}); circle2 = new THREE.Mesh(geometry5, material5); circle2.rotateX(-Math.PI / 2); circle2.position.set(0, 0 - 0.049, 0); - geometry6 = new THREE.CylinderGeometry(0.15, 0.15, 0.35); - material6 = new THREE.MeshPhysicalMaterial({color: 0x00ff00}); - collider = new THREE.Mesh(geometry6, material6); - collider.position.set(0, 0 + 0.1, 0); - material6.transparent = true; - material6.opacity = 0.1; + // geometry6 = new THREE.CylinderGeometry(0.15, 0.15, 0.35); + // material6 = new THREE.MeshPhysicalMaterial({color: 0x00ff00}); + // collider = new THREE.Mesh(geometry6, material6); + // collider.position.set(0, 0 + 0.1, 0); + // material6.transparent = true; + // material6.opacity = 0.1; groupJumper = new THREE.Group(); groupJumper.add(ring1); @@ -318,7 +317,7 @@ class Map groupJumper.add(ring3); groupJumper.add(circle1); groupJumper.add(circle2); - groupJumper.add(collider); + // groupJumper.add(collider); // Set groupJumper position groud / top for (let i = 0; i < groupJumper.children.length && onTop; i++) @@ -353,7 +352,10 @@ class Map let meshWallObs = null; geometryWallObs = new THREE.BoxGeometry(size, 0.5, 0.1); - materialWallObs = new THREE.MeshPhysicalMaterial({color: 0xaaaafe}); + + // materialWallObs = new THREE.MeshPhysicalMaterial({ map: files.wallTexture }); + textureLoaderPlane = new THREE.TextureLoader(); + materialWallObs = new THREE.MeshPhysicalMaterial({ map: textureLoaderPlane.load(files.wallTexture) }); meshWallObs = new THREE.Mesh(geometryWallObs, materialWallObs); if (onTop) meshWallObs.position.set(x, this.playerLimits.up - 0.1, y); @@ -364,8 +366,8 @@ class Map putScoreboard(color) { - this.#clearScoreboard(); - // this.#putNameBoard("Player", "Opponent", 0xCCCCFF); + this.#putPlayerProfile("", "", color); + let materialScoreboard = null; let geometryScoreboard1 = null; let meshScoreboard1 = null; @@ -379,7 +381,7 @@ class Map let meshText2 = null; let height = 1.8; - let width = 6; + let width = 5; let depth = 0.2; materialScoreboard = new THREE.MeshPhysicalMaterial({color: color}); @@ -403,10 +405,10 @@ class Map meshScoreboard1.rotation.y = Math.PI; meshText1.rotation.y = Math.PI; - meshScoreboard1.position.set(0, 1.60, 9.5); - meshScoreboard2.position.set(0, 1.60, -9.5); - meshText1.position.set(0, 1.60, 9.5 - depth / 2 - 0.025); - meshText2.position.set(0, 1.60, - 9.5 + depth / 2 + 0.025); + meshScoreboard1.position.set(0, 1.60, 8.5); + meshScoreboard2.position.set(0, 1.60, -8.5); + meshText1.position.set(0, 1.60, 8.5 - depth / 2 - 0.01); + meshText2.position.set(0, 1.60, - 8.5 + depth / 2 + 0.01); scene.add(meshScoreboard1); scene.add(meshScoreboard2); @@ -418,27 +420,7 @@ class Map this.arrObject.push({mesh: meshText2, name: "", type: "scoreboard"}); }; - #clearScoreboard() - { - for (let i = 0; i < this.arrObject.length; i++) - { - if (this.arrObject[i].type == "scoreboard") - { - if (this.arrObject[i].mesh.geometry) - this.arrObject[i].mesh.geometry.dispose(); - if (this.arrObject[i].mesh.material) - this.arrObject[i].mesh.material.dispose(); - scene.remove(this.arrObject[i].mesh); - this.arrObject[i].mesh.geometry = null; - this.arrObject[i].mesh.material = null; - this.arrObject[i].mesh = null; - this.arrObject.splice(i, 1); - i--; - } - } - }; - - #putNameBoard(nameLeft, nameRight, color) + #putPlayerProfile(nameLeft, nameRight, color) { let materialBoardLeftFront; let geometryBoardLeftFront; @@ -456,9 +438,10 @@ class Map let geometryBoardRightBack; let meshBoardRightBack; - let height = 0.5; - let width = 2.95; + let height = 1.8; + let width = 1.5; let depth = 0.2; + let spacing = 2.5; materialBoardLeftFront = new THREE.MeshPhysicalMaterial({color: color}); geometryBoardLeftFront = new THREE.BoxGeometry(width, height, depth); @@ -476,89 +459,89 @@ class Map geometryBoardRightBack = new THREE.BoxGeometry(width, height, depth); meshBoardRightBack = new THREE.Mesh(geometryBoardRightBack, materialBoardRightBack); - meshBoardLeftFront.position.set(-width / 2 - (3 - width), 2.7, -9.5); - meshBoardRightFront.position.set(width / 2 + (3 - width), 2.7, -9.5); + meshBoardLeftFront.position.set(-spacing - width / 2 - 0.3, 1.6, -8.5); + meshBoardRightFront.position.set(spacing + width / 2 + 0.3, 1.6, -8.5); meshBoardLeftBack.rotation.y = Math.PI; - meshBoardLeftBack.position.set(-width / 2 - (3 - width), 2.7, 9.5); + meshBoardLeftBack.position.set(-spacing - width / 2 - 0.3, 1.6, 8.5); meshBoardRightBack.rotation.y = Math.PI; - meshBoardRightBack.position.set(width / 2 + (3 - width), 2.7, 9.5); + meshBoardRightBack.position.set(spacing + width / 2 + 0.3, 1.6, 8.5); scene.add(meshBoardLeftFront); scene.add(meshBoardRightFront); scene.add(meshBoardLeftBack); scene.add(meshBoardRightBack); - this.arrObject.push({mesh: meshBoardLeftFront, name: "", type: "nameBoard"}); - this.arrObject.push({mesh: meshBoardRightFront, name: "", type: "nameBoard"}); - this.arrObject.push({mesh: meshBoardLeftBack, name: "", type: "nameBoard"}); - this.arrObject.push({mesh: meshBoardRightBack, name: "", type: "nameBoard"}); + this.arrObject.push({mesh: meshBoardLeftFront, name: "", type: "profileBoard"}); + this.arrObject.push({mesh: meshBoardRightFront, name: "", type: "profileBoard"}); + this.arrObject.push({mesh: meshBoardLeftBack, name: "", type: "profileBoard"}); + this.arrObject.push({mesh: meshBoardRightBack, name: "", type: "profileBoard"}); - let canvasTextNameLeft = null; - let contextTextNameLeft = null; - let textureTextNameLeft = null; + let canvasProfileNameLeft = null; + let contextProfileNameLeft = null; + let textureProfileNameLeft = null; - let canvasTextNameRight = null; - let contextTextNameRight = null; - let textureTextNameRight = null; + let canvasProfileNameRight = null; + let contextProfileNameRight = null; + let textureProfileNameRight = null; - canvasTextNameLeft = document.createElement('canvas'); - contextTextNameLeft = canvasTextNameLeft.getContext('2d'); - canvasTextNameLeft.width = 960; - canvasTextNameLeft.height = 540 / 2; - drawName(nameLeft, canvasTextNameLeft, contextTextNameLeft); - textureTextNameLeft = new THREE.CanvasTexture(canvasTextNameLeft); + canvasProfileNameLeft = document.createElement('canvas'); + contextProfileNameLeft = canvasProfileNameLeft.getContext('2d'); + canvasProfileNameLeft.width = 960; + canvasProfileNameLeft.height = 540 / 2; + drawName(nameLeft, canvasProfileNameLeft, contextProfileNameLeft); + textureProfileNameLeft = new THREE.CanvasTexture(canvasProfileNameLeft); - canvasTextNameRight = document.createElement('canvas'); - contextTextNameRight = canvasTextNameRight.getContext('2d'); - canvasTextNameRight.width = 960; - canvasTextNameRight.height = 540 / 2; - drawName(nameRight, canvasTextNameRight, contextTextNameRight); - textureTextNameRight = new THREE.CanvasTexture(canvasTextNameRight); + canvasProfileNameRight = document.createElement('canvas'); + contextProfileNameRight = canvasProfileNameRight.getContext('2d'); + canvasProfileNameRight.width = 960; + canvasProfileNameRight.height = 540 / 2; + drawName(nameRight, canvasProfileNameRight, contextProfileNameRight); + textureProfileNameRight = new THREE.CanvasTexture(canvasProfileNameRight); - let materialTextLeft = null; - let materialTextRight = null; + let materialProfileLeft = null; + let materialProfileRight = null; - let geometryTextLeftFront = null; - let meshTextLeftFront = null; - let geometryTextRightFront = null; - let meshTextRightFront = null; + let geometryProfileLeftFront = null; + let meshProfileLeftFront = null; + let geometryProfileRightFront = null; + let meshProfileRightFront = null; - let geometryTextLeftBack = null; - let meshTextLeftBack = null; - let geometryTextRightBack = null; - let meshTextRightBack = null; + let geometryProfileLeftBack = null; + let meshProfileLeftBack = null; + let geometryProfileRightBack = null; + let meshProfileRightBack = null; - materialTextLeft = new THREE.MeshBasicMaterial({ map: textureTextNameLeft }); - materialTextRight = new THREE.MeshBasicMaterial({ map: textureTextNameRight }); + materialProfileLeft = new THREE.MeshBasicMaterial({ map: textureProfileNameLeft }); + materialProfileRight = new THREE.MeshBasicMaterial({ map: textureProfileNameRight }); - geometryTextLeftFront = new THREE.PlaneGeometry(width - 0.15, height - 0.15); - meshTextLeftFront = new THREE.Mesh(geometryTextLeftFront, materialTextLeft); + geometryProfileLeftFront = new THREE.PlaneGeometry(width - 0.15, height - 0.15); + meshProfileLeftFront = new THREE.Mesh(geometryProfileLeftFront, materialProfileLeft); - geometryTextRightFront = new THREE.PlaneGeometry(width - 0.15, height - 0.15); - meshTextRightFront = new THREE.Mesh(geometryTextRightFront, materialTextRight); + geometryProfileRightFront = new THREE.PlaneGeometry(width - 0.15, height - 0.15); + meshProfileRightFront = new THREE.Mesh(geometryProfileRightFront, materialProfileRight); - geometryTextLeftBack = new THREE.PlaneGeometry(width - 0.15, height - 0.15); - meshTextLeftBack = new THREE.Mesh(geometryTextLeftBack, materialTextLeft); + geometryProfileLeftBack = new THREE.PlaneGeometry(width - 0.15, height - 0.15); + meshProfileLeftBack = new THREE.Mesh(geometryProfileLeftBack, materialProfileLeft); - geometryTextRightBack = new THREE.PlaneGeometry(width - 0.15, height - 0.15); - meshTextRightBack = new THREE.Mesh(geometryTextRightBack, materialTextRight); + geometryProfileRightBack = new THREE.PlaneGeometry(width - 0.15, height - 0.15); + meshProfileRightBack = new THREE.Mesh(geometryProfileRightBack, materialProfileRight); - meshTextLeftFront.position.set(-width / 2 - (3 - width), 2.7, - 9.5 + depth / 2 + 0.025); - meshTextRightFront.position.set(width / 2 + (3 - width), 2.7, - 9.5 + depth / 2 + 0.025); + meshProfileLeftFront.position.set(-spacing - width / 2 - 0.325, 1.6, - 8.5 + depth / 2 + 0.01); + meshProfileRightFront.position.set(spacing + width / 2 + 0.325, 1.6, - 8.5 + depth / 2 + 0.01); - meshTextLeftBack.rotation.y = Math.PI; - meshTextLeftBack.position.set(width / 2 + (3 - width), 2.7, 9.5 - depth / 2 - 0.025); - meshTextRightBack.rotation.y = Math.PI; - meshTextRightBack.position.set(-width / 2 - (3 - width), 2.7, 9.5 - depth / 2 - 0.025); + meshProfileLeftBack.rotation.y = Math.PI; + meshProfileLeftBack.position.set(-spacing - width / 2 - 0.325, 1.6, 8.5 - depth / 2 - 0.01); + meshProfileRightBack.rotation.y = Math.PI; + meshProfileRightBack.position.set(spacing + width / 2 + 0.325, 1.6, 8.5 - depth / 2 - 0.01); - scene.add(meshTextLeftFront); - scene.add(meshTextRightFront); - scene.add(meshTextLeftBack); - scene.add(meshTextRightBack); - this.arrObject.push({mesh: meshTextLeftFront, name: "", type: "nameBoard"}); - this.arrObject.push({mesh: meshTextRightFront, name: "", type: "nameBoard"}); - this.arrObject.push({mesh: meshTextLeftBack, name: "", type: "nameBoard"}); - this.arrObject.push({mesh: meshTextRightBack, name: "", type: "nameBoard"}); + scene.add(meshProfileLeftFront); + scene.add(meshProfileRightFront); + scene.add(meshProfileLeftBack); + scene.add(meshProfileRightBack); + this.arrObject.push({mesh: meshProfileLeftFront, name: "", type: "profileBoard"}); + this.arrObject.push({mesh: meshProfileRightFront, name: "", type: "profileBoard"}); + this.arrObject.push({mesh: meshProfileLeftBack, name: "", type: "profileBoard"}); + this.arrObject.push({mesh: meshProfileRightBack, name: "", type: "profileBoard"}); }; putVideoOnCanvas(nbImage, vNameNb) @@ -780,7 +763,7 @@ class Map #animationGravityChanger(group, onTop) { let geometryGC = new THREE.TorusGeometry(1.5, 0.05, 12, 24); - let materialGC = new THREE.MeshPhysicalMaterial({color: 0x00ff00}); + let materialGC = new THREE.MeshPhysicalMaterial({color: 0x829CBC}); let ringGC = new THREE.Mesh(geometryGC, materialGC); let landmarkGC = group.children[0]; let speed = 0.1; @@ -891,7 +874,7 @@ class Map if (diff > 2) this.arrObject[i].mesh.material.opacity = 0; else - this.arrObject[i].mesh.material.opacity = 1 - (diff / 2); + this.arrObject[i].mesh.material.opacity = 0.7 - (diff / 2); } else if (this.arrObject[i].name == "wallRight") { @@ -906,7 +889,7 @@ class Map if (diff > 2) this.arrObject[i].mesh.material.opacity = 0; else - this.arrObject[i].mesh.material.opacity = 1 - (diff / 2); + this.arrObject[i].mesh.material.opacity = 0.7 - (diff / 2); } if (this.arrObject[i].type == 'jumperBottom') { @@ -1033,11 +1016,10 @@ class Map animationSpeed = 0.02; this.updateScore(name, this.score); - player.reserCameraPlayer(); ball.resetPosBall(); this.resetPosWalls(); - // player.resetPosPlayer(); - // opponent.resetPosOpponent(); + player.resetScaleplayers(); + player.reserCameraPlayer(); }; }; @@ -1122,4 +1104,4 @@ function createRing(colorO) { return new THREE.Mesh(geometry, material); } -export { Map }; \ No newline at end of file +export { Map, createStar, createBox, createRectangle, createRing, colorList }; \ No newline at end of file diff --git a/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Opponent.js b/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Opponent.js index 754d739..d64101a 100644 --- a/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Opponent.js +++ b/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Opponent.js @@ -6,7 +6,7 @@ /* By: hubourge +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/08/21 10:34:49 by edbernar #+# #+# */ -/* Updated: 2024/09/25 15:29:52 by hubourge ### ########.fr */ +/* Updated: 2024/10/01 15:28:00 by hubourge ### ########.fr */ /* */ /* ************************************************************************** */ @@ -50,11 +50,6 @@ class Opponent { } - resetPosOpponent() - { - this.object.position.set(0, 0.3, -mapLength / 2 + 0.2); - } - movePlayer(content) { const lerp = (start, end, t) => start + (end - start) * t; diff --git a/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Player.js b/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Player.js index cb6649b..ee5036e 100644 --- a/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Player.js +++ b/docker-compose/requirements/nginx/static/javascript/multiOnlineGame/Player.js @@ -6,7 +6,7 @@ /* By: hubourge +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/08/18 00:30:31 by edbernar #+# #+# */ -/* Updated: 2024/09/30 16:48:22 by hubourge ### ########.fr */ +/* Updated: 2024/10/01 18:45:39 by hubourge ### ########.fr */ /* */ /* ************************************************************************** */ @@ -106,11 +106,6 @@ class Player clearInterval(this.interval); } - resetPosPlayer() - { - this.object.position.set(0, this.limits.down, mapLength / 2 - 0.2); - } - reserCameraPlayer() { this.setCameraPosition( @@ -120,6 +115,13 @@ class Player ); } + resetScaleplayers() + { + this.object.scale.set(1, 1, 1); + if (this.opponent) + this.opponent.object.scale.set(1, 1, 1); + } + makeAnimation(isOpponent) { this.mapVar.putVideoOnCanvas(3, 'goal'); diff --git a/docker-compose/requirements/nginx/static/javascript/tournamentPage/TournamentPage.js b/docker-compose/requirements/nginx/static/javascript/tournamentPage/TournamentPage.js index afb5301..d1e1532 100644 --- a/docker-compose/requirements/nginx/static/javascript/tournamentPage/TournamentPage.js +++ b/docker-compose/requirements/nginx/static/javascript/tournamentPage/TournamentPage.js @@ -6,7 +6,7 @@ /* By: edbernar