func (t *team) updatePositions() { t.jammer = "" t.pivot = "" statemanager.StateDelete(t.base + ".Jammer") statemanager.StateDelete(t.base + ".Pivot") t.sb.activeJam.clearTeamPositions(t) for _, s := range t.skaters { t.sb.activeJam.setTeamPosition(s) if s.position == positionJammer { t.jammer = s.id statemanager.StateUpdateString(t.base+".Jammer.ID", s.id) statemanager.StateUpdateString(t.base+".Jammer.Name", s.name) statemanager.StateUpdateString(t.base+".Jammer.Number", s.number) statemanager.StateUpdateBool(t.base+".Jammer.InBox", s.inBox()) } else if s.position == positionPivot { t.pivot = s.id statemanager.StateUpdateString(t.base+".Pivot.ID", s.id) statemanager.StateUpdateString(t.base+".Pivot.Name", s.name) statemanager.StateUpdateString(t.base+".Pivot.Number", s.number) statemanager.StateUpdateBool(t.base+".Pivot.InBox", s.inBox()) } } }
func (s *skater) setInBox(v bool) error { if s.position == positionBench && v { return errSkaterOnBench } if !v { if s.curBoxTrip == nil { return errSkaterNotInBox } s.curBoxTrip.setOutJamIdx(int64(len(s.t.sb.jams) - 1)) s.curBoxTrip = nil } else { s.curBoxTrip = newBoxTrip(s, int64(len(s.t.sb.jams)-1), false, s.t.starPass) s.boxTrips = append(s.boxTrips, s.curBoxTrip) } if s.position == positionJammer || s.position == positionPivot { s.t.updatePositions() } return statemanager.StateUpdateBool(s.stateIDs["inBox"], v) }
func (c *clock) setCountDown(countdown bool) error { c.countdown = countdown statemanager.StateUpdateBool(c.stateIDs["countdown"], countdown) c.time.setCountDown(countdown) return nil }
func (c *clock) setAdjustable(adjustable bool) { c.adjustable = adjustable statemanager.StateUpdateBool(c.stateIDs["adjustable"], adjustable) }
func (c *clock) stop() { c.running = false statemanager.StateUpdateBool(c.stateIDs["running"], c.running) }
func (c *clock) start() { c.running = true statemanager.StateUpdateBool(c.stateIDs["running"], c.running) }
func (t *stateSnapshotTeam) setOfficialReviewRetained(v bool) { t.officialReviewRetained = v statemanager.StateUpdateBool(t.base+".OfficialReviewRetained", v) }
func (bt *boxTrip) setOutAfterStarPass(v bool) { bt.out.afterStarPass = v statemanager.StateUpdateBool(bt.stateIDs["out.afterStarPass"], v) }
func (t *team) setStarPass(v bool) error { t.starPass = v return statemanager.StateUpdateBool(t.stateIDs["starPass"], v) }
func (ss *stateSnapshot) setInProgress(v bool) { ss.inProgress = v statemanager.StateUpdateBool(ss.stateIDs["inProgress"], v) }
func (s *skater) setInLastJam(v bool) error { return statemanager.StateUpdateBool(s.stateIDs["inLastJam"], v) }
func (s *skater) setIsBenchStaff(v bool) error { s.isBenchStaff = v s.setDescription() return statemanager.StateUpdateBool(s.stateIDs["isBenchStaff"], v) }
func (s *skater) setIsAltCaptain(v bool) error { s.isAltCaptain = v s.setDescription() return statemanager.StateUpdateBool(s.stateIDs["isAltCaptain"], v) }
func (bt *boxTrip) setInAfterStarPass(v bool) { bt.in.afterStarPass = v statemanager.StateUpdateBool(bt.stateIDs["in.afterStarPass"], v) }
func (bt *boxTrip) setInBetweenJams(v bool) { bt.in.betweenJams = v statemanager.StateUpdateBool(bt.stateIDs["in.betweenJams"], v) }
func (c *clock) setRunning(running bool) error { c.running = running statemanager.StateUpdateBool(c.stateIDs["running"], running) return nil }
func (t *team) setOfficialReviewRetained(v bool) error { t.officialReviewRetained = v return statemanager.StateUpdateBool(t.stateIDs["officialReviewRetained"], v) }
func (ss *stateSnapshot) setCanRevert(v bool) { ss.canRevert = v statemanager.StateUpdateBool(ss.stateIDs["canRevert"], v) }
func (c *stateSnapshotClock) setRunning(v bool) { c.running = v statemanager.StateUpdateBool(c.base+".Running", v) }
func (bt *boxTrip) setOutBetweenJams(v bool) { bt.out.betweenJams = v statemanager.StateUpdateBool(bt.stateIDs["out.betweenJams"], v) }