self.initWiimotes()
self.firstSong = True
self.screen = SCREEN_HOME
+ self.playingScreen = None
def initWiimotes(self) :
if self.wiimoteSupport :
global pygame_wiimouse
from pywiiuse import pygame_wiimouse
from minwii.config import IR_POSITION
- pygame_wiimouse.init(2, 5, self.screenResolution, IR_POSITION) # look for 4, wait 5 seconds
+ pygame_wiimouse.init(5, 5, self.screenResolution, IR_POSITION) # look for 5, wait 5 seconds
self.nwiimotes = nwiimotes = pygame_wiimouse.get_count()
console.debug('wiimotes found : %d', nwiimotes)
self.WT = WT = pygame_wiimouse.WT
self.synth.inc_gain()
elif wiiuse.is_just_pressed(wm, wiiuse.button['-']) :
self.synth.dec_gain()
+ elif wiiuse.is_just_pressed(wm, wiiuse.button['1']) and self.playingScreen :
+ self.playingScreen.tempoTrimUp()
+ elif wiiuse.is_just_pressed(wm, wiiuse.button['2']) and self.playingScreen :
+ self.playingScreen.tempoTrimDown()
elif self.screen in (SCREEN_HOME, SCREEN_INSTRUMENTS) :
pygame_wiimouse._full_mouse_event_cb(wt, id, wmp)
pygame.display.set_caption('MINWii')
WT = self.WT
- songFile, playMode, wiimoteIndex = '', 'NORMAL', 0
+ songFile, playMode, displayNotes, wiimoteIndex = '', 'NORMAL', True, 0
while True :
WT.resume()
WT.selectWiimote(self.nwiimotes - 1) # la télécommande est la souris
self.screen = SCREEN_HOME
- exit, songFile, playMode, wiimoteIndex = \
- self.selectSongAndOptions(songFile, playMode, wiimoteIndex)
- if exit : break
+ exit, songFile, playMode, displayNotes, wiimoteIndex = \
+ self.selectSongAndOptions(songFile, playMode, displayNotes, wiimoteIndex)
+ if exit :
+ WT.quit()
+ break
self.screen = SCREEN_INSTRUMENTS
self.screen = SCREEN_PLAY
WT.selectWiimote(wiimoteIndex)
- self.runPlayingScreen(songFile, playMode, instrumentDescription)
+ self.runPlayingScreen(songFile, playMode, displayNotes, instrumentDescription)
WT.pause()
- def selectSongAndOptions(self, songFile, playMode, wiimoteIndex) :
+ def selectSongAndOptions(self, songFile, playMode, displayNotes, wiimoteIndex) :
""" lance l'écran de paramétrage et retourne un tuple comportant :
- drapeau de sortie de l'application (booléen)
- chemin du fichier de la chanson
- mode (entier)
+ - affichage des notes (booléen)
- wiimote sélectionnée (entier)
"""
home = Home(songPath=SONG_FILE_PATH,
songFile=songFile,
playMode=playMode,
+ displayNotes=displayNotes,
wiimoteIndex=wiimoteIndex,
nwiimotes=self.nwiimotes)
app = self.app
return (home.exitApp,
home.songFile,
home.selectedPlayMode,
+ home.displayNotes,
home.selectedWiimoteIndex)
def selectInstrument(self) :
console.info('ajustement octave : %d', instru['octave'])
return instru
- def runPlayingScreen(self, songFile, playMode, instrumentDescription) :
+ def runPlayingScreen(self, songFile, playMode, displayNotes, instrumentDescription) :
""" Lance l'écran de jeu principal avec la chanson 'songFile' dans le mode 'playMode'
avec l'instrument midi 'instrumentDescription'.
"""
self.synth.adjust_octave(0, octave)
self.synth.program_select(0, bank, preset)
if playMode == PLAYING_MODES_DICT['IMPRO'] :
- playingScreen = PlayingScreen(self.synth)
+ playingScreen = PlayingScreen(self.synth, displayNotes=displayNotes)
else :
song = musicXml2Song(songFile)
- playingScreen = SongPlayingScreen(self.synth, song, mode=playMode)
+ self.playingScreen = playingScreen = SongPlayingScreen(self.synth, song, mode=playMode, displayNotes=displayNotes)
playingScreen.run()
pygame.event.clear()
EventDispatcher.reset()
+ self.playingScreen = None
class _WTFacade :