/
collisionUtils.js
149 lines (131 loc) · 2.53 KB
/
collisionUtils.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
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
/**
引数のマップチップ数が通れないと判定される
objectマップかどうか
*/
function isObjectMap(mapNumber){
if(mapNumber >= 48 && mapNumber <= 114){
return true;
}
return false;
}
/**
引数のマップチップ番号が
コインのマップチップかどうか返す
mapNumber : マップチップ番号
*/
function isCoinMap(mapNumber){
if(mapNumber == 33){
return true;
}
return false;
}
/**
対象のマップチップを空のマップに入れ替える
*/
function replaceEmptyMap(map,mapX,mapY){
map[mapY][mapX] = NOT_DRAW_MAP;
}
/**
coinブロックかどうか判定する
mapNumber : マップチップ番号
*/
function isCoinBlock(mapNumber){
if(mapNumber == 80){
return true;
}
return false;
}
/**
対象のマップチップを空のボックスに入れ替える
*/
function replaceEmptyBoxMap(map,mapX,mapY){
map[mapY][mapX] = EMPTY_BOX_MAP;
}
/**
対象のマップチップを空のにする
*/
function replaceEmptyMap(map,mapX,mapY){
map[mapY][mapX] = NOT_DRAW_MAP;
}
/**
kinokoブロックかどうか判定する
mapNumber : マップチップ番号
*/
function isKinokoBlock(mapNumber){
if(mapNumber == 82 || mapNumber == 85){
return true;
}
return false;
}
/**
chapter37
ブロックマップチップかどうか判定する
mapNumber : マップチップ番号
*/
function isBlockMap(mapNumber){
if(mapNumber == 64){
return true;
}
return false;
}
/**
chapter41
starブロック判定
mapNumber : マップチップ番号
*/
function isStarBlock(mapNumber){
if(mapNumber == 83 || mapNumber == 67 || mapNumber == 68){
return true;
}
return false;
}
/**
* isOneUpBlock
* @param {*} mapNumber
*/
function isOneUpBlock(mapNumber){
if(mapNumber == 84){
return true;
}
return false;
}
/**
* 隠しブロック判定
* @param {*} mapNumber
*/
function isHideBlock(mapNumber){
if(mapNumber >= 192 && mapNumber <= 193){
return true;
}
return false;
}
/**
* 隠しブロック1up判定
* @param {*} mapNumber
*/
function isHideOneUpBlock(mapNumber){
if(mapNumber == 192 || mapNumber == 193){
return true;
}
return false;
}
/**
* 対象のマップチップの移動方向を返す
* @param {*} mapNumber
*/
function getItemDir(mapNumber){
if(mapNumber == 192 || mapNumber == 80 || mapNumber == 67){
return LEFT_DIR
}
return RIGHT_DIR;
}
/**
* 連続コインブロック判定
* @param {*} mapNumber
*/
function isSequenceCoinBlock(mapNumber){
if(mapNumber == 66){
return true;
}
return false;
}