2011-12-26 3 views
0

Я получаю ошибки:
ошибки C2440: «инициализации»: не удается преобразовать из «межд» до «сопзЬ игрока
ошибки C2628:„Игрок“следуют„межд“является незаконным (сделал вы забыли ';'?)
из строки 5, const int WIDTH = 1280 , но я не понимаю, что я сделал не так.структура игрока генерирует C2440 ошибку

Мои заявления:

#include <allegro5\allegro.h> 
#include <allegro5\allegro_primitives.h> 
#include "objects.h" 

const int WIDTH = 1280; 
const int HEIGHT = 720; 
const float GRAVITY = 1.5; 
const float FORCE = 1.4; 
const float K = 0.25; 
enum KEYS{UP, DOWN, LEFT, RIGHT, SPACE}; 
bool keys[5] = {false, false, false, false, false}; 

void InitPlayer(); 
void DrawPlayer(); 

Player player; 

InitPlayer функции: структура

void InitPlayer() { 
    player.x = 0; 
    player.y = HEIGHT - 20; 
    player.vy = 0; 
    player.vx = 0; 
    player.fx = 0; 
    player.jumping = false; 
} 

игрока:

struct Player { 
    float x; 
    float y; 
    float fx; 
    float vx; 
    float vy; 
    int direction; 
    bool jumping; 

    void Jump() { 
    if(!jumping) { 
     vy = -15; 
     jumping = true; 
     } 
    } 
} 

ответ

3

Вы забыли поставить ; в конце определения Player:

struct Player { 
    // Stuff goes here 
}; 
^ 
^ 
^ 
Смежные вопросы