Jump to content
  • Advertisement

DuckerDuck

Member
  • Content Count

    6
  • Joined

  • Last visited

Community Reputation

107 Neutral

About DuckerDuck

  • Rank
    Newbie
  1. DuckerDuck

    [SDL] SDL_Rect array

    Well, I found the problem. Somehow I got the function of code block 4 in a loop. Making NumberOfPlatforms grow far above 19. Thanks everybody for the respones,
  2. DuckerDuck

    [SDL] SDL_Rect array

    The "NumberOfPlatforms" int starts out as 0, than (with the function of code block 4) the number is increased. Also, not rendering still makes the game crash. I have not, but setting breakpoints doesn't seem to work for me, when debugging the app closes instantly. (Visual Studio 2010 Express)
  3. DuckerDuck

    [SDL] SDL_Rect array

    Hello, At the moment i'm trying implement plaforms in my 2d platformer. I want to store the platform data in an array of SDL_Rects. This is what I have: In my header: private: SDL_Rect rPlatformArray[20];//maximum platforms in a level is 20 (for now) This is how I change the array data: if (type == 4){ rPlatformArray[NumberOfPlatforms].x = x; rPlatformArray[NumberOfPlatforms].y = y; rPlatformArray[NumberOfPlatforms].h = h; rPlatformArray[NumberOfPlatforms].w = w; NumberOfPlatforms++; } And for rendering: for (int i = 0; i <= NumberOfPlatforms;i++){ SDL_FillRect(screen,&rPlatformArray,0xFFFFFF); } The problem seems to occur when I try to run the second code block. There are no compile errors, only as soon as the game starts it crashes. Can you help me? Thanks, DuckerDuck
  4. DuckerDuck

    [SDL] Timer problem

    Thanks BeerNutts, you're pseudo code got the job done.
  5. DuckerDuck

    [SDL] Timer problem

    Thanks for the response, I tried to go with your idea with the flags, though I'm doing somwthing wrong here. Take a look: if (CheckCol(PlayerLocation,rPortal1Loc) == true && PortalFlag1 == true){// if player collides AND the portal can be used, continue PortalFlag2 = false; //set the destination portal to: cannot use PlayerLocation.x = rPortal2Loc.x;//teleport PlayerLocation.y = rPortal2Loc.y;//teleport while (CheckCol(PlayerLocation,rPortal2Loc) == true){ //while colliding with the portal PortalFlag2 == false; // keep it set to false } PortalFlag2 = true; // not colliding? set back to true } if (CheckCol(PlayerLocation,rPortal2Loc) == true && PortalFlag2 == true){ // if player collides AND the portal can be used, continue PortalFlag1 = false; //set the destination portal to: cannot use PlayerLocation.x = rPortal1Loc.x;//teleport PlayerLocation.y = rPortal1Loc.y;//teleport while (CheckCol(PlayerLocation,rPortal1Loc) == true){ //while colliding with the portal PortalFlag1 == false; // keep it set to false } PortalFlag1 = true; // not colliding? set back to true } To me it seems like it should work, but it crashes the game.
  6. DuckerDuck

    [SDL] Timer problem

    Hello, I'm currently trying to get familiar with SDL and C++, and i've been working on a little project involing a very basic game engine. What I want to do at the moment is to implement a simple portal system. I have two portals, if my player steps on one of them he teleports to the other and vice versa. The problem is that, when using the portal, the collsion detection of the other portal interferese, and teleports the player infinitly from portal to portal. I wanted to fix this by adding a small delay before the portal is usable again, but somehow the function I wrote makes the game crash. Here is the code i'm using: To set the delay: void Core::setPortalDelay(int time){ Uint32 now; now = SDL_GetTicks(); while (now < time){ PortalDelay = true; } if (now > time){ PortalDelay = false; now = 0; } } and to teleport the player: if (CheckCol(PlayerLocation,rPortal1Loc) == true && PortalDelay == false){ PlayerLocation.x = rPortal2Loc.x; PlayerLocation.y = rPortal2Loc.y; setPortalDelay(2000); } if (CheckCol(PlayerLocation,rPortal2Loc) == true && PortalDelay == false){ PlayerLocation.x = rPortal1Loc.x; PlayerLocation.y = rPortal1Loc.y; setPortalDelay(2000); } Thanks, DuckerDuck
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!