| 
					
				 | 
			
			
				@@ -317,7 +317,7 @@ func init() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		"All", "Brown", "Green", "Red", "Blue", "Cyan", "Magenta", "White"} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-func DeckColorMenu() door.Menu { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+func DeckColorMenu(current string) door.Menu { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	m := door.Menu{Panel: door.Panel{Width: 31, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		X:           5, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Y:           5, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -350,8 +350,12 @@ func DeckColorMenu() door.Menu { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		door.ColorText("BOLD WHI ON BLUE"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		unselectMap) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	for _, color := range DeckColors { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	m.Chosen = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	for idx, color := range DeckColors { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		m.AddSelection(color[:1], color) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if color == current { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			m.Chosen = idx 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	return m 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -410,9 +414,13 @@ func Configure(d *door.Door, db *DBData) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		switch option { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		case 'D': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			// Deck color 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			colormenu := DeckColorMenu() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			current_color := db.GetSetting("DeckColor", "All") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			colormenu := DeckColorMenu(current_color) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			d.Write(door.Clrscr) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			_ = colormenu.Choose(d) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			c := colormenu.Choose(d) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if c > 0 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				db.SetSetting("DeckColor", DeckColors[c-1]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			press_a_key(d) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		case 'V': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			// View settings 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -436,6 +444,9 @@ func Help() door.Panel { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		DefaultColor: door.ColorText("BOLD CYAN ON BLUE")}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	help.Lines = append(help.Lines, help.Spacer()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	copyright := fmt.Sprintf("Space-Ace (C) 2022 Red Green Software") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if door.Unicode { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		copyright = strings.Replace(copyright, "(C)", "\u00a9", -1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	help.Lines = append(help.Lines, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		door.Line{Text: fmt.Sprintf("%*s", -W, copyright), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			DefaultColor: door.ColorText("BOLD WHITE ON BLUE")}) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -471,6 +482,9 @@ func About() door.Panel { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		DefaultColor: door.ColorText("BOLD CYAN ON BLUE")}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	about.Lines = append(about.Lines, about.Spacer()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	copyright := fmt.Sprintf("Space-Ace (C) 2022 Red Green Software") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if door.Unicode { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		copyright = strings.Replace(copyright, "(C)", "\u00a9", -1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	about.Lines = append(about.Lines, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		door.Line{Text: fmt.Sprintf("%*s", -W, copyright), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			DefaultColor: door.ColorText("BOLD WHITE ON BLUE")}) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -478,8 +492,8 @@ func About() door.Panel { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		"This door was written by Bugz.", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		"", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		"It is written in Go, understands CP437 and unicode, adapts", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		"to screen sizes, uses door32.sys, and runs on Linux and", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		"Windows."} { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		"to screen sizes, uses door32.sys, supports TheDraw Fonts,", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		"and runs on Linux and Windows."} { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		about.Lines = append(about.Lines, door.Line{Text: fmt.Sprintf("%*s", -W, text)}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	return about 
			 |