Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Hellgast23

Pages: [1]
1
General / Re: Unhandled exception: Integer division by zero.
« on: February 11, 2013, 05:09:00 pm »
Thank you for the quick reply,
Made me feel dumb tho  ::)

2
General / Unhandled exception: Integer division by zero.
« on: February 11, 2013, 04:47:26 pm »
Hello, I've been searching for a solution on this error for some time now, but I don't seem to be able to find a fix.
I'm using SFML 2.0, visual C++ 2010, Release mode, dynamic libs.

The program first displays a startmenu window, after pressing 'S' it displays the game window.
Then it should show the 4 spEddStill sprites in a loop, each for 200 milliseconds. But after the first loop or the 4 sprites, it gives an error:

Unhandled exception at 0x0fdba57f in The Next Project.exe: 0xC0000094: Integer division by zero.

Here is the Full code:

The "animation" is at line 126, the error is at line 160

// Headers die nodig zijn
#include <SFML/System.hpp>
#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp>

// Functie verklaringen



int main()
{
        // Een variable die zal beslissen bij welk deel het spel zit
        int WelkDeel = 0; // (0 - Start Menu) (1 - Speel wereld) (2 - Game over menu )
        bool PlayGame = true;

        // Maak een het StartMenuWindow
        sf::RenderWindow wStartMenu(sf::VideoMode(800, 600), "Edd's Adventure Start Menu!");

        // Loop die zorgt dat het spel controleer welk kader er moet geopent worden
        while (PlayGame)
        {
                switch (WelkDeel) //Bepaald welk kader er moet gemaakt worden
                {
                case 0:// Start Menu
                       
                        // Start Menu frame loop
                        while (wStartMenu.isOpen())
                        {
                                sf::Event evStartMenu;
                                while (wStartMenu.pollEvent(evStartMenu))
                                {
                                        if (evStartMenu.type == sf::Event::Closed) // Close Button:  Stop game
                                        {
                                                PlayGame = false;
                                                wStartMenu.close();
                                        }
                                        if ((evStartMenu.type == sf::Event::KeyPressed) && (evStartMenu.key.code == sf::Keyboard::Escape)) // Escape Button:  Stop game
                                        {
                                                PlayGame = false;
                                                wStartMenu.close();
                                        }
                                        if ((evStartMenu.type == sf::Event::KeyPressed) && (evStartMenu.key.code == sf::Keyboard::S)) // S Button: Start Spel
                                        {
                                                WelkDeel = 1;
                                                wStartMenu.close();

                                        }
                                }//End event loop

                                //Clears the previous frame
                                wStartMenu.clear(sf::Color(100,0,0,255));

                                //Draws the new frame

                                //Displays the new rendered fram
                                wStartMenu.display();

                        }//end StartMenu frame Loop
                        break;

                case 1: //Speel wereld
                        //Variabelen
                        bool EdStandStill = true; // Stored is edd is standing still or not
       
                        //Geef de textures een bestand
                        sf::Texture txEddStill[3];
                        txEddStill[0].loadFromFile("EddStandStill1.png");
                        txEddStill[1].loadFromFile("EddStandStill2.png");
                        txEddStill[2].loadFromFile("EddStandStill3.png");
                        txEddStill[3].loadFromFile("EddStandStill4.png");

                        //Zet de afbeeldingen om naar een sprite
                        sf::Sprite spEddStill[3];
                        spEddStill[0].setTexture(txEddStill[0]);
                        spEddStill[1].setTexture(txEddStill[1]);
                        spEddStill[2].setTexture(txEddStill[2]);
                        spEddStill[3].setTexture(txEddStill[3]);

                        //Zet de sprites op een basis plaats
                        spEddStill[0].setPosition(100,100);
                        spEddStill[1].setPosition(100,100);
                        spEddStill[2].setPosition(100,100);
                        spEddStill[3].setPosition(100,100);

                        //Zet de sprites op de juiste groote
                        sf::Vector2f EddStillScale(0.3f,0.3f);
                        spEddStill[0].setScale(EddStillScale);
                        spEddStill[1].setScale(EddStillScale);
                        spEddStill[2].setScale(EddStillScale);
                        spEddStill[3].setScale(EddStillScale);

                        //Maak een pointer die het adress zal opslaan van het te tekenen standstill texture
                        sf::Sprite* pEddStill;

                        // Maak het Speel window aan
                        sf::RenderWindow wSpeel(sf::VideoMode(800, 600), "Ed's Adventure Game!");

                        //Een klok die zal meten hoeland de standstill animatie duurd
                        sf::Clock StandStillClock;
                        //Een klok die de frame tijd meet
                        sf::Clock clSpeel;

                        //Start Speel frame loop
                        while (wSpeel.isOpen())
                        {
                                // Measure the time of a frame
                                sf::Time ElapsedTimeSpeel1 = clSpeel.getElapsedTime();

                                //capture the inputs
                                sf::Event evSpeel;
                                while (wSpeel.pollEvent(evSpeel))
                                {
                                        if (evSpeel.type == sf::Event::Closed) // Close Button:  Stop game
                                        {
                                                PlayGame = false;
                                                wSpeel.close();
                                        }
                                        if ((evSpeel.type == sf::Event::KeyPressed) && (evSpeel.key.code == sf::Keyboard::Escape)) // Escape Button:  Stop game
                                        {
                                                PlayGame = false;
                                                wSpeel.close();
                                        }
                                }

                                //Make the standstill animation by changing the pointer
                                if (EdStandStill)
                                {
                                        sf::Time StandStillTime = StandStillClock.getElapsedTime();
                                        int StandStillTimeInt = StandStillTime.asMilliseconds();
                                        int TimeBetweenStandStillAnimations = 200;
                                        if (StandStillTimeInt < TimeBetweenStandStillAnimations)
                                        {
                                                pEddStill = &spEddStill[0];
                                        }else if (StandStillTimeInt < TimeBetweenStandStillAnimations * 2){
                                                pEddStill = &spEddStill[1];
                                        }else if(StandStillTimeInt < TimeBetweenStandStillAnimations * 3){
                                                pEddStill = &spEddStill[2];
                                        }else if(StandStillTimeInt < TimeBetweenStandStillAnimations * 4){
                                                pEddStill = &spEddStill[3];
                                        }else{
                                                StandStillClock.restart();
                                        }
                                }

                               
                                //if (sf::Keyboard::isKeyPressed(sf::Keyboard::Left))   // left key is pressed: Move edd left
                                //{
                                        //*pEddStill
                        //      }


                                //Clears the previous frame
                                wSpeel.clear(sf::Color(0,100,0,255));

                                //Draws the new frame
                                sf::Sprite temp1 = *pEddStill;
                                wSpeel.draw(temp1);

                                //Displays the new rendered fram
                                wSpeel.setFramerateLimit(30);
                                wSpeel.display();

                        }//End Speel frame loop
                        break;

                }//end Main Switch

        }//end Main Loop

    return EXIT_SUCCESS;
}

