;ò ;Bc@s¯dZdkZdkZdkZdkZdkZdkTdklZl Z l Z l Z dfd„ƒYZ dfd„ƒYZ dfd „ƒYZd e e fd „ƒYZdS( iN(s*(s load_images load_soundsMyErrors get_filessImgcBstZRS(N(s__name__s __module__(((s./lib/soundNpic.pysImgssSndcBstZRS(N(s__name__s __module__(((s./lib/soundNpic.pysSnd!ssPicSndcBs5tZd„Zd„Zd„Zd„Zd„ZRS(NcCs~||_||_||_| |_||_||_||_|d|_ |ii ƒi|ƒ|_ d|_ d|_ dS(Nii(ssndsselfspicsimagesoriginalsmovesorgmovesendsstartscountsget_rectsrectsdizzysflag(sselfspicssndsmovesstartsend((s./lib/soundNpic.pys__init__%s         cCs?|io|iƒn |iƒ|i|i7_|iSdS(N(sselfsdizzys_spins_updownscountsmovesflag(sself((s./lib/soundNpic.pysupdate2s   cCs¿d|_|iid|iƒ|_|i|idjo|id|_d|_n|id|idjoH|ii ƒi|iƒ|_|i |_|id|_d|_ndS(Niiiÿÿÿÿ( sselfsflagsrectsmovescountsendsstartsdizzysimagesget_rectsorgmove(sself((s./lib/soundNpic.pys_updown;s   cCs¦|ii}|id|_|idjo:d|_|i|_|i d|_|id|_nt i i |i|iƒ|_|ii ƒ|_||i_dS(Ni ihiii( sselfsrectscentersdizzysoriginalsimagesmovesendscountspygames transformsrotatesget_rect(sselfscenter((s./lib/soundNpic.pys_spinGs   cCs(tiiti|i|iƒ|_dS(N(sImgsscreensblitsbackgrsselfsrect(sself((s./lib/soundNpic.pyseraseXs(s__name__s __module__s__init__supdates_updowns_spinserase(((s./lib/soundNpic.pysPicSnd$s  sGamecBsVtZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z RS( sZ soundNpic.py - part of childsplay.py, a suite of educational games for young children.cCse|t_|t_df|_df|_||_||_||_ d|_ d|_ |i ƒdS(NsLevel1ii( sscreensImgsbackgrsselfs gamelevelss gameitemssrcdicsbasepathsbasedirslibdirsstopsscores_setup(sselfsscreensbackgrsrcdicsbasepathslibdir((s./lib/soundNpic.pys__init___s         cCs g|_dS(N(sselfs objs_to_move(sself((s./lib/soundNpic.pys_setupksc Cs y(ttii|id|ƒdƒ}Wn0tj o$} dt_ t t_ t| ‚nXt ti|dft|ƒdft|ƒƒ}g}h|_g|_d}d}d} ti|ƒy®x§|D]Ÿ} ttii|id|| dƒd ƒ}tii|id|| d ƒ}t||d || f|| d fƒ} |i | ƒ|| i!i"ƒ|}qÎWWn0tj o$} d t_ t t_ t| ‚nXxL|D]D} |i#i$| i!| i%ƒ} | |it'| ƒ<|ii | ƒq¬Wt(i)i*|iƒdS(sEHit a image and listen to the sound, it doesn't do much more, for nows SoundNpicDatas*.ogginiiüÿÿÿi iEs.pngis.oggi iúsmethod start()N(+s get_filessosspathsjoinsselfslibdirslevelswavfilessMyErrorsinfoslines__name__snamesmapsoperatorsgetsliceslens filenamessobjlistsobjdictsrectlistsxsoffsetsysrandomsshufflesitems load_imagesimgssndsPicSndsobjsappendsimages get_widthsscreensblitsrectsrstuplespygamesdisplaysupdate(sselfslevelsisimgswavfilesssndsobjlists filenamessoffsetsinfosobjsitemsrsysx((s./lib/soundNpic.pysstartnsB(  2   +"(   cCsx<|D]4}|itjo |igjo|iƒqqWggf\}}x…|iD]z}|i |i i |i |i|iƒƒ|iƒ}|i |i i |i|iƒƒ|djo|i |ƒq[q[Wtii|ƒ|o|iiƒn|i|ifSdS(Ni(seventsseventstypesMOUSEBUTTONDOWNsselfs objs_to_moves_select_activates obj_removes dirty_rectssobjsappendsscreensblitsbackgrsrectsupdatesflagsimagespygamesdisplayspopsstopsscore(sselfseventssevents obj_removes dirty_rectssflagsobj((s./lib/soundNpic.pysloop•s   ( " cCsòtitiiƒddfƒ}xÅ|iD]º}|i|ƒo¤|i t |ƒ}ti i }y|i}|i|ƒWnGtij o8}ti|IdIJdfd„ƒY}|ƒ}nX|idƒ|ii|ƒq,q,WdSdS(Nis Disable musics NoneSoundcBstZed„ZRS(NcCsdS(N((sselfsloop((s./lib/soundNpic.pysplay´s(s__name__s __module__sNonesplay(((s./lib/soundNpic.pys NoneSound³si(spygamesRectsmousesget_posspossselfsrectlistsrecscontainssobjdictstuplesobjsmixersmusics playmusicssndsfilesloadserrorsinfossyssstderrs NoneSoundsplays objs_to_movesappend(sselfsinfosobjsposs playmusicsfilesrecs NoneSound((s./lib/soundNpic.pys_select_activate§s "    cCsdSdS(Ns SoundNpic((sself((s./lib/soundNpic.pys helptitle¼scCsdSdS(sxMust return the original, not translated, title of this game. It's needed by the high score class of childsplay.s SoundNpicN((sself((s./lib/soundNpic.pys__str__¿sc CsMtdƒtdƒdtdƒdtdƒdtdƒtdƒg }|SdS(NsThe aim of the game:s+Click on a picture and listen to the sound.s sDifficulty : 2-3 yearssNumber of levels : 1s?Due to the size of the module, mostly pictures and sounds, it'ss,split in separate modules instead of levels.(s_stext(sselfstext((s./lib/soundNpic.pyshelpÅsE ( s__name__s __module__s__doc__s__init__s_setupsstartsloops_select_activates helptitles__str__shelp(((s./lib/soundNpic.pysGame[s   '    (sRCFILEsosssyssoperatorsrandomspygamespygame.constantssutilss load_images load_soundsMyErrors get_filessImgsSndsPicSndsGame(s load_imagesSndsMyErrors get_filessImgsrandomsPicSndssyssGamespygamesoperators load_soundsossRCFILE((s./lib/soundNpic.pys?s$ 7