PlaySound + FadeSound + StopSound forwarding

master
HimbeerserverDE 2021-08-30 21:31:07 +02:00
parent 132c0db040
commit 3e667bc238
No known key found for this signature in database
GPG Key ID: 1A651504791E6A8B
2 changed files with 17 additions and 0 deletions

View File

@ -14,6 +14,7 @@ func connect(conn net.Conn, name string, cc *clientConn) *serverConn {
name: name,
aos: make(map[mt.AOID]struct{}),
particleSpawners: make(map[mt.ParticleSpawnerID]struct{}),
sounds: make(map[mt.SoundID]struct{}),
}
sc.log("-->", "connect")
cc.srv = sc

View File

@ -31,6 +31,8 @@ type serverConn struct {
aos map[mt.AOID]struct{}
particleSpawners map[mt.ParticleSpawnerID]struct{}
sounds map[mt.SoundID]struct{}
}
func (sc *serverConn) client() *clientConn { return sc.clt }
@ -385,6 +387,20 @@ func handleSrv(sc *serverConn) {
case *mt.ToCltDelParticleSpawner:
delete(sc.particleSpawners, cmd.ID)
sc.client().SendCmd(cmd)
case *mt.ToCltPlaySound:
prepend(sc.name, &cmd.Name)
sc.swapAOID(&cmd.SrcAOID)
if cmd.Loop {
sc.sounds[sc.ID] = struct{}{}
}
sc.client().SendCmd(cmd)
case *mt.ToCltFadeSound:
delete(sc.sounds, cmd.ID)
sc.client().SendCmd(cmd)
case *mt.ToCltStopSound:
delete(sc.sounds, cmd.ID)
sc.client().SendCmd(cmd)
}
}
}