-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Milestone
Description
Psudeo-code of some of the tables/general storage stuff we'll need:
table Game {
id: @unique(u64)
name: string
system: GameSystem
boxart: ImageRef? // this should be a URL of some kind, ideally local (but NSCache exists so that may not be an issue)
sha1: data
dateAdded: date
datePlayed: date?
}
table Cheat {
id: @unique(u64)
game: @foreign(Game.id)
name: string // user-picked display name
enabled: bool
format: string
code: string
}
table SaveState {
game: u64
name: string
date: date
preview: url?
path: url?
}
table ControlBindings {
id: @unique(u64)
auxId: string // auxiliary identifier, this is really just used for the controller id
kind: ControlBindingKind
touch: @foreign(TouchControlBindings.id)?
gamepad: @foreign(GamepadControlBindings.id)?
keyboard: @foreign(KeyboardControlBindings.id)?
}
table TouchControlBindings {
// TODO: this is a pretty complex storage type...
id: @unique(u64)
}
table GamepadControlBindings {
// TODO: this is a pretty complex storage type...
id: @unique(u64)
}
table KeyboardControlBindings {
// TODO: this is a pretty complex storage type...
id: @unique(u64)
}
Metadata
Metadata
Assignees
Labels
No labels