int initGameState(gameState *gstate) { gstate->gameOver = 0; gstate->roundTime = 0; initCharacter(&(gstate->player1)); initCharacter(&(gstate->player2)); gstate->player1.status = STATUS_IDLE; gstate->player2.status = STATUS_IDLE; gstate->player1.xPosition = -25; gstate->player2.xPosition = 75; gstate->player1.movingDirection = NOTMOVING; gstate->player2.movingDirection = NOTMOVING; gstate->player1.facingDirection = RIGHT; gstate->player2.facingDirection = LEFT; gstate->player1.punchLength = 33; gstate->player1.punchDamage = 20; gstate->player2.punchLength = 33; gstate->player2.punchDamage = 20; gstate->player1.width = 13; gstate->player2.width = 13; return 0; }
bool init() { if (SDL_Init(SDL_INIT_VIDEO) < 0) { printf("SDL could not initialize! SDL Error: %s\n", SDL_GetError()); return false; } SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24); SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_STENCIL_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 2); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0); // Create window gWindow = SDL_CreateWindow("BasicTest", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN | SDL_WINDOW_RESIZABLE); if (!gWindow) { printf("Window could not be created! SDL Error: %s\n", SDL_GetError()); return false; } // Create context gContext = SDL_GL_CreateContext(gWindow); if (!gContext) { printf("OpenGL context could not be created! SDL Error: %s\n", SDL_GetError()); return false; } // Use Vsync if (SDL_GL_SetSwapInterval(1) < 0) { printf("Warning: Unable to set VSync! SDL Error: %s\n", SDL_GetError()); return false; } initEngine(); initLights(); initCharacter(); initWeapon(); initRide(); initGround(); return true; }
VinnyGreenCharacter::VinnyGreenCharacter(GameLayer *layer) { initCharacter(layer, "char3_0.png", "char3_", 9); }