diff --git a/src/state/lobby/event.go b/src/state/lobby/event.go new file mode 100644 index 0000000..ae094a4 --- /dev/null +++ b/src/state/lobby/event.go @@ -0,0 +1,17 @@ +package lobby + +type Event interface { + LobbyEvent() +} + +type PlayerJoin struct { + ID int +} + +func (PlayerJoin) LobbyEvent() {} + +type PlayerLeave struct { + ID int +} + +func (PlayerLeave) LobbyEvent() {} diff --git a/src/state/lobby/storage.go b/src/state/lobby/storage.go new file mode 100644 index 0000000..3e6634d --- /dev/null +++ b/src/state/lobby/storage.go @@ -0,0 +1,16 @@ +package lobby + +import ( + "context" + "io" +) + +type Storage interface { + PlayerIDs(context.Context) ([]int, error) +} + +type DB struct{} + +func (db DB) PlayerIDs(ctx context.Context) ([]int, error) { + return nil, io.EOF +}