Update game sounds for 2020.

This commit is contained in:
Patrick Fairbank
2020-03-15 22:24:23 -07:00
parent 49758eaafd
commit 24a069d959
18 changed files with 53 additions and 66 deletions

View File

@@ -30,8 +30,7 @@ CREATE TABLE event_settings (
autodurationsec int,
pausedurationsec int,
teleopdurationsec int,
warning1remainingdurationsec int,
warning2remainingdurationsec int,
warningremainingdurationsec int,
habdockingthreshold int
);

View File

@@ -154,8 +154,7 @@ func (arena *Arena) LoadSettings() error {
game.MatchTiming.AutoDurationSec = settings.AutoDurationSec
game.MatchTiming.PauseDurationSec = settings.PauseDurationSec
game.MatchTiming.TeleopDurationSec = settings.TeleopDurationSec
game.MatchTiming.Warning1RemainingDurationSec = settings.Warning1RemainingDurationSec
game.MatchTiming.Warning2RemainingDurationSec = settings.Warning2RemainingDurationSec
game.MatchTiming.WarningRemainingDurationSec = settings.WarningRemainingDurationSec
game.UpdateMatchSounds()
arena.MatchTimingNotifier.Notify()

View File

@@ -18,13 +18,14 @@ var MatchSounds []*MatchSound
func UpdateMatchSounds() {
MatchSounds = []*MatchSound{
{"start", "wav", 0},
{"end", "wav", float64(MatchTiming.AutoDurationSec)},
{"resume", "wav", float64(MatchTiming.AutoDurationSec + MatchTiming.PauseDurationSec)},
{"warning1", "wav", float64(MatchTiming.AutoDurationSec + MatchTiming.PauseDurationSec +
MatchTiming.TeleopDurationSec - MatchTiming.Warning1RemainingDurationSec)},
{"warning2", "wav", float64(MatchTiming.AutoDurationSec + MatchTiming.PauseDurationSec +
MatchTiming.TeleopDurationSec - MatchTiming.Warning2RemainingDurationSec)},
{"warning", "wav", float64(MatchTiming.AutoDurationSec + MatchTiming.PauseDurationSec +
MatchTiming.TeleopDurationSec - MatchTiming.WarningRemainingDurationSec)},
{"end", "wav", float64(MatchTiming.AutoDurationSec + MatchTiming.PauseDurationSec +
MatchTiming.TeleopDurationSec)},
{"abort", "mp3", -1},
{"abort", "wav", -1},
{"rotation", "wav", -1},
{"position", "wav", -1},
}
}

View File

@@ -6,11 +6,10 @@
package game
var MatchTiming = struct {
WarmupDurationSec int
AutoDurationSec int
PauseDurationSec int
TeleopDurationSec int
Warning1RemainingDurationSec int
Warning2RemainingDurationSec int
TimeoutDurationSec int
}{0, 15, 0, 135, 30, 20, 0}
WarmupDurationSec int
AutoDurationSec int
PauseDurationSec int
TeleopDurationSec int
WarningRemainingDurationSec int
TimeoutDurationSec int
}{0, 15, 2, 135, 30, 0}

View File

