Редактирование: Flappy Bird original

Перейти к: навигация, поиск

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 1: Строка 1:
 
{{#widget:Iframe  | url=https://lavrentiy123.github.io/FlappyBird1/Flap.html  |width=400  | height=650  }}
 
{{#widget:Iframe  | url=https://lavrentiy123.github.io/FlappyBird1/Flap.html  |width=400  | height=650  }}
 
 
Описание кода HTML
 
 
<!DOCTYPE html>
 
<html lang="en">
 
<head>
 
<meta charset="UTF-8">
 
<meta name="viewport" content="width=device-width, initial-scale=1.0">
 
<meta http-equiv="X-UA-Compatible" content="ie=edge">
 
<title>Flappy Bird!</title>
 
</head>
 
<body>
 
 
 
<canvas id="canvas" width="288" height="512"></canvas>
 
 
<script src="Flap.js"></script>
 
</body>
 
</html>
 
 
 
 
 
 
Описание кода JavaScript
 
 
 
//создаем канвас
 
 
var cvs = document.getElementById("canvas");
 
 
//вид игры:
 
 
var ctx = cvs.getContext("2d");
 
 
//создаем объекты
 
 
var bird = new Image();
 
var bg = new Image();
 
var fg = new Image();
 
var pipeUp = new Image();
 
var pipeBottom = new Image();
 
 
bird.src = "flappy_bird_bird.png";
 
bg.src = "flappy_bird_bg.png";
 
fg.src = "flappy_bird_fg.png";
 
pipeUp.src = "flappy_bird_pipeUp.png";
 
pipeBottom.src = "flappy_bird_pipeBottom.png";
 
 
// Звуковые файлы
 
 
//var fly = new Audio();
 
var score_audio = new Audio();
 
 
//fly.src = "js_game_audio/fly.mp3";
 
score_audio.src = "js_game_audio/score.mp3";
 
 
var gap = 90;
 
 
// При нажатии на какую-либо кнопку
 
 
document.addEventListener("keydown", moveUp); //отслеживаем какое-либо дейтвие
 
 
 
function moveUp() {
 
yPos -= 26;    // поднимает на 26 единиц выше
 
//fly.play();
 
}
 
 
// Создание блоков
 
 
var pipe = [];    //создаем массив пустой
 
 
pipe[0] = {
 
x : cvs.width, //за экраном находится
 
y : 0
 
}
 
 
var score = 0;
 
 
// Позиция птицы
 
 
var xPos = 10;
 
var yPos = 150;
 
var grav = 1;
 
 
//рисуем объекты в канвасе
 
 
function draw() {
 
ctx.drawImage(bg, 0, 0);  //рисуем картинку
 
 
//i идет от 0 до количесва эллементов в массиве
 
for(var i = 0; i < pipe.length; i++) {
 
 
//используем координаты из массива
 
 
ctx.drawImage(pipeUp, pipe[i].x, pipe[i].y);
 
ctx.drawImage(pipeBottom, pipe[i].x, pipe[i].y + pipeUp.height + gap);
 
 
pipe[i].x--;
 
 
// новые блоки - постоянное их создание + добавляем новый эллемент
 
 
if(pipe[i].x == 125) {
 
pipe.push({
 
x : cvs.width,//ширина
 
y : Math.floor(Math.random() * pipeUp.height) - pipeUp.height //случайное число (случайное место появления блоков)
 
});
 
}
 
 
// Отслеживание прикосновений (столкновений)
 
 
//с блоками и землей
 
 
if(xPos + bird.width >= pipe[i].x
 
&& xPos <= pipe[i].x + pipeUp.width
 
&& (yPos <= pipe[i].y + pipeUp.height
 
|| yPos + bird.height >= pipe[i].y + pipeUp.height + gap) || yPos + bird.height >= cvs.height - fg.height) {
 
location.reload(); // Перезагрузка страницы
 
}
 
 
//количество очков
 
 
if(pipe[i].x == 5) {
 
score++;
 
score_audio.play();
 
}
 
}
 
 
ctx.drawImage(fg, 0, cvs.height - fg.height);
 
ctx.drawImage(bird, xPos, yPos);
 
 
yPos += grav; //увелич на 1.5
 
 
ctx.fillStyle = "#red";
 
ctx.font = "27px Verdana";
 
ctx.fillText("Счет: " + score, 10, cvs.height - 20);
 
 
requestAnimationFrame(draw); //постоянно метод ctx.drawImage
 
}
 
 
pipeBottom.onload = draw;
 
//используется чтобы все изображения были загружены и только поcле мы видели риунок
 
Вам запрещено изменять защиту статьи. Edit Создать редактором

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии Public Domain (см. Department of Theoretical and Applied Mechanics:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Отменить | Справка по редактированию  (в новом окне)
Источник — «http://tm.spbstu.ru/Flappy_Bird_original»