from engines.sound import SOUND_FROM_WORLD
from engines.sound import Sound
from events import Event
from listeners.tick import Delay
from messages import SayText2
from players.helpers import index_from_userid
_sounds = {
'aua': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/aua.wav', download=True),
'axel': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/axel.mp3', download=True),
'badboys': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/badboys.wav', download=True),
'benny': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/benny.wav', download=True),
'blut': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/blut.mp3', download=True),
'body': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/body.mp3', download=True),
'cry': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/cry.mp3', download=True),
'feelgood': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/feelgood.mp3', download=True),
'frage': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/frage.mp3', download=True),
'fu': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/fu.mp3', download=True),
'haha': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/haha.mp3', download=True),
'hehe': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/hehe.wav', download=True),
'hi': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/hi.mp3', download=True),
'impossible': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/impossible.mp3', download=True),
'komm': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/komm.wav', download=True),
'leben': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/leben.mp3', download=True),
'lol': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/lol.mp3', download=True),
'lucker': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/lucker.mp3', download=True),
'oops': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/oops.mp3', download=True),
'power': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/power.mp3', download=True),
'schnauze': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/schnauze.mp3', download=True),
'silence': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/silence.wav', download=True),
'sry': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/sry.mp3', download=True),
'taliban': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/taliban.mp3', download=True),
'time': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/time.mp3', download=True),
'verbot': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/verbot.mp3', download=True),
'woohoo': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/woohoo.wav', download=True),
'wtf': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/wtf.mp3', download=True),
'yeah': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/yeah.wav', download=True),
'zzz': Sound((), SOUND_FROM_WORLD, 's_sounds/saysounds/***/zzz.wav', download=True),
}
_duplicates = {
'': '',
}
_current_sound = None
@Event('player_say')
def player_say(game_event):
"""Play a sound if necessary."""
global _current_sound
text = game_event['text']
if text in _duplicates:
text = _duplicates[text]
if text not in _sounds:
return
if _current_sound is not None:
SayText2('\x03[Saysounds] \x04Es wird bereits der Sound \x03{0} \x04abgespielt!'.format(_current_sound)).send(index_from_userid(game_event['userid']))
return
sound = _sounds[text]
sound.play()
_current_sound = sound.sample
Delay(sound.duration, _reset_sound)
def _reset_sound():
global _current_sound
_current_sound = None