begin process at 2012 05 29 20:54:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Divers

 > 

problème bomberman c++


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème bomberman c++

mercredi 14 avril 2010 à 12:07:50 | problème bomberman c++

boudaarmel

slt

Je suis débutant en programmation, je réalise un bomberman en c++ avec SFML sous Visual studio 2008 et là jai une erreur d'exception. lorsque j'essai de compiler mon code. Pourriez vous m'aider ?

voici l'erreur en question :

Unhandled exception at 0x008614ac in testtest.exe: 0xC0000005: Access violation reading location 0xccccccd0.

voici mon code menu.cpp :

#include <SFML/Graphics.hpp>
#include "menu.h"
#include "mouseEvent.h"


Menus::Menus()
{

bool principal = true;
bool instruction = false;
bool choixPerso = false;
bool jouer = false;
bool quitterBoucle = true;


}

Menus::~Menus(void)
{

}
void Menus::MenuPrincipal(sf::RenderWindow *window )
{

sf::Image fondMenu;
sf::Sprite SpriteFondMenu;
// on charge le fond et on l'associe au fond
fondMenu.LoadFromFile("images/menu/FondMenu.png");
SpriteFondMenu.SetImage(fondMenu);
//SpriteFondMenu.SetCenter((SpriteFondMenu.GetSize().x/2), (SpriteFondMenu.GetSize().y/2));
//SpriteFondMenu.SetPosition((window->GetWidth()/2), (window->GetHeight()/2));
SpriteFondMenu.SetCenter(0, 0);
SpriteFondMenu.SetPosition(0, 0);

sf::Image newGame1;
sf::Image newGame2;
sf::Sprite SpriteNewGame;
sf::Image instruction1;
sf::Image instruction2;
sf::Sprite SpriteInstruction;
sf::Image quitter1;
sf::Image quitter2;
sf::Sprite SpriteQuitter;
newGame1.LoadFromFile("images/menu/newGame1.png");
newGame2.LoadFromFile("images/menu/newGame2.png");
SpriteNewGame.SetImage(newGame1);
//SpriteNewGame.SetPosition(936, 470);
SpriteNewGame.SetPosition(400, 450);
instruction1.LoadFromFile("images/menu/instruction1.png");
instruction2.LoadFromFile("images/menu/instruction2.png");
SpriteInstruction.SetImage(instruction1);
SpriteInstruction.SetPosition(400, 500);
quitter1.LoadFromFile("images/menu/quitter1.png");
quitter2.LoadFromFile("images/menu/quitter2.png");
SpriteQuitter.SetImage(quitter1);
SpriteQuitter.SetPosition(400, 550);

bool quitterBoucle = false;


while (window->IsOpened() && !quitterBoucle)
{
// Traitement des évènements
sf::Event Event;
while (window->GetEvent(Event))
{
// Fenêtre fermée : on quitte
if (Event.Type == sf::Event::Closed)
window->Close();
// Touche 'echap' appuyée
if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::Escape))
window->Close();
}

mouseEvent mouseEvent(window);
mouseEvent.onRollOver(&SpriteNewGame, &newGame1, &newGame2);
mouseEvent.onRollOver(&SpriteInstruction, &instruction1, &instruction2);
mouseEvent.onRollOver(&SpriteQuitter, &quitter1, &quitter2);
window->Draw(SpriteFondMenu);
window->Draw(SpriteNewGame);
window->Draw(SpriteInstruction);
window->Draw(SpriteQuitter);



if(mouseEvent.onClicEvent(&SpriteNewGame))
{
this->principal = false;
this->choixPerso = true;
this->quitterBoucle = true;
MenuChoixPerso(window);
}

if(mouseEvent.onClicEvent(&SpriteInstruction))
{

this->principal = false;
this->instruction = true;
}

if(mouseEvent.onClicEvent(&SpriteQuitter))
{
window->Close();
}

window->Display();
}

}

void Menus::MenuInstructions(sf::RenderWindow *window)
{

}

