-
Notifications
You must be signed in to change notification settings - Fork 1
/
random.js
33 lines (29 loc) · 992 Bytes
/
random.js
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
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
function randomCardinalDirection() {
return getRandomInt(1, 4);
}
function randomSpeed(direction) {
var speed = getRandomInt(2, 5);
speed = speed / 2;
if (direction === DIRECTIONS.down || direction === DIRECTIONS.left) {
return speed * -1;
} else {
return speed;
}
}
function randomSize() {
return getRandomInt(2, MAX_ENEMY_SIZE);
}
function randomStartingCoordinates(cardinalDirection, enemySize) {
if (cardinalDirection === DIRECTIONS.up) {
return {x: getRandomInt(0, SIDE_LENGTH), y: (0 - enemySize)};
} else if (cardinalDirection === DIRECTIONS.down) {
return {x: getRandomInt(0, SIDE_LENGTH), y: SIDE_LENGTH};
} else if (cardinalDirection === DIRECTIONS.right) {
return {x: (0 - enemySize), y: getRandomInt(0, SIDE_LENGTH)};
} else if (cardinalDirection === DIRECTIONS.left) {
return {x: SIDE_LENGTH, y: getRandomInt(0, SIDE_LENGTH)};
}
}