Воскресенье, 24.11.2024, 15:41 | Приветствую Вас Гость

...

Код

Главная » Статьи » Js

Начало пинг-понга 2

<!DOCTYPE html>
<html>
<body onkeydown="key_handler()" onload="myfunc1()">

<canvas id="myCanvas" width="300" height="300" style="border:1px solid #d3d3d3;">
</canvas>

<script>

var x = 150;
var y = 290;
var speedX = 1;
var speedY = 1;
var direction = 0;
var xObj_1 = 0;
var yObj_1 = 0;
var xObj_2 = 0;
var yObj_2 = 290;

var status = 1;


function myfunc1(){

let playGame = setInterval(function () {

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.clearRect(0,0, 300,300);
ctx.fillStyle = "black";
ctx.fillRect(x,y,10,10);


if (direction == 0 && x < 290)
{
x+=speedX;
y-=speedY;
if (x >= 290) direction = 1;

}

if (direction == 1 && y > 0)
{
x-=speedX;
y-=speedY;
if (y <= 0) direction = 2;
}

if (direction == 2 && x > 0)
{
x-=speedX;
y+=speedY;
if (x <= 0) direction = 3;
}

if (direction == 3 && y < 290)
{

x+=speedX;
y+=speedY;
if (y >= 290) 
{
direction = 0;
}
}

ctx.fillStyle = "red";
ctx.fillRect(xObj_1, yObj_1,100, 10);

ctx.fillRect(xObj_2, yObj_2,100,10);

if (collision() == true) 
{

if (y == 9 && status == 1) alert("столкновение с платформой");
if (y == 9 && status == 2) alert("отскок от платформы");
if (status == 2) status = 0;
status++;
}

},10);

}

function collision() {
if (xObj_1+100  > x &&
xObj_1 < x+10 &&
yObj_1+10 > y &&
yObj_1 < y+10) {
return true;
}
else {
return false;
}
}


function key_handler(){

if (event.code == 'KeyQ' && xObj_1 > 0) {
xObj_1 -= 5;

}

if (event.code == 'KeyW' && xObj_1 < 200) {
xObj_1 += 5;
}

if (event.code == 'KeyO' && xObj_2 > 0) {
xObj_2 -= 5;

}

if (event.code == 'KeyP' && xObj_2 < 200) {
xObj_2 += 5;
}
}

</script>

</body>
</html>

Категория: Js | Добавил: moskov (20.05.2020)
Просмотров: 167 | Рейтинг: 0.0/0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Меню сайта

Категории раздела

PHP [41]
C++ [71]
Autoit [108]
Processing [105]
Basic4GL [7]
Fasm [2]
PABC [7]
Js [233]
Gentee [1]
Python [204]
Java android [3]
Small Basic [9]

Мини-чат

Статистика


Онлайн всего: 2
Гостей: 2
Пользователей: 0

Форма входа

Друзья сайта

  • ЗОВ КОСМОСА

  • Хулиган Вселенной

  • Тюремная поэзия

  • Религиозная поэзия

  • Сайт клана ЛеГиоН
  • Поиск