Mastermind: Difference between revisions

(Added solution for Action!)
Line 1,038:
for j range 2
for c range 2
move_penmove c * 3.5 + 71.5 r * 11.5 + 10.4 + j * 3.5
if black > 0
set_colorcolor 000
draw_circlecircle 1.4
black -= 1
elif white > 0
set_colorcolor 999
draw_circlecircle 1.4
white -= 1
else
set_colorcolor 310
draw_circlecircle 0.7
.
.
Line 1,055:
.
func show_code . .
set_colorcolor 531
move_penmove 22 0
draw_rectrect 46 8
for i range 4
move_penmove i * 8 + 28 3
set_colorcolor col[code[i]]
draw_circlecircle 2
.
.
func draw_guess . .
for c range 4
move_penmove c * 12 + 20 row * 11.5 + 12
set_colorcolor col[guess[c]]
draw_circlecircle 3.8
.
.
func next_row . .
set_colorcolor 420
set_linewidthlinewidth 11
move_penmove 17 row * 11.5 + 12
draw_lineline 60 row * 11.5 + 12
call draw_guess
move_penmove 73.5 row * 11.5 + 12
set_colorcolor 310
draw_circlecircle 5.0
set_colorcolor 753
move_penmove 71.5 row * 11.5 + 8.5
set_textsizetextsize 7
draw_texttext "✓"
.
func rate . .
move_penmove 73.5 row * 11.5 + 12
set_colorcolor 531
draw_circlecircle 5.2
c[] = code[]
g[] = guess[]
Line 1,108:
.
call draw_rate row black white
set_colorcolor 531
set_linewidthlinewidth 12
move_penmove 17 row * 11.5 + 12
draw_lineline 60 row * 11.5 + 12
call draw_guess
row -= 1
Line 1,119:
if row = -1
call show_code
set_timertimer 12
else
call next_row
Line 1,132:
code[i] = random 6
.
set_colorcolor 531
move_penmove 10 10
draw_rectrect 70 80
set_linewidthlinewidth 10
move_penmove 5 5
draw_lineline 5 95
draw_lineline 85 95
draw_lineline 85 5
draw_lineline 5 5
set_colorcolor 310
set_linewidthlinewidth 7
move_penmove 28 3.5
draw_lineline 58 3.5
move_penmove 30 1.5
set_colorcolor 864
set_textsizetextsize 4.5
draw_texttext "Mastermind"
set_colorcolor 310
set_linewidthlinewidth 0.5
move_penmove 10 10
draw_lineline 10 96
move_penmove 67 10
draw_lineline 67 96
move_penmove 80 10
draw_lineline 80 96
for r range 8
for c range 4
move_penmove c * 12 + 20 r * 11.5 + 12
draw_circlecircle 2
.
call draw_rate r 0 0
Line 1,178:
if row = -2
call new
elif mouse_y > row * 11.5 + 7 and mouse_y < row * 11.5 + 17 and row >= 0
if mouse_x > 15 and mouse_x < 61
call do_move
2,041

edits