-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
101 lines (60 loc) · 2.17 KB
/
index.js
File metadata and controls
101 lines (60 loc) · 2.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
/**
* Created by das953 on 15.02.17.
*/
"use strict";
//./node_modules/webpack/bin/webpack.js
function initialize() {
require('./app');
let Snake = require('./app/models/snakeModel');
let snake = new Snake();
let game = require('./app/controllers/snakeController');
game.initSnake(snake.list);
document.getElementsByTagName('BODY')[0].addEventListener('keydown', bodyKeyDown);
document.getElementById('btnStart').addEventListener('click', startGame);
document.getElementById('btnClear').addEventListener('click', clearField);
document.getElementById('Fsize').innerHTML = ` ${game.fieldSize} x ${game.fieldSize}`;
document.getElementById('Ssize').innerHTML = ` ${snake.list.getLength()}`;
document.getElementById('Fcount').innerHTML = (game.fieldSize * game.fieldSize).toString();
let move, food;
function bodyKeyDown(e) {
/*
* left - a - num 4
* up - w - num 8
* right - d - num 6
* down - s - num 2
* */
if(e.keyCode === 100 || e.keyCode === 37 || e.keyCode === 65){
snake.sidePos[0]=1;
}
else if(e.keyCode === 104 || e.keyCode === 38 || e.keyCode === 87){
snake.sidePos[0]=2;
}
else if(e.keyCode === 102 || e.keyCode === 39 || e.keyCode === 68){
snake.sidePos[0]=3;
}
else if(e.keyCode === 98 || e.keyCode === 40 || e.keyCode === 83){
snake.sidePos[0]=4;
}
}
function startGame() {
if(snake.onGame === 0) {
snake.onGame = 1;
move = snake.moveInterval(game, 500);
food = snake.foodInterval(game, 5000);
}
}
function clearField() {
if(snake.onGame !== 0) {
let field = document.getElementById('Field');
while (field.firstChild){
field.removeChild(field.firstChild);
}
clearInterval(move);
clearInterval(food);
snake = new Snake();
game.initSnake(snake.list);
document.getElementById('Ssize').innerHTML = ` ${snake.list.getLength()}`;
}
}
}
initialize();