@@ -8,38 +8,37 @@ package model
import "github.com/Team254/cheesy-arena/game"
type EventSettings struct {
Id int
Name string
NumElimAlliances int
SelectionRound2Order string
SelectionRound3Order string
TBADownloadEnabled bool
TbaPublishingEnabled bool
TbaEventCode string
TbaSecretId string
TbaSecret string
NetworkSecurityEnabled bool
ApAddress string
ApUsername string
ApPassword string
ApTeamChannel int
ApAdminChannel int
ApAdminWpaKey string
Ap2Address string
Ap2Username string
Ap2Password string
Ap2TeamChannel int
SwitchAddress string
SwitchPassword string
PlcAddress string
AdminPassword string
WarmupDurationSec int
AutoDurationSec int
PauseDurationSec int
TeleopDurationSec int
Warning1RemainingDurationSec int
Warning2RemainingDurationSec int
HabDockingThreshold int
Id int
Name string
NumElimAlliances int
SelectionRound2Order string
SelectionRound3Order string
TBADownloadEnabled bool
TbaPublishingEnabled bool
TbaEventCode string
TbaSecretId string
TbaSecret string
NetworkSecurityEnabled bool
ApAddress string
ApUsername string
ApPassword string
ApTeamChannel int
ApAdminChannel int
ApAdminWpaKey string
Ap2Address string
Ap2Username string
Ap2Password string
Ap2TeamChannel int
SwitchAddress string
SwitchPassword string
PlcAddress string
AdminPassword string
WarmupDurationSec int
AutoDurationSec int
PauseDurationSec int
TeleopDurationSec int
WarningRemainingDurationSec int
HabDockingThreshold int
}
const eventSettingsId = 0
@@ -62,8 +61,7 @@ func (database *Database) GetEventSettings() (*EventSettings, error) {
eventSettings.AutoDurationSec = game.MatchTiming.AutoDurationSec
eventSettings.PauseDurationSec = game.MatchTiming.PauseDurationSec
eventSettings.TeleopDurationSec = game.MatchTiming.TeleopDurationSec
eventSettings.Warning1RemainingDurationSec = game.MatchTiming.Warning1RemainingDurationSec
eventSettings.Warning2RemainingDurationSec = game.MatchTiming.Warning2RemainingDurationSec
eventSettings.WarningRemainingDurationSec = game.MatchTiming.WarningRemainingDurationSec
eventSettings.HabDockingThreshold = 15
err = database.eventSettingsMap.Insert(eventSettings)

View File

@@ -15,9 +15,8 @@ func TestEventSettingsReadWrite(t *testing.T) {
assert.Nil(t, err)
assert.Equal(t, EventSettings{Id: 0, Name: "Untitled Event", NumElimAlliances: 8, SelectionRound2Order: "L",
SelectionRound3Order: "", TBADownloadEnabled: true, ApTeamChannel: 157, ApAdminChannel: 0,
ApAdminWpaKey: "1234Five", WarmupDurationSec: 0, AutoDurationSec: 15, PauseDurationSec: 0,
TeleopDurationSec: 135, Warning1RemainingDurationSec: 30, Warning2RemainingDurationSec: 20,
HabDockingThreshold: 15}, *eventSettings)
ApAdminWpaKey: "1234Five", WarmupDurationSec: 0, AutoDurationSec: 15, PauseDurationSec: 2,
TeleopDurationSec: 135, WarningRemainingDurationSec: 30, HabDockingThreshold: 15}, *eventSettings)
eventSettings.Name = "Chezy Champs"
eventSettings.NumElimAlliances = 6

Binary file not shown.

BIN
static/audio/abort.wav Normal file

Binary file not shown.

Binary file not shown.

BIN
static/audio/position.wav Normal file

Binary file not shown.

Binary file not shown.

BIN
static/audio/rotation.wav Normal file

Binary file not shown.

Binary file not shown.

BIN
static/audio/warning.wav Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -268,17 +268,10 @@
</div>
</div>
<div class="form-group">
<label class="col-lg-5 control-label">First Warning Remaining Duration (seconds)</label>
<label class="col-lg-5 control-label">Warning Remaining Duration (seconds)</label>
<div class="col-lg-7">
<input type="text" class="form-control" name="warning1RemainingDurationSec"
value="{{.Warning1RemainingDurationSec}}">
</div>
</div>
<div class="form-group">
<label class="col-lg-5 control-label">Second Warning Remaining Duration (seconds)</label>
<div class="col-lg-7">
<input type="text" class="form-control" name="warning2RemainingDurationSec"
value="{{.Warning2RemainingDurationSec}}">
<input type="text" class="form-control" name="warningRemainingDurationSec"
value="{{.WarningRemainingDurationSec}}">
</div>
</div>
</fieldset>

View File

@@ -74,8 +74,7 @@ func (web *Web) settingsPostHandler(w http.ResponseWriter, r *http.Request) {
eventSettings.AutoDurationSec, _ = strconv.Atoi(r.PostFormValue("autoDurationSec"))
eventSettings.PauseDurationSec, _ = strconv.Atoi(r.PostFormValue("pauseDurationSec"))
eventSettings.TeleopDurationSec, _ = strconv.Atoi(r.PostFormValue("teleopDurationSec"))
eventSettings.Warning1RemainingDurationSec, _ = strconv.Atoi(r.PostFormValue("warning1RemainingDurationSec"))
eventSettings.Warning2RemainingDurationSec, _ = strconv.Atoi(r.PostFormValue("warning2RemainingDurationSec"))
eventSettings.WarningRemainingDurationSec, _ = strconv.Atoi(r.PostFormValue("warningRemainingDurationSec"))
eventSettings.HabDockingThreshold, _ = strconv.Atoi(r.PostFormValue("habDockingThreshold"))
if eventSettings.Ap2TeamChannel != 0 && eventSettings.Ap2TeamChannel == eventSettings.ApTeamChannel {