2022-09-27 12:21:57 -07:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"log"
|
2022-09-29 15:53:02 -07:00
|
|
|
"os"
|
2022-09-28 00:05:06 -07:00
|
|
|
|
2022-11-26 22:47:42 -08:00
|
|
|
"git.wisellama.rocks/Project-Ely/project-ely/internal"
|
2022-11-22 00:08:00 -08:00
|
|
|
"git.wisellama.rocks/Project-Ely/project-ely/internal/channels"
|
2022-11-09 18:04:36 -08:00
|
|
|
"git.wisellama.rocks/Wisellama/gopackagebase"
|
|
|
|
"git.wisellama.rocks/Wisellama/gosimpleconf"
|
2022-09-27 12:21:57 -07:00
|
|
|
)
|
|
|
|
|
2022-11-09 18:04:36 -08:00
|
|
|
const (
|
2023-04-30 00:33:18 -07:00
|
|
|
configFile = "project-ely.conf"
|
2022-11-09 18:04:36 -08:00
|
|
|
)
|
2022-10-22 02:00:29 -07:00
|
|
|
|
2022-11-09 18:04:36 -08:00
|
|
|
var defaultConfig gosimpleconf.ConfigMap = gosimpleconf.ConfigMap{
|
|
|
|
"game.title": "Project Ely",
|
2022-11-22 00:08:00 -08:00
|
|
|
"game.framerate": "60",
|
2022-11-09 18:04:36 -08:00
|
|
|
"log.utcTime": "false",
|
|
|
|
"log.writeToFile": "false",
|
2022-10-22 02:00:29 -07:00
|
|
|
}
|
|
|
|
|
2022-11-09 18:04:36 -08:00
|
|
|
func main() {
|
2022-09-28 00:05:06 -07:00
|
|
|
var err error
|
2022-09-28 20:18:04 -07:00
|
|
|
|
2023-04-30 00:33:18 -07:00
|
|
|
baseConfig, err := gopackagebase.Initialize(configFile, defaultConfig)
|
2022-09-28 00:05:06 -07:00
|
|
|
if err != nil {
|
2022-11-09 18:04:36 -08:00
|
|
|
log.Fatalf("error initializing: %v", err)
|
2022-09-28 20:18:04 -07:00
|
|
|
}
|
2022-11-09 18:04:36 -08:00
|
|
|
if baseConfig == nil {
|
|
|
|
log.Fatalf("baseConfig was nil")
|
2022-09-28 00:05:06 -07:00
|
|
|
}
|
2022-11-09 18:04:36 -08:00
|
|
|
defer baseConfig.Cancel()
|
2022-10-23 21:28:38 -07:00
|
|
|
|
2022-11-09 18:04:36 -08:00
|
|
|
// Run the program
|
|
|
|
log.Printf("=== Starting %v ===", baseConfig.ConfigMap["game.title"])
|
2022-11-22 00:08:00 -08:00
|
|
|
channels.RL.Main(func() {
|
2022-11-26 22:47:42 -08:00
|
|
|
err = internal.Run(baseConfig.Ctx, baseConfig.ConfigMap)
|
2022-09-29 15:53:02 -07:00
|
|
|
})
|
2022-09-28 00:05:06 -07:00
|
|
|
if err != nil {
|
2022-11-09 18:04:36 -08:00
|
|
|
log.Printf("%v\n", err)
|
|
|
|
os.Exit(1)
|
2022-09-28 00:05:06 -07:00
|
|
|
}
|
|
|
|
|
2022-11-09 18:04:36 -08:00
|
|
|
log.Printf("Exited gracefully!\n")
|
2022-09-28 00:05:06 -07:00
|
|
|
}
|