void Menus::MenuChoixPerso(sf::RenderWindow *window)
{


//affichage des perso et selection
this->choixPerso= false;
this->quitterBoucle = true;
this->jouer =true;

sf::Image perso1;
sf::Image perso1Bis;
sf::Sprite SpritePerso1;

sf::Image perso2;
sf::Image perso2Bis;
sf::Sprite SpritePerso2;

sf::Image perso3;
sf::Image perso3Bis;
sf::Sprite SpritePerso3;

perso1.LoadFromFile("images/menu/mario.png");
perso1Bis.LoadFromFile("images/menu/croix.png");
perso2.LoadFromFile("images/menu/thief.png");
perso2Bis.LoadFromFile("images/menu/ipad.png");
perso3.LoadFromFile("images/menu/vip.gif");
perso3Bis.LoadFromFile("images/menu/chrome.png");

SpritePerso1.SetImage(perso1);
SpritePerso1.SetPosition(950, 470);

SpritePerso2.SetImage(perso2);
SpritePerso2.SetPosition(400, 350);

SpritePerso3.SetImage(perso3);
SpritePerso3.SetPosition(425, 300);



while (window->IsOpened())
{
sf::Event Event;
while(window->GetEvent(Event))
{

// Fenêtre fermée : on quitte
if (Event.Type == sf::Event::Closed)
window->Close();
// Touche 'echap' appuyée
if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::Escape))
window->Close();
}

mouseEvent mouseEvent(window);
mouseEvent.onRollOver(&SpritePerso1, &perso1, &perso1Bis);
mouseEvent.onRollOver(&SpritePerso2, &perso2, &perso2Bis);
mouseEvent.onRollOver(&SpritePerso2, &perso3, &perso3Bis);
window->Draw(SpritePerso1);
window->Draw(SpritePerso2);
window->Draw(SpritePerso3);

if(mouseEvent.onClicEvent(&SpritePerso1) || mouseEvent.onClicEvent(&SpritePerso2) || mouseEvent.onClicEvent(&SpritePerso3))
{
//instancier jeux
Jeux game(window);

//appeler game()
game.game();
}

window->Display();
}

voici le main

#include <SFML/Graphics.hpp>
#include "jeux.h"
#include "menu.h"
#include "jeux.h"

int main()
{
//création de notre fenêtre d'affichage en 800 par 600 nomé Bomberman et en fenêtré
sf::RenderWindow window(sf::VideoMode(800, 600, 32), "Bomberman");
// utilisation de la synchronisation vertical
window.UseVerticalSync(true);

//on crée menu1
Menus menu1;

while (1)
{

if(menu1.principal)
{
menu1.MenuPrincipal(&window);
}
else if (menu1.instruction)
{
menu1.MenuInstructions(&window);
}
else if (menu1.choixPerso)
{
menu1.MenuChoixPerso(&window);

}

}


return EXIT_SUCCESS;
}

Merci d'avance pour votre aide


Cette discussion est classée dans : menu, window, event, mouseevent, sf


Répondre à ce message

Sujets en rapport avec ce message

keybd_event [ par Steph115 ] Bonjour,pour simuler une combinaison de touches (par exemple ALT+ENTRER) il faut utiliser cette fonction la : keybd_event(VK_MENU,0x38,0,0); keybd_eve Tetris game [ par hindou11 ] Bonjour, je viens de me lancer dans la SDL, mais il se trouve que je plante un peu......je suis entrain de programmer le jeu du tetris mais je m'emb x window avec xlib [ par pen120 ] Je vous prie de m`aider sur ce sujet svp, J`ai un client (application exceed) connecter au serveur unix (nom de serveur: costs ,adress ip 192.168.9.1) passer d'une window form a une autre en Visual C++ [ par imoum ] s'il tout plait comment passe d'une fenêtre a une autre en Visual c++??merci Menu avec flèches [ par nourhene4 ] Comment ecrire en C un menu qu'on parcourt avec des flèches ? Menu avec touches directionnelles et couleurs ?? [ par nourhene4 ] Bonsoir J'ai fais code d'un menu dans lequel l'utilisateur utilisera les fleches du clavier pour faire son choix Or quand je descend(ou monte) avec la comment utiliser les menus win32 api C ? [ par ssefyou ] bonsoir, je suis entrain de créer un petit programme dans le quel j'utilise un menu , j'arrive à créer mon menu et afficher un message quand je clic makefile [error: no such file] [ par gzangel ] Bonjour, J'ai, dans mon projet C, trois fichiers: roulette.c, menu.h, joueur.h. Dans le fichier roulette.c j'ai inclus menu.h et joueur.h Mon makefil problème pointeur et event realize [ par mrpropre2 ] Bonjour,je developpe en ce moment une application avec gtk+ et devcpp. Je dois entre autres pouvoir dessiner des schemas. Ainsi j'utilise une drawing


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,165 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales