کاربران گرامی در این پروژه به شما پروژه بازی با جاوا اسکریپت را قرارداده ایم شما عزیزان می توانید از بخش سایر بازی هایی که با جاوا اسکریپت طراحی شده اند را مشاهده و دانلود کنید.
در صورتی که نیاز به آموزش حضوری و یا غیر حضوری این پروژه داشتید میتوانید با ما در ارتباط باشید تا این پروژه را به شما آموزش دهیم حتی میتوانید در صورت دلخواه پروژه را به خواسته شما شخصی سازی کنیم لازم به ذکر است که تیم پروژه در صفحه دانلود پروژه بازی بازی های مختلفی را به زبان های مختلف برنامه نویسی قرار داده است .شماره تماس با پرپروژه 09050394455 می باشد
ساخت یک بازی ساده اتومبیل با استفاده از **JavaScript** و **Phaser** یکی از پروژههای سرگرمکننده و آموزشی است که به شما کمک میکند با این فریمورک قدرتمند آشنا شوید. در این پروژه، بازیکن کنترل یک اتومبیل را به عهده دارد و باید از موانع عبور کند و امتیاز جمعآوری کند.
### ویژگیهای اصلی پروژه
1. **کنترل اتومبیل**: بازیکن میتواند اتومبیل را به چپ و راست حرکت دهد.
2. **جمعآوری امتیاز**: با عبور از موانع، بازیکن امتیاز جمعآوری میکند.
3. **موانع**: موانع در طول بازی به صورت تصادفی ایجاد میشوند.
4. **استفاده از Phaser برای ساخت بازی**: این پروژه با استفاده از فریمورک Phaser ساخته شده است.
### مراحل پیادهسازی پروژه
#### ۱. راهاندازی پروژه
برای شروع، یک پوشه جدید برای پروژهتان ایجاد کنید و در آن یک فایل HTML به نام `index.html` بسازید. همچنین باید Phaser را به پروژه اضافه کنید. برای این کار میتوانید از CDN استفاده کنید.
#### ۲. ساختار HTML
فایل `index.html` را با کد زیر پر کنید:
```html
بازی اتومبیل ساده با Phaser
body {
margin: 0;
overflow: hidden;
}
```
#### ۳. نوشتن کد بازی
حالا یک فایل JavaScript به نام `game.js` ایجاد کنید و کد زیر را در آن بنویسید:
```javascript
const config = {
type: Phaser.AUTO,
width: 800,
height: 600,
physics: {
default: 'arcade',
arcade: {
gravity: { y: 0 },
debug: false
}
},
scene: {
preload: preload,
create: create,
update: update
}
};
const game = new Phaser.Game(config);
let car;
let cursors;
let obstacles;
let score = 0;
let scoreText;
function preload() {
this.load.image('car', 'https://img.icons8.com/ios-filled/50/000000/car.png'); // آیکون اتومبیل
this.load.image('obstacle', 'https://img.icons8.com/ios-filled/50/000000/road.png'); // آیکون مانع
}
function create() {
car = this.physics.add.image(400, 500, 'car').setOrigin(0.5, 0.5);
car.setCollideWorldBounds(true);
obstacles = this.physics.add.group();
this.physics.add.collider(car, obstacles, hitObstacle, null, this);
cursors = this.input.keyboard.createCursorKeys();
scoreText = this.add.text(16, 16, 'امتیاز: 0', { fontSize: '32px', fill: '#fff' });
this.time.addEvent({
delay: 1500,
callback: addObstacle,
callbackScope: this,
loop: true
});
}
function update() {
if (cursors.left.isDown) {
car.setVelocityX(-300);
}
else if (cursors.right.isDown) {
car.setVelocityX(300);
}
else {
car.setVelocityX(0);
}
}
function addObstacle() {
const x = Phaser.Math.Between(50, 750);
const obstacle = obstacles.create(x, 0, 'obstacle');
obstacle.setVelocityY(200);
obstacle.checkWorldBounds = true;
obstacle.outOfBoundsKill = true;
score += 10; // افزایش امتیاز
scoreText.setText('امتیاز: ' + score);
}
function hitObstacle(car, obstacle) {
this.physics.pause();
car.setTint(0xff0000);
scoreText.setText('بازی تمام شد! امتیاز نهایی: ' + score);
}
```
### توضیحات کد
1. **تنظیمات بازی**:
- `config`: تنظیمات مربوط به بازی را شامل میشود، مانند نوع، ابعاد و فیزیک.
- `scene`: صحنههای مختلف بازی (پیشبارگذاری، ایجاد، بهروزرسانی).
2. **تابع `preload()`**:
- تصاویر اتومبیل و موانع بارگذاری میشوند.
3. **تابع `create()`**:
- اتومبیل و موانع ایجاد میشوند.
- برخورد اتومبیل با موانع بررسی میشود.
- کلیدهای حرکتی تنظیم میشوند.
- امتیاز اولیه بهروز میشود و موانع بهطور دورهای اضافه میشوند.
4. **تابع `update()`**:
- وضعیت اتومبیل بر اساس کلیدهای فشرده شده بهروزرسانی میشود.
5. **تابع `addObstacle()`**:
- موانع به صورت تصادفی در بالای صفحه ایجاد میشوند و به سمت پایین حرکت میکنند.
- امتیاز بازیکن افزایش مییابد.
6. **تابع `hitObstacle()`**:
- در صورت برخورد اتومبیل با مانع، فیزیک بازی متوقف میشود و رنگ اتومبیل تغییر میکند.
### نحوه اجرای پروژه
1. فایلهای `index.html` و `game.js` را در یک پوشه ذخیره کنید.
2. فایل `index.html` را در مرورگر باز کنید تا بازی اتومبیل اجرا شود.
### نتیجهگیری
این پروژه بازی اتومبیل ساده به شما کمک میکند تا با ویژگیهای اصلی فریمورک Phaser آشنا شوید. شما میتوانید با افزودن قابلیتهایی مانند سطوح مختلف، افزایش سرعت بازی، و اضافه کردن قدرتها و امکانات جدید برای بازیکن، این بازی را توسعه دهید. Phaser فریمورکی قوی برای ساخت بازیهای 2D است و با استفاده از این پروژه میتوانید تسلط بیشتری بر آن پیدا کنید.
| صفحه قابل مشاهده:
دانلود پروژه بازی ساده اتومبیل با استفاده از **JavaScript** و **Phaser* میباشد