Merge branch 'main' of github.com:AudebertAdrien/ft_transcendence into trash

This commit is contained in:
Theouche 2024-08-07 14:09:50 +02:00
commit 58e3602ea8
10 changed files with 31 additions and 19 deletions

6
.env
View File

@ -1,7 +1,7 @@
# Django settings
SECRET_KEY="FollowTheWhiteRabbit"
DEBUG=True
DJANGO_ALLOWED_HOSTS=localhost 127.0.0.1 [::1]
DJANGO_ALLOWED_HOSTS=['*']
# PostgreSQL settings
POSTGRES_DB=players_db
@ -11,5 +11,5 @@ POSTGRES_PASSWORD=qwerty
DB_HOST=db
DB_PORT=5432
PROJECT_PATH=${PWD}/pong
POSTGRES_DATA_PATH=${PWD}/data/db
PROJECT_PATH=/home/mchiboub/42cursus/transcendence/pong
POSTGRES_DATA_PATH=/home/mchiboub/42cursus/transcendence/data/db

2
.gitignore vendored
View File

@ -1,3 +1,5 @@
venv/
__pycache__/
data/
.env
makefile

View File

@ -28,8 +28,6 @@ destroy:
logs:
$(COMPOSE) logs -f $(CONTAINER)
re: destroy up
ps:
$(COMPOSE) ps

View File

@ -126,9 +126,13 @@ class Game:
# Check for scoring
if self.game_state['ball_position']['x'] <= 10:
self.game_state['player2_score'] += 1
if self.game_state['player2_score'] >= 5:
self.end_game()
self.reset_ball()
elif self.game_state['ball_position']['x'] >= 790:
self.game_state['player1_score'] += 1
if self.game_state['player1_score'] >= 5:
self.end_game()
self.reset_ball()
def reset_ball(self):

View File

@ -40,7 +40,7 @@ class MatchMaker:
await asyncio.sleep(1)
self.timer += 1
# Waiting for more than 30s -> BOT game
if self.timer >= 3 and self.waiting_players:
if self.timer >= 30 and self.waiting_players:
player1 = self.waiting_players.pop(0)
print(f"*** MATCH FOUND: {player1.user.username} vs BOT")
self.botgame = True

View File

@ -1,4 +1,4 @@
# Generated by Django 5.0.7 on 2024-07-31 15:16
# Generated by Django 5.0.7 on 2024-07-31 16:01
import django.db.models.deletion
from django.db import migrations, models

View File

@ -1,4 +1,4 @@
# Generated by Django 5.0.7 on 2024-07-31 16:58
# Generated by Django 5.0.7 on 2024-07-31 16:04
import django.db.models.deletion
from django.db import migrations, models

View File

@ -20,6 +20,8 @@ document.addEventListener('DOMContentLoaded', () => {
const matchList = document.getElementById('match-list');
const dropdownMenu = document.getElementById('dropdown-menu');
const pongElements = document.getElementById('pong-elements');
const logo = document.querySelector('.logo');
let socket;
let token;
@ -38,7 +40,6 @@ document.addEventListener('DOMContentLoaded', () => {
registerButton.addEventListener('click', handleRegister);
loginButton.addEventListener('click', handleLogin);
async function handleCheckNickname() {
const nickname = nicknameInput.value.trim();
if (nickname) {
@ -101,10 +102,11 @@ document.addEventListener('DOMContentLoaded', () => {
try {
const result = await registerUser(nickname, password);
if (result) {
//await createPlayer(nickname);
registerForm.style.display = 'none';
gameContainer.style.display = 'flex';
formBlock.style.display = 'none';
logo.style.display = 'none';
pongElements.style.display = 'none';
startWebSocketConnection(token);
} else {
alert('Registration failed. Please try again.');
@ -141,6 +143,8 @@ document.addEventListener('DOMContentLoaded', () => {
loginForm.style.display = 'none';
gameContainer.style.display = 'flex';
formBlock.style.display = 'none';
logo.style.display = 'none';
pongElements.style.display = 'none';
startWebSocketConnection(token);
} else {
alert('Authentication failed. Please try again.');

View File

@ -16,7 +16,7 @@
<div class="background">
<div class="stars" id="stars"></div>
</div>
<div class="pong-elements">
<div id="pong-elements" style="display: flex;">
<div class="paddle paddle-left"></div>
<div class="paddle paddle-right"></div>
<div class="ball_anim"></div>
@ -169,10 +169,6 @@
star.style.animationDuration = `${Math.random() * 2 + 1}s`;
starsContainer.appendChild(star);
}
setInterval(createTrail, 100);
</script>
</body>

View File

@ -124,16 +124,22 @@ button:hover {
#player1-pad {
left: 10px;
background-color: #00ffff;
border-radius: 10px;
box-shadow: 0 0 15px #00ffff;
}
#player2-pad {
right: 10px;
background-color: #00ffff;
border-radius: 10px;
box-shadow: 0 0 15px #00ffff;
}
#ball {
width: 20px;
height: 20px;
background-color: #ffffff;
background-color: #00ffff;
border-radius: 50%;
position: absolute;
}
@ -142,12 +148,14 @@ button:hover {
position: absolute;
top: 20px;
left: 20px;
font-size: 3rem;
color: #00ffff;
text-shadow: 0 0 15px #00ffff;
z-index: 20;
}
.logo img {
max-width: 100%;
height: auto;
}
.stars {
position: absolute;
width: 100%;