84 lines
1.7 KiB
Go
84 lines
1.7 KiB
Go
|
package skirdagoutils
|
||
|
|
||
|
type Game struct {
|
||
|
Id int
|
||
|
GameId string
|
||
|
Title string
|
||
|
GameType string
|
||
|
Executable string
|
||
|
Args []string
|
||
|
Assets GameInterfaceAssets
|
||
|
}
|
||
|
|
||
|
type GameInterfaceAssets struct {
|
||
|
Image string
|
||
|
Description string
|
||
|
}
|
||
|
|
||
|
func GetGamesListInterface() []JSGameInterface {
|
||
|
var gamesInterfacesList = []JSGameInterface{}
|
||
|
for _, Game := range GamesList {
|
||
|
|
||
|
gamesInterfacesList = append(gamesInterfacesList, GetJSGameInterface(Game))
|
||
|
}
|
||
|
|
||
|
return gamesInterfacesList
|
||
|
}
|
||
|
|
||
|
var GamesList = []Game{garrysmodGame, openarena}
|
||
|
|
||
|
var garrysmodGame = Game{
|
||
|
Id: 0,
|
||
|
GameId: "garrysmod",
|
||
|
GameType: "steam",
|
||
|
Title: "Garry's Mod",
|
||
|
Executable: "steam",
|
||
|
Args: []string{"steam://rungameid/4000"},
|
||
|
Assets: GameInterfaceAssets{
|
||
|
Image: "gmod.png",
|
||
|
Description: "",
|
||
|
},
|
||
|
}
|
||
|
|
||
|
var openarena = Game{
|
||
|
GameId: "openarena",
|
||
|
GameType: "file",
|
||
|
Title: "Open Arena",
|
||
|
Executable: "/usr/games/openarena",
|
||
|
Args: []string{},
|
||
|
Assets: GameInterfaceAssets{
|
||
|
Image: "openarena.jpg",
|
||
|
Description: "asdadasd",
|
||
|
},
|
||
|
}
|
||
|
|
||
|
func GetJSGameInterface(game Game) JSGameInterface {
|
||
|
newInterface := JSGameInterface{
|
||
|
Id: game.Id,
|
||
|
GameID: game.GameId,
|
||
|
Title: game.Title,
|
||
|
Image: game.Assets.Image,
|
||
|
Description: game.Assets.Description,
|
||
|
}
|
||
|
|
||
|
return newInterface
|
||
|
}
|
||
|
|
||
|
type JSGameInterface struct {
|
||
|
Id int `json:"id"`
|
||
|
GameID string `json:"gameId"`
|
||
|
Title string `json:"title"`
|
||
|
Image string `json:"image"`
|
||
|
Description string `json:"description"`
|
||
|
}
|
||
|
|
||
|
func findGameByID(id string) Game {
|
||
|
for _, game := range GamesList {
|
||
|
if game.GameId == id {
|
||
|
return game
|
||
|
}
|
||
|
}
|
||
|
var temp Game = Game{}
|
||
|
return temp
|
||
|
}
|