Code : Tout sélectionner
Procedure GCMainMenu(MouseSprite$,ScreenSprite$)
;Déclaration de la prise en charge des formats graphiques
UseJPEGImageDecoder()
UsePNGImageDecoder()
UseOGGSoundDecoder()
;Définition des variables
MouseActualX = 500
MouseActualY = 350
;Chargement des medias
Media_MouseSpriteLoad = LoadSprite(#PB_Any,MouseSprite$)
Media_ScreenSpriteLoad = LoadSprite(#PB_Any,ScreenSprite$)
Media_BNouvellePartie = LoadSprite(#PB_Any,"Button_NouvellePartie.bmp")
Media_BChargerPartie = LoadSprite(#PB_Any,"Button_ChargerPartie.bmp")
Media_BOptions = LoadSprite(#PB_Any,"Button_Options.bmp")
Media_BCredits = LoadSprite(#PB_Any,"Button_Credits.bmp")
Media_BQuitter = LoadSprite(#PB_Any,"Button_Quitter.bmp")
Media_BNouvellePartieHL = LoadSprite(#PB_Any,"Button_NouvellePartieHL.bmp")
Media_BChargerPartieHL = LoadSprite(#PB_Any,"Button_ChargerPartieHL.bmp")
Media_BOptionsHL = LoadSprite(#PB_Any,"Button_OptionsHL.bmp")
Media_BCreditsHL = LoadSprite(#PB_Any,"Button_CreditsHL.bmp")
Media_BQuitterHL = LoadSprite(#PB_Any,"Button_QuitterHL.bmp")
Media_BNouvellePartieP = LoadSprite(#PB_Any,"Button_NouvellePartieP.bmp")
Media_BChargerPartieP = LoadSprite(#PB_Any,"Button_ChargerPartieP.bmp")
Media_BOptionsP = LoadSprite(#PB_Any,"Button_OptionsP.bmp")
Media_BCreditsP = LoadSprite(#PB_Any,"Button_CreditsP.bmp")
Media_BQuitterP = LoadSprite(#PB_Any,"Button_QuitterP.bmp")
Media_WavButtonClic = LoadSound(#PB_Any,"Button_clic.wav")
Media_WavButtonSurf = LoadSound(#PB_Any,"Button_surf.wav")
;Définition de la transparence
TransparentSpriteColor(#PB_Any,RGB(255,0,255))
;Boucle principale : déclaration des mouvements
Repeat
ClearScreen(RGB(0,0,0))
;On affiche l'écran principal
DisplaySprite(Media_ScreenSpriteLoad,0,0)
DisplayTransparentSprite(Media_BNouvellePartie,545,292)
DisplayTransparentSprite(Media_BChargerPartie,545,410)
DisplayTransparentSprite(Media_BOptions,545,528)
DisplayTransparentSprite(Media_BCredits,545,646)
DisplayTransparentSprite(Media_BQuitter,545,764)
ExamineMouse()
ExamineKeyboard()
If MouseDeltaX() < 0
MouseActualX = MouseX() - 1
EndIf
If MouseDeltaX() > 0
MouseActualX = MouseX() + 1
EndIf
If MouseDeltaY() < 0
MouseActualY = MouseY() - 1
EndIf
If MouseDeltaY() > 0
MouseActualY = MouseY() + 1
EndIf
If MouseDeltaX() = 0 And MouseDeltaY() = 0
MouseActualX = MouseX()
MouseActualY = MouseY()
EndIf
;Matérialisation des boutons
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 293 And MouseActualY < 332
DisplayTransparentSprite(Media_BNouvellePartieHL,546,291)
PlaySound(Media_WavButtonSurf)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 410 And MouseActualY < 453
DisplayTransparentSprite(Media_BChargerPartieHL,546,409)
PlaySound(Media_WavButtonSurf)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 528 And MouseActualY < 570
DisplayTransparentSprite(Media_BOptionsHL,545,527)
PlaySound(Media_WavButtonSurf)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 646 And MouseActualY < 688
DisplayTransparentSprite(Media_BCreditsHL,546,646)
PlaySound(Media_WavButtonSurf)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 764 And MouseActualY < 807
DisplayTransparentSprite(Media_BQuitterHL,545,765)
PlaySound(Media_WavButtonSurf)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 293 And MouseActualY < 332 And MouseButton(#PB_MouseButton_Left)
DisplayTransparentSprite(Media_BNouvellePartieP,546,291)
PlaySound(Media_WavButtonClic)
GCConfigMenu()
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 410 And MouseActualY < 453 And MouseButton(#PB_MouseButton_Left)
DisplayTransparentSprite(Media_BChargerPartieP,546,409)
PlaySound(Media_WavButtonClic)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 528 And MouseActualY < 570 And MouseButton(#PB_MouseButton_Left)
DisplayTransparentSprite(Media_BOptionsP,545,527)
PlaySound(Media_WavButtonClic)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 646 And MouseActualY < 688 And MouseButton(#PB_MouseButton_Left)
DisplayTransparentSprite(Media_BCreditsP,546,646)
PlaySound(Media_WavButtonClic)
EndIf
If MouseActualX > 545 And MouseActualX < 753 And MouseActualY > 764 And MouseActualY < 807 And MouseButton(#PB_MouseButton_Left)
DisplayTransparentSprite(Media_BQuitterP,545,765)
PlaySound(Media_WavButtonClic)
End
EndIf
;On affiche la souris ici pour qu'elle soit au dessus des autres sprites
DisplayTransparentSprite(Media_MouseSpriteLoad,MouseX(),MouseY())
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
EndProcedure