3
Graphics / Re: Sprite positions
« on: February 09, 2013, 06:26:48 pm »
aa, that is exactly what I was looking for!
Thanks a lot!

4
Graphics / [Solved]Sprite positions
« on: February 09, 2013, 05:47:18 pm »
The only was I know on how to get a position of a sprite is by using sprite.GetPosition() wich returns a vector.
But lets say you wanne use an "if" function to do something when the X-Coordinates of a sprite are higher then a giving amount.
How could you do that? Atm I tried some stuff, but it keeps giving me errors... (The vectors kinda confuse me)

thanks for reading,
greetz,
Hellgast

5
Window / Re: Run-Time Failure
« on: February 09, 2013, 10:40:34 am »
Atm, its working when using the release, instead of debug. (debug still gives the same error tho)
Didn't really use the release option before,
Also, after reading the FAQ you linked, I got reminded that i also need the system.hpp header and link if I wanne use the window package,
so thanks :)

6
Window / [Solved]Run-Time Failure
« on: February 09, 2013, 12:25:44 am »
Hello, I just started with SFML but I have been stuck, trying to get this work for a few days now.
When I try to start the following code, it runs and opens the window, but when I use Esc or the Cross to close it, it gives me some error, wich you can see on the screenshots.
I'm using windows7, Visual C++ Express 2008 and sfml 1.6.

Some help would realy be appriciated! :)

Greetz,
Hellgast

Here is the code:
(click to show/hide)

Here is a screen shot when ran without debugging:
(click to show/hide)

Here are some screenshots when ran with debugging
(click to show/hide)
http://imgur.com/3oWVsIC,9Ai9eHC,wTknSS3,7jPG6YJ#0

Pages: [1]
anything