جزئیات محصول

دانلود پروژه  بازی **Connect 4** با استفاده از HTML، CSS و JavaScript

دانلود پروژه بازی **Connect 4** با استفاده از HTML، CSS و JavaScript

قیمت: 80,000 تومان

خرید فایل


مشاهده پیشنمایش

پیشنمایش برای محصولاتی که نیاز به نمایش دمو دارند می باشد

کاربران گرامی در این پروژه به شما پروژه بازی با جاوا اسکریپت را قرارداده ایم شما عزیزان می توانید از بخش دانلود پروژه بازی با جاوااسکریپت سایر  بازی هایی که با جاوا اسکریپت طراحی شده اند را مشاهده و دانلود کنید.

در صورتی که نیاز به آموزش حضوری و یا غیر حضوری این پروژه داشتید میتوانید با ما در ارتباط باشید تا این پروژه را به شما آموزش دهیم حتی میتوانید در صورت دلخواه پروژه را به خواسته شما شخصی سازی کنیم لازم به ذکر است که تیم پروژه در صفحه  بازی های مختلفی را به زبان های مختلف برنامه نویسی قرار داده است .شماره تماس با پرپروژه 09050394455 می باشد 


در اینجا یک پروژه ساده برای ایجاد بازی **Connect 4** با استفاده از HTML، CSS و JavaScript ارائه شده است. این بازی به دو بازیکن اجازه می‌دهد تا نوبتی در یک شبکه ۶ ردیفی و ۷ ستونی بازی کنند و هدف آن ایجاد یک ردیف از چهار مهره هم‌رنگ است.
 
### 1. **HTML**
ابتدا ساختار HTML را برای بازی Connect 4 ایجاد می‌کنیم.
 
```html
   
   
    بازی Connect 4
   
   
       

بازی Connect 4

       
           
       
       
       
   
   
```
 
### 2. **CSS**
برای طراحی ظاهری بازی از CSS استفاده می‌کنیم.
 
```css
body {
    font-family: Arial, sans-serif;
    background-color: #f4f4f4;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
}
 
.container {
    text-align: center;
}
 
h1 {
    margin-bottom: 20px;
}
 
.game-board {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
    margin-bottom: 20px;
}
 
.cell {
    width: 60px;
    height: 60px;
    background-color: #ccc;
    border-radius: 5px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
}
 
.cell.red {
    background-color: red;
}
 
.cell.yellow {
    background-color: yellow;
}
 
.status {
    margin-top: 20px;
    font-size: 20px;
}
 
button {
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
}
```
 
### 3. **JavaScript**
سپس منطق بازی را با JavaScript پیاده‌سازی می‌کنیم. این بخش شامل ساختار بازی، نوبت بازیکنان و تشخیص برنده است.
 
```javascript
const columns = 7; // تعداد ستون‌ها
const rows = 6; // تعداد ردیف‌ها
let board = Array.from({ length: rows }, () => Array(columns).fill(null)); // ایجاد شبکه بازی
let currentPlayer = 'red'; // بازیکن فعلی
const gameBoard = document.getElementById('gameBoard');
const statusDisplay = document.getElementById('status');
const resetButton = document.getElementById('resetBtn');
 
// تابع برای ایجاد شبکه بازی
function createBoard() {
    gameBoard.innerHTML = '';
    for (let r = 0; r < rows; r++) {
        for (let c = 0; c < columns; c++) {
            const cell = document.createElement('div');
            cell.classList.add('cell');
            cell.dataset.column = c; // ذخیره شماره ستون
            cell.addEventListener('click', handleCellClick);
            gameBoard.appendChild(cell);
        }
    }
}
 
// تابع برای مدیریت کلیک روی هر سلول
function handleCellClick(event) {
    const column = event.target.dataset.column;
    for (let r = rows - 1; r >= 0; r--) {
        if (!board[r][column]) {
            board[r][column] = currentPlayer; // ثبت حرکت
            event.target.classList.add(currentPlayer); // تغییر رنگ سلول
            if (checkWin(r, column)) {
                statusDisplay.textContent = `بازیکن ${currentPlayer} برنده شد!`;
                gameBoard.style.pointerEvents = 'none'; // غیرفعال کردن بازی
            } else {
                currentPlayer = currentPlayer === 'red' ? 'yellow' : 'red'; // تغییر نوبت
                statusDisplay.textContent = `نوبت بازیکن ${currentPlayer}`;
            }
            return;
        }
    }
}
 
// تابع برای بررسی برنده
function checkWin(row, column) {
    return (
        checkDirection(row, column, 1, 0) || // افقی
        checkDirection(row, column, 0, 1) || // عمودی
        checkDirection(row, column, 1, 1) || // مورب از چپ به راست
        checkDirection(row, column, 1, -1)   // مورب از راست به چپ
    );
}
 
// تابع برای بررسی برد در یک جهت خاص
function checkDirection(row, column, rowDir, colDir) {
    let count = 1;
 
    for (let i = 1; i < 4; i++) {
        const r = row + i * rowDir;
        const c = column + i * colDir;
        if (r >= 0 && r < rows && c >= 0 && c < columns && board[r][c] === currentPlayer) {
            count++;
        } else {
            break;
        }
    }
 
    for (let i = 1; i < 4; i++) {
        const r = row - i * rowDir;
        const c = column - i * colDir;
        if (r >= 0 && r < rows && c >= 0 && c < columns && board[r][c] === currentPlayer) {
            count++;
        } else {
            break;
        }
    }
 
    return count >= 4; // بررسی تعداد مهره‌های متصل
}
 
// تابع برای تنظیم مجدد بازی
resetButton.addEventListener('click', () => {
    board = Array.from({ length: rows }, () => Array(columns).fill(null));
    currentPlayer = 'red';
    statusDisplay.textContent = `نوبت بازیکن ${currentPlayer}`;
    createBoard();
    gameBoard.style.pointerEvents = 'auto'; // فعال کردن بازی
});
 
// شروع بازی
createBoard();
statusDisplay.textContent = `نوبت بازیکن ${currentPlayer}`;
```
 
### توضیحات کد:
1. **HTML**: شامل عنوان بازی، شبکه بازی و دکمه‌ای برای تنظیم مجدد بازی است.
2. **CSS**: طراحی ساده و کاربرپسند برای بازی Connect 4.
3. **JavaScript**:
   - **ایجاد شبکه**: تابع `createBoard` برای ایجاد شبکه بازی.
   - **مدیریت حرکات**: تابع `handleCellClick` برای ثبت حرکات بازیکنان و تغییر نوبت.
   - **بررسی برنده**: تابع `checkWin` برای بررسی برنده در چهار جهت مختلف.
   - **تنظیم مجدد بازی**: دکمه "تنظیم مجدد" برای بازنشانی بازی.
 
### نتیجه‌گیری
این پروژه **Connect 4** یک مثال عالی برای یادگیری نحوه کار با JavaScript و دستکاری DOM است. شما می‌توانید این پروژه را گسترش دهید و ویژگی‌های بیشتری مانند افزودن امتیاز، زمان سنج یا حالت‌های مختلف بازی اضافه کنید. از کدنویسی لذت ببرید!
| صفحه قابل مشاهده: دانلود پروژه بازی **Connect 4** با استفاده از HTML، CSS و JavaScript می‌باشد