Forráskód Böngészése

Cleaned code. More var, less :=

Steve Thielemann 2 éve
szülő
commit
1be92e9026
1 módosított fájl, 65 hozzáadás és 61 törlés
  1. 65 61
      testdoor/testdoor.go

+ 65 - 61
testdoor/testdoor.go

@@ -29,16 +29,16 @@ func (d *door.Door) PressAKey() {
 
 
 func press_a_key(d *door.Door) int {
 func press_a_key(d *door.Door) int {
 	d.Write(door.Reset + door.CRNL + "Press a key to continue...")
 	d.Write(door.Reset + door.CRNL + "Press a key to continue...")
-	k := d.Key()
+	var k int = d.Key()
 	d.Write(door.CRNL)
 	d.Write(door.CRNL)
 	return k
 	return k
 }
 }
 
 
 func about_test_door(d *door.Door) {
 func about_test_door(d *door.Door) {
-	W := 60
-	center_x := (door.Width - W) / 2
-	center_y := (door.Height - 16) / 2
-	about := door.Panel{X: center_x,
+	var W int = 60
+	var center_x int = (door.Width - W) / 2
+	var center_y int = (door.Height - 16) / 2
+	var about door.Panel = door.Panel{X: center_x,
 		Y:           center_y,
 		Y:           center_y,
 		Width:       W,
 		Width:       W,
 		Style:       door.SINGLE_DOUBLE,
 		Style:       door.SINGLE_DOUBLE,
@@ -63,11 +63,11 @@ func about_test_door(d *door.Door) {
 		"",
 		"",
 		"It is written in Go, understands CP437 and unicode, adapts",
 		"It is written in Go, understands CP437 and unicode, adapts",
 		"to screen sizes, uses door32.sys, supports TheDraw Fonts,",
 		"to screen sizes, uses door32.sys, supports TheDraw Fonts,",
-		"and runs on Linux and Windows."} {
+		"has NoMoreSecrets effect, and runs on Linux and Windows."} {
 		about.Lines = append(about.Lines, door.Line{Text: fmt.Sprintf("%*s", -W, text)})
 		about.Lines = append(about.Lines, door.Line{Text: fmt.Sprintf("%*s", -W, text)})
 	}
 	}
 
 
-	better := door.NoMoreSecretsDefault
+	var better door.NoMoreSecretsConfig = door.NoMoreSecretsDefault
 	better.Color = door.ColorText("BRI CYAN ON BLUE")
 	better.Color = door.ColorText("BRI CYAN ON BLUE")
 
 
 	door.NoMoreSecrets(about.Output(), d, &better)
 	door.NoMoreSecrets(about.Output(), d, &better)
@@ -75,7 +75,7 @@ func about_test_door(d *door.Door) {
 
 
 func MainMenu() door.Menu {
 func MainMenu() door.Menu {
 	// Make the main menu
 	// Make the main menu
-	m := door.Menu{Panel: door.Panel{Width: 45,
+	var m door.Menu = door.Menu{Panel: door.Panel{Width: 45,
 		X:           5,
 		X:           5,
 		Y:           5,
 		Y:           5,
 		Style:       door.DOUBLE,
 		Style:       door.DOUBLE,
@@ -109,10 +109,10 @@ func MainMenu() door.Menu {
 func display_information(d *door.Door) {
 func display_information(d *door.Door) {
 	d.Write(door.Clrscr + door.CRNL)
 	d.Write(door.Clrscr + door.CRNL)
 
 
-	keyColor := door.ColorText("BRI GREEN")
-	sepColor := door.ColorText("BRI YEL")
-	valColor := door.ColorText("CYAN")
-	nice_format := func(key string, value string) string {
+	var keyColor string = door.ColorText("BRI GREEN")
+	var sepColor string = door.ColorText("BRI YEL")
+	var valColor string = door.ColorText("CYAN")
+	var nice_format func(string, string) string = func(key string, value string) string {
 		return fmt.Sprintf("%s%-20s %s: %s%s", keyColor, key, sepColor, valColor, value) + door.CRNL
 		return fmt.Sprintf("%s%-20s %s: %s%s", keyColor, key, sepColor, valColor, value) + door.CRNL
 	}
 	}
 
 
@@ -134,7 +134,7 @@ func display_information(d *door.Door) {
 }
 }
 
 
 func display_ansi(d *door.Door) {
 func display_ansi(d *door.Door) {
-	art := ANSIGrowl()
+	var art []string = ANSIGrowl()
 	d.Write(door.Clrscr)
 	d.Write(door.Clrscr)
 	for _, line := range art {
 	for _, line := range art {
 		d.Write(line + door.CRNL)
 		d.Write(line + door.CRNL)
@@ -147,7 +147,7 @@ func font_demo(d *door.Door) {
 	var centering string
 	var centering string
 
 
 	d.Write(door.Clrscr + door.CRNL) //  + door.CRNL + door.CRNL)
 	d.Write(door.Clrscr + door.CRNL) //  + door.CRNL + door.CRNL)
-	fac := FontAmazonCyan()
+	var fac door.ColorFont = FontAmazonCyan()
 	output, l = fac.Output("ABCDEFGHIJKL")
 	output, l = fac.Output("ABCDEFGHIJKL")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = fac.Output("Cyan")
 		output, l = fac.Output("Cyan")
@@ -162,7 +162,7 @@ func font_demo(d *door.Door) {
 		d.Write(door.CRNL)
 		d.Write(door.CRNL)
 	}
 	}
 
 
-	patch := fac.Scan(6)
+	var patch door.ColorMap = fac.Scan(6)
 	// log.Printf("Patch: %#v\n", patch)
 	// log.Printf("Patch: %#v\n", patch)
 
 
 	fac.Modify(4, patch)
 	fac.Modify(4, patch)
@@ -183,7 +183,7 @@ func font_demo(d *door.Door) {
 	d.Write(door.CRNL)
 	d.Write(door.CRNL)
 	press_a_key(d)
 	press_a_key(d)
 
 
-	fab := FontAnarchyBlue()
+	var fab door.ColorFont = FontAnarchyBlue()
 	output, l = fab.Output("Bugz is Here!")
 	output, l = fab.Output("Bugz is Here!")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = fab.Output("Hello")
 		output, l = fab.Output("Hello")
@@ -198,7 +198,7 @@ func font_demo(d *door.Door) {
 		d.Write(door.CRNL)
 		d.Write(door.CRNL)
 	}
 	}
 
 
-	unchain := FontUnchained()
+	var unchain door.ColorFont = FontUnchained()
 	output, l = unchain.Output("Hi There!")
 	output, l = unchain.Output("Hi There!")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = unchain.Output("Meow")
 		output, l = unchain.Output("Meow")
@@ -214,7 +214,7 @@ func font_demo(d *door.Door) {
 	}
 	}
 	press_a_key(d)
 	press_a_key(d)
 
 
-	asylum := FontAsylum()
+	var asylum door.ColorFont = FontAsylum()
 	output, l = asylum.Output("Bugz ROCKS")
 	output, l = asylum.Output("Bugz ROCKS")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = asylum.Output("Aslym")
 		output, l = asylum.Output("Aslym")
@@ -229,7 +229,7 @@ func font_demo(d *door.Door) {
 		d.Write(door.CRNL)
 		d.Write(door.CRNL)
 	}
 	}
 
 
-	brain := FontBrainDmgBlu()
+	var brain door.ColorFont = FontBrainDmgBlu()
 	output, l = brain.Output("I'm so BLUE")
 	output, l = brain.Output("I'm so BLUE")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = brain.Output("Blue")
 		output, l = brain.Output("Blue")
@@ -244,7 +244,7 @@ func font_demo(d *door.Door) {
 		d.Write(door.CRNL)
 		d.Write(door.CRNL)
 	}
 	}
 
 
-	boner := FontBoner()
+	var boner door.ColorFont = FontBoner()
 	output, l = boner.Output("Welcome!")
 	output, l = boner.Output("Welcome!")
 	if l < door.Width {
 	if l < door.Width {
 		centering = strings.Repeat(" ", (door.Width-l)/2)
 		centering = strings.Repeat(" ", (door.Width-l)/2)
@@ -256,7 +256,7 @@ func font_demo(d *door.Door) {
 	}
 	}
 	press_a_key(d)
 	press_a_key(d)
 
 
-	descent := FontDescent()
+	var descent door.ColorFont = FontDescent()
 	output, l = descent.Output("Meanwhile...")
 	output, l = descent.Output("Meanwhile...")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = descent.Output("BUGZ")
 		output, l = descent.Output("BUGZ")
@@ -271,7 +271,7 @@ func font_demo(d *door.Door) {
 		d.Write(door.CRNL)
 		d.Write(door.CRNL)
 	}
 	}
 
 
-	remorse := FontRemorse()
+	var remorse door.ColorFont = FontRemorse()
 	output, l = remorse.Output("Enjoy the fonts")
 	output, l = remorse.Output("Enjoy the fonts")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = remorse.Output("Amazing")
 		output, l = remorse.Output("Amazing")
@@ -285,7 +285,7 @@ func font_demo(d *door.Door) {
 		d.Write(door.CRNL)
 		d.Write(door.CRNL)
 	}
 	}
 
 
-	dungeon := FontDungeon()
+	var dungeon door.ColorFont = FontDungeon()
 	output, l = dungeon.Output("Until NEXT time")
 	output, l = dungeon.Output("Until NEXT time")
 	if l > door.Width {
 	if l > door.Width {
 		output, l = dungeon.Output("Beware")
 		output, l = dungeon.Output("Beware")
@@ -329,7 +329,7 @@ func font_demo(d *door.Door) {
 }
 }
 
 
 func input_demo(d *door.Door) {
 func input_demo(d *door.Door) {
-	ticker := time.NewTicker(time.Second)
+	var ticker *time.Ticker = time.NewTicker(time.Second)
 
 
 	go func() {
 	go func() {
 		for t := range ticker.C {
 		for t := range ticker.C {
@@ -339,20 +339,20 @@ func input_demo(d *door.Door) {
 		}
 		}
 	}()
 	}()
 
 
-	inputColor := door.ColorText("BRI WHI ON BLUE")
-	inputColor2 := door.ColorText("BRI WHI ON GREEN")
-	prompt := door.Line{Text: "What is YOUR Name: "}
+	var inputColor string = door.ColorText("BRI WHI ON BLUE")
+	var inputColor2 string = door.ColorText("BRI WHI ON GREEN")
+	var prompt door.Line = door.Line{Text: "What is YOUR Name: "}
 	prompt.RenderF = door.RenderBlueYellow
 	prompt.RenderF = door.RenderBlueYellow
 	d.Write(prompt.Output() + inputColor)
 	d.Write(prompt.Output() + inputColor)
-	name := d.Input(25)
+	var name string = d.Input(25)
 	d.Write(door.Reset + door.CRNL)
 	d.Write(door.Reset + door.CRNL)
 	prompt.Text = "What is Your Quest: "
 	prompt.Text = "What is Your Quest: "
 	d.Write(prompt.Output() + inputColor2)
 	d.Write(prompt.Output() + inputColor2)
-	quest := d.Input(35)
+	var quest string = d.Input(35)
 	d.Write(door.Reset + door.CRNL)
 	d.Write(door.Reset + door.CRNL)
 	prompt.Text = "What is your Favorite CoLoR: "
 	prompt.Text = "What is your Favorite CoLoR: "
 	d.Write(prompt.Output() + inputColor2)
 	d.Write(prompt.Output() + inputColor2)
-	color := d.Input(15)
+	var color string = d.Input(15)
 	d.Write(door.Reset + door.CRNL)
 	d.Write(door.Reset + door.CRNL)
 	ticker.Stop()
 	ticker.Stop()
 	d.Write(fmt.Sprintf("You're %s on the %s quest, and fond of %s."+door.CRNL, name, quest, color))
 	d.Write(fmt.Sprintf("You're %s on the %s quest, and fond of %s."+door.CRNL, name, quest, color))
@@ -361,8 +361,8 @@ func input_demo(d *door.Door) {
 func progress_bars(d *door.Door) {
 func progress_bars(d *door.Door) {
 	d.Write(door.Clrscr)
 	d.Write(door.Clrscr)
 
 
-	bar := door.BarLine{Line: door.Line{DefaultColor: door.ColorText("BOLD YELLOW")}, Width: 20, Style: door.HALF_STEP}
-	bar2 := door.BarLine{Width: 30, Style: door.SOLID, PercentStyle: door.PERCENT_SPACE}
+	var bar door.BarLine = door.BarLine{Line: door.Line{DefaultColor: door.ColorText("BOLD YELLOW")}, Width: 20, Style: door.HALF_STEP}
+	var bar2 door.BarLine = door.BarLine{Width: 30, Style: door.SOLID, PercentStyle: door.PERCENT_SPACE}
 
 
 	bar2.ColorRange = []door.BarRange{
 	bar2.ColorRange = []door.BarRange{
 		{2500, door.ColorText("RED")},
 		{2500, door.ColorText("RED")},
@@ -371,7 +371,7 @@ func progress_bars(d *door.Door) {
 		{9500, door.ColorText("GREEN")},
 		{9500, door.ColorText("GREEN")},
 		{10100, door.ColorText("BRI GRE")}}
 		{10100, door.ColorText("BRI GRE")}}
 
 
-	bar3 := door.BarLine{Width: 15, Style: door.GRADIENT, Line: door.Line{DefaultColor: door.ColorText("CYAN")}}
+	var bar3 door.BarLine = door.BarLine{Width: 15, Style: door.GRADIENT, Line: door.Line{DefaultColor: door.ColorText("CYAN")}}
 
 
 	var percentage int64
 	var percentage int64
 	bar.UpdateP = pctUpdate(&percentage)
 	bar.UpdateP = pctUpdate(&percentage)
@@ -408,9 +408,9 @@ func progress_bars(d *door.Door) {
 }
 }
 
 
 func width_demo(d *door.Door) {
 func width_demo(d *door.Door) {
-	w := door.Width
-	panel := door.Panel{X: 1, Y: 1, Width: w}
-	lineColor := door.ColorText("WHI")
+	var w int = door.Width
+	var panel door.Panel = door.Panel{X: 1, Y: 1, Width: w}
+	var lineColor string = door.ColorText("WHI")
 	var line string
 	var line string
 
 
 	for y := 1; y <= door.Height; y++ {
 	for y := 1; y <= door.Height; y++ {
@@ -429,16 +429,17 @@ func width_demo(d *door.Door) {
 				}
 				}
 			}
 			}
 		}
 		}
-		l := door.Line{Text: line, DefaultColor: lineColor}
+		var l door.Line = door.Line{Text: line, DefaultColor: lineColor}
 		panel.Lines = append(panel.Lines, l)
 		panel.Lines = append(panel.Lines, l)
 	}
 	}
-	message := fmt.Sprintf("Screen Size: %d X %d", door.Width, door.Height)
+	var message string = fmt.Sprintf("Screen Size: %d X %d", door.Width, door.Height)
 	d.Write(panel.Output())
 	d.Write(panel.Output())
 
 
 	// Output alert on top of panel
 	// Output alert on top of panel
-	cx := (door.Width - len(message) + 2) / 2
-	cy := (door.Height - 3) / 2
-	alert := door.AlertBox(message, 1)
+	var cx, cy int
+	cx = (door.Width - len(message) + 2) / 2
+	cy = (door.Height - 3) / 2
+	var alert []string = door.AlertBox(message, 1)
 	d.Write(door.ColorText("BRI YEL ON BLUE"))
 	d.Write(door.ColorText("BRI YEL ON BLUE"))
 	for idx, ab := range alert {
 	for idx, ab := range alert {
 		d.Write(door.Goto(cx, cy+idx) + ab)
 		d.Write(door.Goto(cx, cy+idx) + ab)
@@ -449,8 +450,8 @@ func width_demo(d *door.Door) {
 	d.Key()
 	d.Key()
 
 
 	panel.Lines = make([]door.Line, 0)
 	panel.Lines = make([]door.Line, 0)
-	background := "BUGZ Test Door in GO "
-	bl := len(background)
+	var background string = "BUGZ Test Door in GO "
+	var bl int = len(background)
 	for y := 1; y <= door.Height; y++ {
 	for y := 1; y <= door.Height; y++ {
 		offset := (y - 1) % bl
 		offset := (y - 1) % bl
 		line = background[offset:]
 		line = background[offset:]
@@ -461,7 +462,7 @@ func width_demo(d *door.Door) {
 				line += background[0 : w-len(line)]
 				line += background[0 : w-len(line)]
 			}
 			}
 		}
 		}
-		l := door.Line{Text: line, RenderF: door.RenderBlueYellow}
+		var l door.Line = door.Line{Text: line, RenderF: door.RenderBlueYellow}
 		panel.Lines = append(panel.Lines, l)
 		panel.Lines = append(panel.Lines, l)
 	}
 	}
 	d.Write(panel.Output())
 	d.Write(panel.Output())
@@ -469,33 +470,33 @@ func width_demo(d *door.Door) {
 }
 }
 
 
 func panel_demo(d *door.Door) {
 func panel_demo(d *door.Door) {
-	width := 55
-	fmtStr := "%-55s"
-	p := door.Panel{X: 5, Y: 5, Width: width, Style: door.DOUBLE, BorderColor: door.ColorText("CYAN ON BLUE"), Title: "[ Panel Demo ]"}
+	var width int = 55
+	var fmtStr string = "%-55s"
+	var p door.Panel = door.Panel{X: 5, Y: 5, Width: width, Style: door.DOUBLE, BorderColor: door.ColorText("CYAN ON BLUE"), Title: "[ Panel Demo ]"}
 
 
-	lineColor := door.ColorText("BRIGHT WHI ON BLUE")
+	var lineColor string = door.ColorText("BRIGHT WHI ON BLUE")
 	// Add lines to the panel
 	// Add lines to the panel
 	for _, line := range []string{"The BBS Door Panel Demo", "(C) 2021 Red Green Software, https://red-green.com"} {
 	for _, line := range []string{"The BBS Door Panel Demo", "(C) 2021 Red Green Software, https://red-green.com"} {
 		if door.Unicode {
 		if door.Unicode {
 			line = strings.Replace(line, "(C)", "\u00a9", -1)
 			line = strings.Replace(line, "(C)", "\u00a9", -1)
 		}
 		}
-		l := door.Line{Text: fmt.Sprintf(fmtStr, line), DefaultColor: lineColor}
+		var l door.Line = door.Line{Text: fmt.Sprintf(fmtStr, line), DefaultColor: lineColor}
 		p.Lines = append(p.Lines, l)
 		p.Lines = append(p.Lines, l)
 	}
 	}
 	p.Lines = append(p.Lines, p.Spacer())
 	p.Lines = append(p.Lines, p.Spacer())
 	p.Lines = append(p.Lines, door.Line{Text: fmt.Sprintf(fmtStr, "Welcome to golang!"), DefaultColor: lineColor})
 	p.Lines = append(p.Lines, door.Line{Text: fmt.Sprintf(fmtStr, "Welcome to golang!"), DefaultColor: lineColor})
 
 
-	single := door.Panel{X: 6, Y: 12, Width: 10, Style: door.SINGLE, BorderColor: door.ColorText("WHITE ON BLUE"), Title: "< Single >"}
+	var single door.Panel = door.Panel{X: 6, Y: 12, Width: 10, Style: door.SINGLE, BorderColor: door.ColorText("WHITE ON BLUE"), Title: "< Single >"}
 	single.Lines = append(single.Lines, door.Line{Text: "Example   ", DefaultColor: door.ColorText("WHI ON BLACK")})
 	single.Lines = append(single.Lines, door.Line{Text: "Example   ", DefaultColor: door.ColorText("WHI ON BLACK")})
 	single.Lines = append(single.Lines, single.Spacer())
 	single.Lines = append(single.Lines, single.Spacer())
 	single.Lines = append(single.Lines, door.Line{Text: "More Text ", DefaultColor: door.ColorText("BRI GREEN ON BLACK")})
 	single.Lines = append(single.Lines, door.Line{Text: "More Text ", DefaultColor: door.ColorText("BRI GREEN ON BLACK")})
 
 
-	ds := door.Panel{X: 26, Y: 12, Width: 15, Style: door.DOUBLE_SINGLE, BorderColor: door.ColorText("BRI CYAN ON GREEN"), Title: "Double", TitleOffset: 3}
+	var ds door.Panel = door.Panel{X: 26, Y: 12, Width: 15, Style: door.DOUBLE_SINGLE, BorderColor: door.ColorText("BRI CYAN ON GREEN"), Title: "Double", TitleOffset: 3}
 	ds.Lines = append(ds.Lines, door.Line{Text: "Double / Single", DefaultColor: door.ColorText("BRI WHI ON GREEN")})
 	ds.Lines = append(ds.Lines, door.Line{Text: "Double / Single", DefaultColor: door.ColorText("BRI WHI ON GREEN")})
 	ds.Lines = append(ds.Lines, ds.Spacer())
 	ds.Lines = append(ds.Lines, ds.Spacer())
 	ds.Lines = append(ds.Lines, door.Line{Text: "Some Other Text", DefaultColor: door.ColorText("BRI CYAN ON GREEN")})
 	ds.Lines = append(ds.Lines, door.Line{Text: "Some Other Text", DefaultColor: door.ColorText("BRI CYAN ON GREEN")})
 
 
-	sd := door.Panel{X: 46, Y: 12, Width: 15, Style: door.SINGLE_DOUBLE, BorderColor: door.ColorText("BRI YELL ON RED")}
+	var sd door.Panel = door.Panel{X: 46, Y: 12, Width: 15, Style: door.SINGLE_DOUBLE, BorderColor: door.ColorText("BRI YELL ON RED")}
 	sd.Lines = append(sd.Lines, door.Line{Text: "Single / Double", DefaultColor: door.ColorText("BRI WHI ON RED")})
 	sd.Lines = append(sd.Lines, door.Line{Text: "Single / Double", DefaultColor: door.ColorText("BRI WHI ON RED")})
 	sd.Lines = append(sd.Lines, sd.Spacer())
 	sd.Lines = append(sd.Lines, sd.Spacer())
 	sd.Lines = append(sd.Lines, door.Line{Text: "Text Goes Here ", DefaultColor: door.ColorText("BRI GREEN ON RED")})
 	sd.Lines = append(sd.Lines, door.Line{Text: "Text Goes Here ", DefaultColor: door.ColorText("BRI GREEN ON RED")})
@@ -511,7 +512,7 @@ func main() {
 	var message string
 	var message string
 
 
 	fmt.Println("Starting testdoor.go")
 	fmt.Println("Starting testdoor.go")
-	d := door.Door{}
+	var d door.Door = door.Door{}
 
 
 	d.Init("testdoor")
 	d.Init("testdoor")
 
 
@@ -526,10 +527,10 @@ func main() {
 	}()
 	}()
 
 
 	defer d.Close()
 	defer d.Close()
-	ticker := time.NewTicker(time.Second)
+	var ticker *time.Ticker = time.NewTicker(time.Second)
 
 
 	go func() {
 	go func() {
-		var maxlen int = 0
+		var maxlen int = 0 // max length of timeinfo (sysops have 4 digits of mins)
 		for t := range ticker.C {
 		for t := range ticker.C {
 			const tf = "03:04:05 PM"
 			const tf = "03:04:05 PM"
 			var timeinfo string = " " + t.Format(tf) + " " + fmt.Sprintf("(%3.1f mins)", d.TimeLeft().Minutes()) + " "
 			var timeinfo string = " " + t.Format(tf) + " " + fmt.Sprintf("(%3.1f mins)", d.TimeLeft().Minutes()) + " "
@@ -553,26 +554,26 @@ func main() {
 	}()
 	}()
 
 
 	// bold := door.Color(1, 37, 40)
 	// bold := door.Color(1, 37, 40)
-	bolder := door.ColorText("BLI BOLD YEL ON BLUE")
+	var bolder string = door.ColorText("BLI BOLD YEL ON BLUE")
 	d.Write("Welcome to " + bolder + "door32.sys" + door.Reset + door.CRNL + "..." + door.CRNL)
 	d.Write("Welcome to " + bolder + "door32.sys" + door.Reset + door.CRNL + "..." + door.CRNL)
 	press_a_key(&d)
 	press_a_key(&d)
 	d.Write(door.CRNL)
 	d.Write(door.CRNL)
 
 
-	b := door.AlertBox("Warning: golang is in use!", 1)
+	var b []string = door.AlertBox("Warning: golang is in use!", 1)
 	d.Write(door.ColorText("BRI WHI ON GREEN"))
 	d.Write(door.ColorText("BRI WHI ON GREEN"))
 	for _, line := range b {
 	for _, line := range b {
 		d.Write(line + door.CRNL)
 		d.Write(line + door.CRNL)
 	}
 	}
 	d.Write(door.Reset + door.CRNL)
 	d.Write(door.Reset + door.CRNL)
 
 
-	left := d.TimeLeft()
+	var left time.Duration = d.TimeLeft()
 
 
 	message = fmt.Sprintf("You have %0.2f minutes / %0.2f seconds remaining..."+door.CRNL, left.Minutes(), left.Seconds())
 	message = fmt.Sprintf("You have %0.2f minutes / %0.2f seconds remaining..."+door.CRNL, left.Minutes(), left.Seconds())
 	d.Write(message)
 	d.Write(message)
 
 
 	press_a_key(&d)
 	press_a_key(&d)
 
 
-	mainmenu := MainMenu()
+	var mainmenu door.Menu = MainMenu()
 	var choice int
 	var choice int
 
 
 	for choice >= 0 {
 	for choice >= 0 {
@@ -618,9 +619,12 @@ func main() {
 		case 'Q':
 		case 'Q':
 			choice = -1
 			choice = -1
 		case 'C':
 		case 'C':
-			z := 0
-			a := 10 / z
+			var a, z int
+			z = 0
+			a = 10 / z
 			z = a
 			z = a
+			_ = a
+			_ = z
 		}
 		}
 
 
 	}
 	}