Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Vs1 and Vs6 opitons #240

Merged
merged 1 commit into from
Jun 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 64 additions & 20 deletions action/action.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,17 @@ type Action struct {
UserSignIn *UserSignInPayload `json:"user_sign_in,omitempty"`
UserSignOut *UserSignOutPayload `json:"user_sign_out,omitempty"`

AddPlayer *AddPlayerPayload `json:"add_player,omitempty"`
RemovePlayer *RemovePlayerPayload `json:"remove_player,omitempty"`
JoinWaitingRoom *JoinWaitingRoomPayload `json:"join_waiting_room,omitempty"`
ExitWaitingRoom *ExitWaitingRoomPayload `json:"exit_waiting_room,omitempty"`
StartRoom *StartRoomPayload `json:"start_room,omitempty"`
SyncState *SyncStatePayload `json:"sync_state,omitempty"`
SyncUsers *SyncUsersPayload `json:"sync_users,omitempty"`
SyncWaitingRoom *SyncWaitingRoomPayload `json:"sync_waiting_room,omitempty"`
AddPlayer *AddPlayerPayload `json:"add_player,omitempty"`
RemovePlayer *RemovePlayerPayload `json:"remove_player,omitempty"`
JoinVs6WaitingRoom *JoinVs6WaitingRoomPayload `json:"join_vs6_waiting_room,omitempty"`
ExitVs6WaitingRoom *ExitVs6WaitingRoomPayload `json:"exit_vs6_waiting_room,omitempty"`
JoinVs1WaitingRoom *JoinVs1WaitingRoomPayload `json:"join_vs1_waiting_room,omitempty"`
ExitVs1WaitingRoom *ExitVs1WaitingRoomPayload `json:"exit_vs1_waiting_room,omitempty"`
StartRoom *StartRoomPayload `json:"start_room,omitempty"`
SyncState *SyncStatePayload `json:"sync_state,omitempty"`
SyncUsers *SyncUsersPayload `json:"sync_users,omitempty"`
SyncVs6WaitingRoom *SyncVs6WaitingRoomPayload `json:"sync_vs6_waiting_room,omitempty"`
SyncVs1WaitingRoom *SyncVs1WaitingRoomPayload `json:"sync_vs1_waiting_room,omitempty"`
}

type CursorMovePayload struct {
Expand Down Expand Up @@ -377,49 +380,90 @@ func NewUserSignUp(un string) *Action {
}
}

type JoinWaitingRoomPayload struct {
type JoinVs6WaitingRoomPayload struct {
Username string
}

func NewJoinWaitingRoom(un string) *Action {
func NewJoinVs6WaitingRoom(un string) *Action {
return &Action{
Type: JoinWaitingRoom,
JoinWaitingRoom: &JoinWaitingRoomPayload{
Type: JoinVs6WaitingRoom,
JoinVs6WaitingRoom: &JoinVs6WaitingRoomPayload{
Username: un,
},
}
}

type ExitWaitingRoomPayload struct {
type ExitVs6WaitingRoomPayload struct {
Username string
}

func NewExitWaitingRoom(un string) *Action {
func NewExitVs6WaitingRoom(un string) *Action {
return &Action{
Type: ExitWaitingRoom,
ExitWaitingRoom: &ExitWaitingRoomPayload{
Type: ExitVs6WaitingRoom,
ExitVs6WaitingRoom: &ExitVs6WaitingRoomPayload{
Username: un,
},
}
}

type SyncWaitingRoomPayload struct {
type SyncVs6WaitingRoomPayload struct {
TotalPlayers int
Size int
Countdown int
}

func NewSyncWaitingRoom(tp, s, cd int) *Action {
func NewSyncVs6WaitingRoom(tp, s, cd int) *Action {
return &Action{
Type: SyncWaitingRoom,
SyncWaitingRoom: &SyncWaitingRoomPayload{
Type: SyncVs6WaitingRoom,
SyncVs6WaitingRoom: &SyncVs6WaitingRoomPayload{
TotalPlayers: tp,
Size: s,
Countdown: cd,
},
}
}

type JoinVs1WaitingRoomPayload struct {
Username string
}

func NewJoinVs1WaitingRoom(un string) *Action {
return &Action{
Type: JoinVs1WaitingRoom,
JoinVs1WaitingRoom: &JoinVs1WaitingRoomPayload{
Username: un,
},
}
}

type ExitVs1WaitingRoomPayload struct {
Username string
}

func NewExitVs1WaitingRoom(un string) *Action {
return &Action{
Type: ExitVs1WaitingRoom,
ExitVs1WaitingRoom: &ExitVs1WaitingRoomPayload{
Username: un,
},
}
}

type SyncVs1WaitingRoomPayload struct {
TotalPlayers int
Size int
}

func NewSyncVs1WaitingRoom(tp, s int) *Action {
return &Action{
Type: SyncVs1WaitingRoom,
SyncVs1WaitingRoom: &SyncVs1WaitingRoomPayload{
TotalPlayers: tp,
Size: s,
},
}
}

type SyncStatePayload struct {
Players *SyncStatePlayersPayload
Lines *SyncStateLinesPayload
Expand Down
9 changes: 6 additions & 3 deletions action/type.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,10 @@ const (
UserSignUp
UserSignIn
UserSignOut
JoinWaitingRoom
ExitWaitingRoom
JoinVs6WaitingRoom
ExitVs6WaitingRoom
JoinVs1WaitingRoom
ExitVs1WaitingRoom
StartRoom
ToggleStats
VersionError
Expand All @@ -49,5 +51,6 @@ const (
SyncState
SyncUsers
WaitRoomCountdownTick
SyncWaitingRoom
SyncVs6WaitingRoom
SyncVs1WaitingRoom
)
172 changes: 92 additions & 80 deletions action/type_string.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 19 additions & 5 deletions client/action.go
Original file line number Diff line number Diff line change
Expand Up @@ -174,15 +174,29 @@ func (ac *ActionDispatcher) GoHome() {
ac.Dispatch(gha)
}

func (ac *ActionDispatcher) JoinWaitingRoom(un string) {
jwra := action.NewJoinWaitingRoom(un)
func (ac *ActionDispatcher) JoinVs6WaitingRoom(un string) {
jwra := action.NewJoinVs6WaitingRoom(un)
wsSend(jwra)

ac.Dispatch(action.NewNavigateTo(utils.WaitingRoomRoute))
ac.Dispatch(action.NewNavigateTo(utils.Vs6WaitingRoomRoute))
}

func (ac *ActionDispatcher) ExitWaitingRoom(un string) {
ewra := action.NewExitWaitingRoom(un)
func (ac *ActionDispatcher) ExitVs6WaitingRoom(un string) {
ewra := action.NewExitVs6WaitingRoom(un)
wsSend(ewra)

ac.Dispatch(action.NewNavigateTo(utils.RootRoute))
}

func (ac *ActionDispatcher) JoinVs1WaitingRoom(un string) {
jwra := action.NewJoinVs1WaitingRoom(un)
wsSend(jwra)

ac.Dispatch(action.NewNavigateTo(utils.Vs1WaitingRoomRoute))
}

func (ac *ActionDispatcher) ExitVs1WaitingRoom(un string) {
ewra := action.NewExitVs1WaitingRoom(un)
wsSend(ewra)

ac.Dispatch(action.NewNavigateTo(utils.RootRoute))
Expand Down
Loading
Loading