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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
|
-
|
-
|
!
-
|
!
-
|
!
-
|
!
-
|
!
-
|
-
|
!
-
-
|
!
!
-
-
|
!
!
-
|
!
-
|
!
-
|
!
-
-
|
!
!
-
|
-
|
!
-
|
-
|
!
-
|
!
| *hajime
title "GOLDROOMMINIver1.01"
player=3
*stageshokika
screen 0,640,480
cls 4
font "MS ゴシック",32
stage=stage+1
fl_g=0
fl_o=0
randomize stage
dim map,100,100
buffer 3,32,128
cls 4
font "MS ゴシック",32
cl_r=rnd(155)+99
cl_g=rnd(155)+99
cl_b=rnd(155)+99
repeat 32
ch_a=cnt
repeat 32
ch_b=cnt*3
color 0,0,0
pset ch_b/3,ch_a
ch_c=rnd(3)
ch_b=ch_b+ch_c
color cl_r,cl_g,cl_b
pset ch_b,ch_a+32
loop
loop
color cl_r,cl_g,cl_b
pos 0,32
mes "◆"
color 255,255,128
mes "▲"
color 255,0,0
mes "ア"
gsel 0
repeat 20
dr_x=cnt
repeat 15
dr_y=cnt
ch_r=rnd(9)
ch_e=ch_r
if ch_r<7 {
ch_r=0
} else {
ch_r=1
}
map.dr_x.dr_y=ch_r
ch_c=rnd(27)
if (dr_x=0)|(dr_y=1)|(dr_x=19)|(dr_y=14) {
map.dr_x.dr_y=1:goto *mapjump
}
if (dr_y=0)|((dr_x=10)&(dr_y=7)) {
map.dr_x.dr_y=0:goto *mapjump
}
if (((ch_c>24)|((fl_g>5)&(fl_o=0)&(ch_c>12)))&(ch_e>7)&(dr_x!10)) {
map.dr_x.dr_y=3:fl_o=1:goto *mapjump
}
if ((ch_c>18)&(ch_e=6))|((ch_c>8)&(ch_e=7)) {
map.dr_x.dr_y=2:fl_g=fl_g+1:goto *mapjump
}
*mapjump
ch_r=map.dr_x.dr_y
pos dr_x*32,dr_y*32
gcopy 3,0,ch_r*32,32,ch_r*32+32
loop
loop
pl_x=10:pl_y=7
ti_limit=ti_limit/3+1010-(stage*10)
if ti_limit<500 :ti_limit=500
gosub *putgamen
await 200
key_a=0
fl_fa=0
fl_fb=0
*main
ti_limit=ti_limit-1
if ti_limit<1 :goto *miss1
gosub *putgamen
pl_xx=pl_x:pl_yy=pl_y
stick key_a,5:fl_key=key_a
*secondmain
if key_a=1 :goto *goleft
if key_a=4 :goto *goright
goto *move
*goleft
pl_x=pl_x-1
pl_xxx=pl_x
goto *move
*goright
pl_x=pl_x+1
pl_xxx=pl_x
goto *move
*goup
pl_y=pl_y-1
pl_yyy=pl_y
return
*godown
pl_y=pl_y+1
pl_yyy=pl_y
return
*move
if fl_fa=1 {
gosub *godown
} else {
gosub *goup
}
fl_fb=0
ch_n=map.pl_x.pl_y
if (ch_n=1) {
pl_sx=pl_xx:pl_sy=pl_y:ch_nb=map.pl_sx.pl_sy:if (ch_nb!1) {
pl_x=pl_xx:goto *shori
}
}
if (ch_n=1) {
pl_sx=pl_x:pl_sy=pl_yy:ch_nb=map.pl_sx.pl_sy:if (ch_nb!1) {
fl_fa=fl_fa+1:fl_fa=fl_fa\2:fl_fb=1:pl_y=pl_yy:goto *shori
}
}
ch_n=map.pl_x.pl_y
if (ch_n=1) {
pl_x=pl_xx:pl_y=pl_yy:fl_fa=fl_fa+1:fl_fa=fl_fa\2:fl_fb=1:goto *shori
}
ch_n=map.pl_x.pl_y
if (ch_n=1) {
pl_x=pl_xx:pl_y=pl_yy:fl_fa=fl_fa+1:fl_fa=fl_fa\2:fl_fb=1:goto *shori
}
ch_n=map.pl_x.pl_y
if (ch_n=1) {
pl_x=pl_xx:pl_y=pl_yy:fl_fa=fl_fa+1:fl_fa=fl_fa\2:fl_fb=1
}
*shori
ch_n=map.pl_x.pl_y
if ch_n=2 {
fl_fa=fl_fa+1+fl_fb:fl_fa=fl_fa\2:sc=sc+5:fl_g=fl_g-1:map.pl_x.pl_y=0:if fl_g=0 {
goto *clear
}
}
if ch_n=3:goto *miss1
gosub *jiki
ti_wait=100-(stage/5)
await ti_wait
goto *main
*miss1
gosub *jiki
player=player-1
gosub *putgamen
stage=stage-1
ti_limit=0
if player>0 {
pos 280,200:mes "MISS":goto *nextshori
} else {
pos 248,200:mes "GAME OVER"
}
gosub *push
end
*nextshori
gosub *push
goto *stageshokika
*clear
gosub *jiki
gosub *putgamen
if stage=100 {
pos 248,200:mes "ALL CLEAR"
} else {
pos 280,200:mes "CLEAR":goto *nextstage
}
sc_b=player*100
sc=sc+sc_b
pos 248,250
mes "BONUS"+sc_b
gosub *putgamen
gosub *keykey
end
*nextstage
fl_s=stst\5
if fl_s=0 {
pos 256,300:mes "JIKI 1UP":player=player+1
}
gosub *push
goto *stageshokika
*jiki
color 0,0,0
boxf pl_xx*32,pl_yy*32,pl_xx*32+31,pl_yy*32+31
color 0,255,0
pos pl_x*32,pl_y*32
mes "○"
pos pl_x*32+4,pl_y*32-2
mes "・"
pos pl_x*32+16-4,pl_y*32-2
mes "・"
color 255,255,255
return
*push
redraw 1
pos 208,400:mes "PUSH-SPACE-KEY"
*keykey
await 1
stick key_a
if key_a=16:await 100:return
goto *keykey
*putgamen
redraw 0
color 0,0,0
boxf 0,0,640,32
color 255,255,255
pos 0,0
mes "STAGE "+stage
pos 160,0
mes "SCORE "+sc
pos 352,0
mes "JIKI "+player
pos 480,0
mes "TIME "+ti_limit
redraw 1
return
|