Bienvenue, Invité. Merci de vous connecter ou de vous inscrire. Avez-vous oublié d'activer ?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - swa870

Pages: [1]
1
Graphique / Re : sf::RenderWindow draw
« le: Septembre 13, 2013, 02:16:07 pm »
Parfait merci bcp de tes réponses :)

Dernière question... je ne sais pas si tu pourrais me conseiller pour mes classes... je t'explique ma situation.

J'ai une classe joueur qui contient tous les informations du joueur et celle-ci hérite d'un sprite puis mon joueur peut avoir des armes, alors est-ce que je devrais créer une classe pour chacune de mes armes?

Et pour mes ennemis j'ai une classe ennemi puis une classe pour chaque sorte d'ennemi possible qui héritent de ennemi.

Est-ce que tu crois que c'est correct?

et puis je pourrais faire une liste de mes ennemis?

2
Graphique / Re : sf::RenderWindow draw
« le: Septembre 13, 2013, 02:56:43 am »
Parfait merci... C'est le premier jeux que je fais et cest pour mon cours.... Les tutoriel sont tous sur ce site?

J'ai eu un peut de difficulter a penser a séparer mon jeu avec un menu....

3
Graphique / Re : sf::RenderWindow draw
« le: Septembre 12, 2013, 08:49:24 pm »
voila mon programme principale.... je voulais mettre mon draw dans mon move, car il est dans une boucle

void GameEvent(sf::RenderWindow &window, TJoueur *&Joueur,TMenu *&Menu)
{


                sf::Event event;
                //gestio des evenments
                while (window.pollEvent(event))
                {
                        switch (event.type)
                        {
                        case sf::Event::Closed:
                                window.close();
                                break;
                        case sf::Event::KeyPressed:
                                if(sf::Keyboard::isKeyPressed(sf::Keyboard::Escape))
                                        Menu->setselected(-1);
                                        //window.close();
                                else if (sf::Keyboard::isKeyPressed(sf::Keyboard::Right))
                                {
                                        Joueur->MoveJoueur(2,window);
                                }
                                else if (sf::Keyboard::isKeyPressed(sf::Keyboard::Left))
                                {
                                        Joueur->MoveJoueur(1,window);
                                       
                                }
                                else if(sf::Keyboard::isKeyPressed(sf::Keyboard::Space))
                                {

                                }
                                else
                                        Joueur->MoveJoueur(0,window);
                                break;
                                 case sf::Event::MouseButtonPressed:
                if (sf::Mouse::isButtonPressed(sf::Mouse::Left))
                {

                }
                break;
                        default:
                                break;
                        }

                }
        window.draw(*Joueur);
}
int main()
{
        sf::RenderWindow window(sf::VideoMode(1024,768,32), "Module de fenetre");
       
        sf::Sprite MBackground;
        sf::Texture MenuBackground;
        MenuBackground.loadFromFile("mario_menu.jpg");
        MBackground.setTexture(MenuBackground);
        MBackground.setScale(.8,.8);
        TJoueur *Joueur;
        Joueur = new TJoueur;
        Joueur->MoveJoueur(0,window);
        window.setFramerateLimit(60);
        TMenu *Menu;
        initialize(Menu);
       

        while (window.isOpen())
        {
               
        window.clear();
        //     
        //      Joueur->anim(img);
               
                switch (Menu->getselected())
                {
                case -1:
                        window.draw(MBackground);
                        Menu->CheckSelected(window);   
                        Menu->DrawMenu(window);        
                        break;
                case 0:
               
                        GameEvent(window,Joueur, Menu);
                        break;
                case 1:window.close();
                        break;
                case 2:window.close();
                        break;
                case 3: window.close();
                        break;
                case 4: window.close();
                        break;
                default:
                        break;
                }
                window.display();
        }
               
        return 0;
}

4
Graphique / sf::RenderWindow draw
« le: Septembre 12, 2013, 06:25:08 am »
Bonjour,
J'ai une fonction dans une class qui hérite d'un sf::sprite et je voudrais dessiner mon sprite dans ma class mais il n s'affiche pas.

class TJoueur : public sf::Sprite
{

protected:
        string MNom;
        int MHp;
        int MScore;
        int MLevel;
        int MNiveau;
        int MLastMoveL;
        int MLastMoveR;
        sf::Texture MarioTexture;
       
        int MChoixJoueur;
public:
        TJoueur(void);
        ~TJoueur(void);
        void MoveJoueur(int InMoved, sf::RenderWindow &window);
};

ma fonction ds le cpp:
void TJoueur::MoveJoueur(int InMoved, sf::RenderWindow &window)
{
        float position=0;
        switch (InMoved)
        {
        case 0 :
                setTextureRect(sf::IntRect(124,(45*MChoixJoueur),28,35));
                MLastMoveL = 0;MLastMoveR=0;
                break;
        case 1:
                if(MLastMoveL == 4)
                MLastMoveL = 0;
                setTextureRect(sf::IntRect(91-(MLastMoveL*30),(45*MChoixJoueur),28,35));
                setPosition(getPosition().x-10, 20);
                cout << MLastMoveL;
                MLastMoveL ++;
       
                break;
        case 2:
                if(MLastMoveR == 4)
                MLastMoveR = 0;
                setTextureRect(sf::IntRect(151+(MLastMoveR*30),(45*MChoixJoueur),28,35));
                setPosition(getPosition().x+10, 20);
                MLastMoveR++;
                break;

        default:
                setTextureRect(sf::IntRect(124,(45*MChoixJoueur),28,35));
                MLastMoveL = 0;MLastMoveR=0;
                break;
               
                window.draw(*this);
        }
}

j'essais de draw mon sprite avec *this, mais ma fenêtre reste noir.... si je fais le draw dans mon programme principale alors mon image s'affiche... (window.draw(*Joueur);)


Pages: [1]