First commit
This commit is contained in:
commit
0699c09b19
3 changed files with 283 additions and 0 deletions
21
index.html
Normal file
21
index.html
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Breaking Ball</title>
|
||||||
|
<link rel='stylesheet' href='styles.css'>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body onkeydown="keyListen(event);">
|
||||||
|
|
||||||
|
<div id="score"></div>
|
||||||
|
<div id="container">
|
||||||
|
<table id="tabl" border="0"></table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
|
||||||
|
<script src="main.js"></script>
|
||||||
|
|
||||||
|
</html>
|
244
main.js
Normal file
244
main.js
Normal file
|
@ -0,0 +1,244 @@
|
||||||
|
var table_Width = 30;
|
||||||
|
var table_Height = 30;
|
||||||
|
var table_Max = table_Width * table_Height;
|
||||||
|
var speed = 70; // Higher = Slower
|
||||||
|
var maxSpeed = 50; // Lower = Faster
|
||||||
|
|
||||||
|
var headSnake = 4;
|
||||||
|
var max_Cells = table_Width * table_Height;
|
||||||
|
var cell_Id = 0; // Counter ID For initCreate()
|
||||||
|
var arr = [];
|
||||||
|
var loopMovement;
|
||||||
|
|
||||||
|
var playerBoard = (table_Width * table_Height) - (table_Width / 2) - 3;
|
||||||
|
var boardSize = 6;
|
||||||
|
var ball = 255;
|
||||||
|
|
||||||
|
var fire;
|
||||||
|
var _fire;//fire's interval
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var downRight = table_Width + 1;
|
||||||
|
var downLeft = table_Width - 1;
|
||||||
|
var upRight = -table_Width + 1;
|
||||||
|
var upLeft = -table_Width - 1;
|
||||||
|
|
||||||
|
var directionBall = upRight;
|
||||||
|
|
||||||
|
var blocks = [94, 98, 102, 106, 110, 114, 184, 188, 192, 196, 200, 204, 274, 278, 282, 286, 290, 294, 364, 368, 372, 376, 380, 384];
|
||||||
|
|
||||||
|
|
||||||
|
function initCreate() {
|
||||||
|
document.getElementById("tabl").innerHTML = "";
|
||||||
|
var tab = document.getElementById("tabl");
|
||||||
|
|
||||||
|
for (i = 0; i < table_Height; i++) {
|
||||||
|
var trtr = document.createElement("tr");
|
||||||
|
|
||||||
|
for (j = 0; j < table_Width; j++) {
|
||||||
|
var a = document.createElement("td");
|
||||||
|
a.setAttribute("id", "ta" + cell_Id);
|
||||||
|
arr.push(a);
|
||||||
|
cell_Id++;
|
||||||
|
trtr.appendChild(a);
|
||||||
|
}
|
||||||
|
tab.appendChild(trtr);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Player Create
|
||||||
|
arr[ball].style.backgroundColor = "red";
|
||||||
|
|
||||||
|
for (i = 0; i < blocks.length; i++) {
|
||||||
|
blocks[i] = Math.ceil(Math.random() * 400);
|
||||||
|
arr[blocks[i]].style.backgroundColor = "green";
|
||||||
|
arr[blocks[i] + 1].style.backgroundColor = "green";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
for (i = 0; i < boardSize; i++) {
|
||||||
|
arr[playerBoard + i].style.backgroundColor = "black";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function changeDiraction(directUpDown) {
|
||||||
|
|
||||||
|
if (directionBall == upRight && directUpDown == 1) {
|
||||||
|
directionBall = downRight;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (directionBall == upLeft && directUpDown == 1) {
|
||||||
|
directionBall = downLeft;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (directionBall == downRight && directUpDown == 1) {
|
||||||
|
directionBall = upRight;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (directionBall == downLeft && directUpDown == 1) {
|
||||||
|
directionBall = upLeft;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if (directionBall == downRight) {
|
||||||
|
directionBall = downLeft;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (directionBall == downLeft) {
|
||||||
|
directionBall = downRight;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (directionBall == upRight) {
|
||||||
|
directionBall = upLeft;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (directionBall == upLeft) {
|
||||||
|
directionBall = upRight;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function cheackHitBorad() {
|
||||||
|
var hit;
|
||||||
|
for (i = 0; i < boardSize; i++) {
|
||||||
|
hit = ((playerBoard + i) == ball + directionBall);
|
||||||
|
if (hit == true) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return hit;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function ballMovement() {
|
||||||
|
arr[ball].style.backgroundColor = "white";
|
||||||
|
|
||||||
|
ball += directionBall;
|
||||||
|
document.getElementById('ta' + ball).style.borderRadius = '1em';
|
||||||
|
|
||||||
|
// Right Side Check
|
||||||
|
if ((ball + directionBall) % table_Width == 0) {
|
||||||
|
changeDiraction();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Left Side Check
|
||||||
|
if (ball % table_Width == 0) {
|
||||||
|
changeDiraction();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Up Side Check
|
||||||
|
if ((ball + directionBall) < 0) {
|
||||||
|
changeDiraction(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Down Side (Loose) Check
|
||||||
|
if ((ball + directionBall) > (table_Width * table_Height)) {
|
||||||
|
console.log("LOOSERRRRRRRR");
|
||||||
|
clearInterval(_ballMovement);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Board Hit By Ball Check
|
||||||
|
if (ball > (table_Max - (table_Width * 2)) && cheackHitBorad()) {
|
||||||
|
changeDiraction(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Blocks Hit Check
|
||||||
|
for (i = 0; i < blocks.length; i++) {
|
||||||
|
if ((ball + directionBall) == blocks[i] || (ball + directionBall) == (blocks[i] + 1)) {
|
||||||
|
if (ball - blocks[i] == table_Width || ball - blocks[i] > 0) {
|
||||||
|
console.log(i);
|
||||||
|
|
||||||
|
changeDiraction(1);
|
||||||
|
} else if (ball - blocks[i] == -table_Width || ball - blocks[i] < 0) {
|
||||||
|
changeDiraction(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
arr[blocks[i]].style.backgroundColor = "white";
|
||||||
|
arr[blocks[i] + 1].style.backgroundColor = "white";
|
||||||
|
|
||||||
|
blocks.splice(i, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
arr[ball].style.backgroundColor = "red";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function movement(side) {
|
||||||
|
|
||||||
|
|
||||||
|
for (i = 0; i < boardSize; i++) {
|
||||||
|
arr[playerBoard + i].style.backgroundColor = "white";
|
||||||
|
}
|
||||||
|
|
||||||
|
playerBoard += side;
|
||||||
|
console.log(playerBoard);
|
||||||
|
|
||||||
|
if (playerBoard < table_Max - table_Width) {
|
||||||
|
playerBoard++;
|
||||||
|
}
|
||||||
|
if (playerBoard + boardSize > (table_Width * table_Height)) {
|
||||||
|
playerBoard--;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < boardSize; i++) {
|
||||||
|
arr[playerBoard + i].style.backgroundColor = "black";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
function _fire_(){
|
||||||
|
if (fire < 0) {
|
||||||
|
arr[fire +table_Width].style.backgroundColor = 'white';
|
||||||
|
arr[(fire+boardSize) +table_Width].style.backgroundColor = 'white';
|
||||||
|
clearInterval(_fire);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
console.log('here');
|
||||||
|
fire -=table_Width;
|
||||||
|
arr[fire].style.backgroundColor = 'orange';
|
||||||
|
arr[(fire+boardSize)].style.backgroundColor = 'orange';
|
||||||
|
arr[(fire+boardSize)+table_Width].style.backgroundColor = 'white';
|
||||||
|
arr[fire +table_Width].style.backgroundColor = 'white';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
function keyListen(event) {
|
||||||
|
switch (event.keyCode) {
|
||||||
|
case 37: //left
|
||||||
|
movement(-1);
|
||||||
|
break;
|
||||||
|
case 39: //right
|
||||||
|
movement(1);
|
||||||
|
break;
|
||||||
|
case 32: //fire
|
||||||
|
fire = playerBoard;
|
||||||
|
_fire = setInterval(_fire_,10);
|
||||||
|
break;
|
||||||
|
// case 40: //down
|
||||||
|
// movement(table_Width);
|
||||||
|
// break;
|
||||||
|
case 80: //down
|
||||||
|
clearInterval(_ballMovement);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
initCreate();
|
||||||
|
var _ballMovement = setInterval(ballMovement, speed);
|
18
styles.css
Normal file
18
styles.css
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
table {
|
||||||
|
border-spacing: 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
td {
|
||||||
|
height: 15px;
|
||||||
|
width: 13px;
|
||||||
|
/*border: 1px solid black;*/
|
||||||
|
text-align: center;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container {
|
||||||
|
margin: 0 auto;
|
||||||
|
position: absolute;
|
||||||
|
border: 3px solid pink;
|
||||||
|
}
|
Loading…
Reference in a new issue