Enha: wait for mime clue
This commit is contained in:
@ -45,15 +45,17 @@
|
||||
<div>
|
||||
{{if and (eq .State.Role "guesser") (eq .State.Team .Room.TeamTurn)}}
|
||||
<button hx-get="/end-turn" hx-target="#room" class="bg-amber-100 text-black px-4 py-2 rounded">End Turn</button>
|
||||
{{else if eq .State.Role "mime"}}
|
||||
{{else if and (eq .State.Role "mime") (not .Room.MimeDone)}}
|
||||
{{template "mimeclue"}}
|
||||
{{end}}
|
||||
</div>
|
||||
<div hx-get="/actionhistory" hx-trigger="sse:backlog_{{.Room.ID}}">
|
||||
{{template "actionhistory" .Room.ActionHistory}}
|
||||
</div>
|
||||
{{if not .Room.IsRunning}}
|
||||
<div id="exitbtn">
|
||||
<button button id="exit-room-btn" type="submit" class="justify-center rounded-md bg-indigo-600 px-3 py-1.5 text-sm font-semibold leading-6 text-white shadow-sm hover:bg-indigo-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600" hx-get="/room/exit" hx-target="#ancestor">Exit Room</button>
|
||||
</div>
|
||||
{{end}}
|
||||
</div>
|
||||
{{end}}
|
||||
|
@ -51,6 +51,10 @@ func HandleShowColor(w http.ResponseWriter, r *http.Request) {
|
||||
abortWithError(w, err.Error())
|
||||
return
|
||||
}
|
||||
if !fi.Room.MimeDone {
|
||||
abortWithError(w, "wait for the clue")
|
||||
return
|
||||
}
|
||||
color, exists := roundWords[word]
|
||||
log.Debug("got show-color request", "word", word, "color", color)
|
||||
if !exists {
|
||||
|
@ -40,12 +40,6 @@ func HandleCreateRoom(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
notify(models.NotifyRoomListUpdate, "")
|
||||
// send msg of created room
|
||||
// h.Broker.Notifier <- broker.NotificationEvent{
|
||||
// EventName: models.MsgRoomListUpdate,
|
||||
// Payload: fmt.Sprintf("%s created a room named %s", r.CreatorName, r.RoomName),
|
||||
// }
|
||||
// return html
|
||||
tmpl, err := template.ParseGlob("components/*.html")
|
||||
if err != nil {
|
||||
abortWithError(w, err.Error())
|
||||
|
@ -94,6 +94,10 @@ func HandleExit(w http.ResponseWriter, r *http.Request) {
|
||||
abortWithError(w, err.Error())
|
||||
return
|
||||
}
|
||||
if fi.Room.IsRunning {
|
||||
abortWithError(w, "cannot leave when game is running")
|
||||
return
|
||||
}
|
||||
var creatorLeft bool
|
||||
if fi.Room.CreatorName == fi.State.Username {
|
||||
creatorLeft = true
|
||||
|
8
todos.md
8
todos.md
@ -1,7 +1,9 @@
|
||||
### feats
|
||||
- ability to leave room;
|
||||
- close room if creator left (or pass role to other player);
|
||||
- notify on creation of new room;
|
||||
- auto close room if nothing is going on there (hmm) for ~1h;
|
||||
- words database (file) load and form random 25 words;
|
||||
- mark cards (instead of opening them (right click?);
|
||||
- invite link;
|
||||
- login with invite link;
|
||||
|
||||
#### sse points
|
||||
- clue sse update;
|
||||
|
Reference in New Issue
Block a user