Archived
initial commit
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
import { ICard, IEffect, IGame, ILobby, IPlayer, ITeam, ITurn, IUser, ServerMessage } from "../generic/index.js"
|
||||
import { WebSocket } from "ws"
|
||||
|
||||
export interface ISClientProvider {
|
||||
socket: WebSocket
|
||||
send: (message: ServerMessage) => void
|
||||
}
|
||||
export interface ISQuery {
|
||||
provider: ISClientProvider
|
||||
accept: (message: ServerMessage) => void
|
||||
cancel: (message: ServerMessage) => void
|
||||
error: (message: string) => void
|
||||
}
|
||||
|
||||
export interface ISEffect extends IEffect {
|
||||
use: () => void
|
||||
}
|
||||
|
||||
export interface ISCard extends ICard {
|
||||
|
||||
}
|
||||
|
||||
export interface ISTurn extends ITurn {
|
||||
lockCard: (card: ICard) => void
|
||||
}
|
||||
|
||||
export interface ISPlayer extends IPlayer {
|
||||
setReady: (ready: boolean) => void
|
||||
}
|
||||
|
||||
export interface ISTeam extends ITeam {
|
||||
|
||||
damage: (amount: number) => void
|
||||
addPlayer: (player: IPlayer) => void
|
||||
removePlayer: (player: IPlayer) => void
|
||||
startTurn: () => void
|
||||
endTurn: () => void
|
||||
die: () => void
|
||||
}
|
||||
|
||||
export interface ISGame extends IGame {
|
||||
addTeam: (team: ISTeam) => void
|
||||
removeTeam: (team: ISTeam) => void
|
||||
start: () => void
|
||||
|
||||
request_join: (query: ISQuery) => void
|
||||
request_kick: (query: ISQuery) => void
|
||||
request_leave: (query: ISQuery) => void
|
||||
request_start: (query: ISQuery) => void
|
||||
request_changeRules: (query: ISQuery) => void
|
||||
request_gameEnd: (query: ISQuery) => void
|
||||
|
||||
}
|
||||
|
||||
export interface ISUser extends IUser {
|
||||
|
||||
}
|
||||
|
||||
export interface ISLobby extends ILobby {
|
||||
createGame: () => void
|
||||
request_createGame: (query: ISQuery) => void
|
||||
request_login: (query: ISQuery) => void
|
||||
|
||||
subscribe: (query: ISQuery) => any
|
||||
}
|
||||
Reference in New Issue
Block a user