کاربران گرامی در این پروژه به شما پروژه بازی با جاوا اسکریپت را قرارداده ایم شما عزیزان می توانید از بخش سایر بازی هایی که با جاوا اسکریپت طراحی شده اند را مشاهده و دانلود کنید.
در صورتی که نیاز به آموزش حضوری و یا غیر حضوری این پروژه داشتید میتوانید با ما در ارتباط باشید تا این پروژه را به شما آموزش دهیم حتی میتوانید در صورت دلخواه پروژه را به خواسته شما شخصی سازی کنیم لازم به ذکر است که تیم پروژه در صفحه دانلود پروژه بازی بازی های مختلفی را به زبان های مختلف برنامه نویسی قرار داده است .شماره تماس با پرپروژه 09050394455 می باشد
ساخت یک بازی مار با استفاده از JavaScript پروژهای جالب و آموزنده است که به شما امکان میدهد با اصول برنامهنویسی بازی آشنا شوید. در اینجا یک نمونه ساده از بازی مار ارائه شده است که شامل حرکات مار، جمعآوری غذا و امتیازدهی است.
### ویژگیهای اصلی پروژه
1. **حرکت مار**: مار با استفاده از کلیدهای جهتنما حرکت میکند.
2. **جمعآوری غذا**: مار میتواند غذا را جمعآوری کند و طول آن افزایش یابد.
3. **امتیازدهی**: هر بار که مار غذا را جمعآوری کند، امتیاز افزایش مییابد.
4. **بازی تمام میشود**: اگر مار به دیوارهها یا به خود برخورد کند، بازی تمام میشود.
### کد منبع نمونه
#### ۱. ایجاد فایل HTML
ابتدا یک فایل HTML به نام `index.html` ایجاد کرده و کد زیر را در آن قرار دهید:
```html
بازی مار
بازی مار
```
#### ۲. ایجاد فایل CSS
سپس یک فایل CSS به نام `style.css` ایجاد کنید و کد زیر را در آن قرار دهید:
```css
body {
font-family: Arial, sans-serif;
text-align: center;
background-color: #f0f0f0;
color: #333;
}
#gameArea {
width: 400px;
height: 400px;
border: 2px solid #333;
position: relative;
margin: 20px auto;
background-color: #fff;
}
.snake {
background-color: #4CAF50; /* رنگ مار */
position: absolute;
}
.food {
background-color: #FF0000; /* رنگ غذا */
position: absolute;
}
```
#### ۳. ایجاد فایل JavaScript
یک فایل JavaScript به نام `script.js` ایجاد کرده و کد زیر را در آن قرار دهید:
```javascript
const gameArea = document.getElementById('gameArea');
const scoreDisplay = document.getElementById('score');
let snake = [{ x: 10, y: 10 }];
let direction = { x: 1, y: 0 }; // شروع حرکت به سمت راست
let food = { x: 15, y: 15 };
let score = 0;
let gameInterval;
// تابع برای شروع بازی
function startGame() {
gameInterval = setInterval(gameLoop, 100);
generateFood();
}
// تابع برای بهروزرسانی بازی
function gameLoop() {
moveSnake();
if (checkCollision()) {
endGame();
} else {
render();
}
}
// تابع برای حرکت مار
function moveSnake() {
const head = { x: snake[0].x + direction.x, y: snake[0].y + direction.y };
// اگر غذا را جمع آوری کند
if (head.x === food.x && head.y === food.y) {
snake.unshift(head);
score++;
scoreDisplay.textContent = score;
generateFood();
} else {
snake.unshift(head);
snake.pop();
}
}
// تابع برای بررسی برخورد
function checkCollision() {
const head = snake[0];
// بررسی برخورد با دیوارهها
if (
head.x < 0 || head.x >= gameArea.offsetWidth / 10 ||
head.y < 0 || head.y >= gameArea.offsetHeight / 10 ||
snake.slice(1).some(segment => segment.x === head.x && segment.y === head.y)
) {
return true;
}
return false;
}
// تابع برای اتمام بازی
function endGame() {
clearInterval(gameInterval);
alert(`بازی تمام شد! امتیاز شما: ${score}`);
resetGame();
}
// تابع برای تنظیم مجدد بازی
function resetGame() {
snake = [{ x: 10, y: 10 }];
direction = { x: 1, y: 0 };
score = 0;
scoreDisplay.textContent = score;
startGame();
}
// تابع برای رسم مار و غذا
function render() {
gameArea.innerHTML = ''; // پاک کردن زمین بازی
snake.forEach(segment => {
const snakeElement = document.createElement('div');
snakeElement.className = 'snake';
snakeElement.style.width = '10px';
snakeElement.style.height = '10px';
snakeElement.style.left = `${segment.x * 10}px`;
snakeElement.style.top = `${segment.y * 10}px`;
gameArea.appendChild(snakeElement);
});
const foodElement = document.createElement('div');
foodElement.className = 'food';
foodElement.style.width = '10px';
foodElement.style.height = '10px';
foodElement.style.left = `${food.x * 10}px`;
foodElement.style.top = `${food.y * 10}px`;
gameArea.appendChild(foodElement);
}
// تابع برای تولید غذا در موقعیت تصادفی
function generateFood() {
food.x = Math.floor(Math.random() * (gameArea.offsetWidth / 10));
food.y = Math.floor(Math.random() * (gameArea.offsetHeight / 10));
}
// مدیریت کلیدهای جهتنما
document.addEventListener('keydown', event => {
switch (event.key) {
case 'ArrowUp':
if (direction.y !== 1) {
direction = { x: 0, y: -1 };
}
break;
case 'ArrowDown':
if (direction.y !== -1) {
direction = { x: 0, y: 1 };
}
break;
case 'ArrowLeft':
if (direction.x !== 1) {
direction = { x: -1, y: 0 };
}
break;
case 'ArrowRight':
if (direction.x !== -1) {
direction = { x: 1, y: 0 };
}
break;
}
});
// شروع بازی
startGame();
```
### نحوه اجرای پروژه
1. پس از ایجاد همه فایلها، به پوشه پروژه خود بروید.
2. فایل `index.html` را در مرورگر خود باز کنید.
### نتیجهگیری
این پروژه یک بازی مار ساده است که به شما امکان میدهد تا با استفاده از کلیدهای جهتنما مار را حرکت دهید و امتیاز جمعآوری کنید. شما میتوانید این بازی را با افزودن ویژگیهای بیشتری مانند سطحهای مختلف، زمانسنج، و انیمیشنهای بهتر گسترش دهید. همچنین میتوانید از گرافیکهای بهتری برای افزایش جذابیت بازی استفاده کنید.
| صفحه قابل مشاهده:
دانلود پروژه بازی مار با استفاده از JavaScript میباشد