[Ответить в тред] Ответить в тред

26/03/16 - Конкурс: Помоги гомункулу обрести семью!
15/10/15 - Набор в модераторы 15.10 по 17.10
27/09/15 - Двач API — Инструкция к применению



[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 2 | 1 | 2
Назад Вниз Каталог Обновить

Чому не робит ? 7th Hokkage 07/03/16 Пнд 23:53:36  679919  
14573840168910.jpg (64Кб, 472x604)
Помогите, советом и разъяснением. Учу С++ и у меня проблемы с классами и войдами в них. Делаю все вроде бы по примерчику, но ниче не работает.Кроме отрисовки карты. ЧТо нужно исправить ?? По координатам икс и игрик должен выводиться человечек. Когда пихал все в инт майн - работало. Когда в отдельный класс - перестало работать. К слову, при выведении на экран значений переменных X или Y , выводит какую то тарабарщину, хотя я задаю сотку на то и другое. Подскажите че нить, а то вдохновение прет, а творить не могу


class Player
{
public:
bool moveRight, moveLeft, Gravity;
int Impuls; float x; float y;


Player ()
{
bool moveRight = false;
bool moveLeft = false ;
bool Gravity = true;
float x = 100;
float y = 100;
int Impuls = 1;

}

void Name ()
{
if ( moveRight == true ) { x = x + 4; Sleep(100); }
if ( moveLeft == true ) { x = x - 4; Sleep(100); }
if ( y < 400 ) { Gravity = true; }
if ( y >= 400 ) { Gravity = false; }
if ( Gravity == true ) { y = Impuls + 4;Sleep(100); }
}

};

int main()
{
RenderWindow window(VideoMode(640, 480), "Test!");

Clock clock;
float time = clock.getElapsedTime().asMicroseconds();
clock.restart();
time = time / 700;
if (time > 20) time = 20;


float SetY = 120;
float SetX = 200;
Player moveR;
Player moveL;
Player X;
Player Y;
Player Impuls;
Player G;
Player V;

Texture t;
t.loadFromFile("Hmn.jpg");


Image map_image;
map_image.loadFromFile("Texture.jpg");


while (window.isOpen())
{
Event event;
while (window.pollEvent(event))
{
if (event.type == Event::Closed)
window.close();
}

if (Keyboard::isKeyPressed(Keyboard::Left))
{moveL.moveLeft = true;}
if (Keyboard::isKeyPressed(Keyboard::Right))
{moveR.moveRight = true; }
if (!Keyboard::isKeyPressed(Keyboard::Right) && !Keyboard::isKeyPressed(Keyboard::Left))
{
moveR.moveRight = false;
moveL.moveLeft = false;
}


if ((Keyboard::isKeyPressed(Keyboard::Up))&&( G.Gravity == false ))
{ Impuls.Impuls = -18.4; !G.Gravity; };



if (Keyboard::isKeyPressed(Keyboard::V))
{ cout << X.x; }
if (Keyboard::isKeyPressed(Keyboard::B))
{ cout << Y.y; }

V.Name();

Texture map;
map.loadFromImage(map_image);
Sprite s_map;
s_map.setTexture(map);


Sprite s;
s.setTexture(t);
s.setPosition(X.x,Y.y);

V.Name();


window.clear(Color::Black);

for (int i = 0; i < H; i++)
for (int j = 0; j < W; j++)
{
if (TileMap[j] == 'B') s_map.setTextureRect(IntRect(0, 0, 32, 32));
if ((TileMap[j] == ' ')) continue;


s_map.setPosition(j 32 - SetX, i 32- SetY );

window.draw(s_map);
}

window.draw(s);
window.display();

};

return 0;
};
Аноним 08/03/16 Втр 00:30:09  679950
>>679919 (OP)
> Учу С++
Это твоя главная проблема.
Аноним 08/03/16 Втр 00:33:49  679953
>>679919 (OP)
> я задаю
Не задаешь. Прочитай еще раз главу про конструкторы или про инициализацию переменных (полей) класса.

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 2 | 1 | 2
Назад Вверх Каталог Обновить

Топ тредов