global makemine
type mfld
xpos
ypos
type as string
endtype
dim minefield(798) as mfld
badmines#=798
for mines=1 to 798
if badmines#>0
check#=rnd(5)+1
if check#=1 then minefield(mines).type="bad" else minefield(mines).type="good"
endif
dec badmines#,1
next mines
Do
cls
for mines=1 to 798
if minefield(mines).type="dead"
else
if mines<50 then xinc#=0
if mines=50 then xinc#=mines
if mines=100 then xinc#=mines
if mines=150 then xinc#=mines
if mines=200 then xinc#=mines
if mines=250 then xinc#=mines
if mines=300 then xinc#=mines
if mines=350 then xinc#=mines
if mines=400 then xinc#=mines
if mines=450 then xinc#=mines
if mines=500 then xinc#=mines
if mines=550 then xinc#=mines
if mines=600 then xinc#=mines
if mines=650 then xinc#=mines
if mines=700 then xinc#=mines
if mines=750 then xinc#=mines
if mines=800 then xinc#=mines
Minefield(mines).xpos=(xinc#/2)+10:Minefield(mines).ypos=(mines*9.3)-(xinc#*9.3)+10
if mousex()>(Minefield(mines).xpos-3) and mousex()<(Minefield(mines).xpos+3) and mousey()>(Minefield(mines).ypos-3) and mousey()<(Minefield(mines).ypos+3)
if mouseclick()=1
if minefield(mines).type="bad" then goto endg
if minefield(mines).type="good" then minefield(mines).type="dead" : minefield(rnd(798)).type="dead" : minefield(rnd(798)).type="dead" : minefield(rnd(798)).type="dead" : minefield(rnd(798)).type="dead"
endif
mine(1,Minefield(mines).xpos,Minefield(mines).ypos,255,255,255,3)
else
mine(1,Minefield(mines).xpos,Minefield(mines).ypos,0,255,0,3)
endif
endif
next mines
sync
loop
function mine(makemine,x,y,r,g,b,s)
for makemine=1 to s
ink rgb(r,g,b),0
circle x,y,makemine
next makemine
endfunction
endg:
cls
repeat
set text size 60
text 20,20,"GAME OVER!"
until scancode()>0
exit
"Forgiveness is a good thing"
"Forgiveness is between them, and God. I set up the meeting"
-Man on Fire