#0 

04-04-2011 00:51:04

obiyadi
Membre
Date d'inscription: 09-02-2011
Messages: 14

Bonsoir a tous,
j'ai fait un petit jeu, une sorte de labyrinthe avec des trous dans le sol, quand mon personnage tombe dans le vide j'affiche une messagebox avec deux boutons "ok" et "cancel" ,  j'aimerai que quand j'appuis sur le bouton "ok" mon application se ferme, et sur "cancel" une nouvelle partie , c'est a dire que je reinistialise mon chrono w la position du joueur, enfin relancer le programme comme si je venais de le compiler....
merci de bien vouloir m'aider !
bonne fin de soirée

Hors ligne


#1 

04-04-2011 01:41:44

mmorpglefilm
Abonné
Lieu: la galaxie UDFy-38135539
Date d'inscription: 18-05-2010
Messages: 162
Site web

Pourquoi ne pas créer un "IGUIWindow".

irr::gui::IGUIWindow* window = gui->addWindow(écrit les paramètre que tu veut);

et que tu crérais à l'intérieure deux bouton

gui->addButton(rect<s32>(PositionQueTuVeut), window, 1, L"Continuer");
gui->addButton(rect<s32>(PositionQueTuVeut), window, 2, L"Quiter");

Est avec un gestionnaire d’évènement, tu détecte s'il y a un évènement en rapport avec la gui, après tu regarde l'ID, tu regarde si un bouton est appuyer, et tu fais se que tu veut avec, si tu ne sais pas comment en créer un, regarde dans le tutoriel "UserInterface" (05) d'irrlicht.

Après si tu créer un "addMessageBox", je sais pas comment faire pour savoir si tu à appuyer sur t'elle ou t'elle bouton.

En espèrent t'avoir aider.

Dernière modification par mmorpglefilm (04-04-2011 01:46:07)

Hors ligne


#2 

04-04-2011 01:59:15

obiyadi
Membre
Date d'inscription: 09-02-2011
Messages: 14

merci beaucoup mmorpgfilm!
je m'y mets tout de suite !

Hors ligne


#3 

05-04-2011 00:33:40

obiyadi
Membre
Date d'inscription: 09-02-2011
Messages: 14

reBonsoir ,
mmorpgfilm, j'ai suivi ton conseil, et j'ai commencé ... pour detecter si il y a un appuie sur un bouton je fait ( bouton->isPressed() ) or cela ne detecte que si le est pressé , comment je fais pour detecter un simple appuie et relachement .... j'espere que vous m'avez compris ^^
merci

Hors ligne


#4 

05-04-2011 01:42:02

mmorpglefilm
Abonné
Lieu: la galaxie UDFy-38135539
Date d'inscription: 18-05-2010
Messages: 162
Site web

Code c++ :

gui->addButton(rect<s32>(PositionQueTuVeut), window, 1, L"Quitter");    //!Tu créer le bouton, avec l'ID 1 (importent)

bool NomDeTaClass::OnEvent(const irr::SEvent& event)
{
    if(event.EventType == irr::EET_GUI_EVENT)  //!Tu regarde s'il y a un évènement par rapport à la gui
    {
        irr::s32 id = event.GUIEvent.Caller->getID();      //!Tu regarde l'ID de l'élément
        switch(id)    //!Un switch en façons de l'ID
        {
                 case 1:      //!Si l'ID est egal à 1 tu fais se qu'il y a écrit en dessous
            if (event.GUIEvent.EventType == irr::gui::EGET_BUTTON_CLICKED)    //!Tu vérifie si c'est bien un bouton
                        {
                device->closeDevice();               //!Tu écrit le code que tu veut
                        }
                 break;
                 }
        }
    return false;
}




Ou autrement regarde la demo d'irrlicht, le fichier "CMainMenue.ccp", je pense que tu trouveras une réponse plus précise.
Mes si tu na rien compris, voici un petit tutoriel pour "capter les évènement"  : http://www.siteduzero.com/tutoriel-3-56 … iques.html

Dernière modification par mmorpglefilm (05-04-2011 01:47:27)

Hors ligne


#5 

05-04-2011 01:45:55

obiyadi
Membre
Date d'inscription: 09-02-2011
Messages: 14

d'accord ! merci , je vois ca tout de suite ! ^^

Hors ligne


#6 

05-04-2011 14:44:55

obiyadi
Membre
Date d'inscription: 09-02-2011
Messages: 14

bonjour,
et merci beaucoup mmorpgfilm ! j'ai essayé ton truc, et je crois que j'ai saisi le truc ! ca marche tres bien !
merci encore une fois ^^

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
Analysé par
880 membres
1424 sujets
11113 messages
Dernier membre inscrit: mandrifidy
25 invités en ligne
Aucun membre connecté
RSS Feed