package src
import (
"fmt"
)
var r, g, b uint8
var col string
func getFares(v Station, k int) {
for i, fare := range v.Fares {
if k != i {
continue
}
col = fare.Color
fmt.Sscanf(col, "%2x%2x%2x", &r, &g, &b)
text := fare.Train
if fare.Platform != "" {
text += "\n" + fare.Platform
}
c := fmt.Sprintf("\x1b[38;2;%d;%d;%dm%s\x1b[0m", r, g, b, text)
fmt.Println(c)
}
}
func Render (route []Route) {
col = "fcfcfc"
fmt.Sscanf("ff7e56", "%2x%2x%2x", &r, &g, &b)
b1 := fmt.Sprintf("\x1b[38;2;%d;%d;%dm%s\x1b[0m", r, g, b, "早")
fmt.Sscanf("60bddb", "%2x%2x%2x", &r, &g, &b)
b2 := fmt.Sprintf("\x1b[38;2;%d;%d;%dm%s\x1b[0m", r, g, b, "楽")
fmt.Sscanf("fab60a", "%2x%2x%2x", &r, &g, &b)
b3 := fmt.Sprintf("\x1b[38;2;%d;%d;%dm%s\x1b[0m", r, g, b, "安")
fmt.Sscanf(col, "%2x%2x%2x", &r, &g, &b)
for key, value := range route {
fmt.Printf("\x1b[1;35m# ルート%d\x1b[0m\n", key+1)
badges := ""
for _, badge := range value.Badges {
if badge == 1 { badges += "〈" + b1 + "〉" }
if badge == 2 { badges += "〈" + b2 + "〉" }
if badge == 3 { badges += "〈" + b3 + "〉" }
}
fmt.Println(
value.Time + " (" + value.Duration + "), " +
value.Fare + ", 乗換数:" + value.TransitCunt + " " + badges,
)
for k, v := range value.Stations {
fmt.Println(v.Time + " " + v.Name)
getFares(v, k)
}
fmt.Println("")
}
}