В настоящее время я начал работать с SFML после изучения основ C ++. Я узнал о массивах, ссылках и обо всем, что предшествует им, но изо всех сил пытался понять концепцию использования классов. < /p>
В SFML я создал простую программу движения спрайта, но я хотел бы переместить эту информацию в класс (скажем, она будет называться «Игрок»). Я много испортил, но я не могу заставить его работать. Я хотел бы переместить все, что связано с игроком, в класс игроков, но мне нужно немного совета. < /p>
Какой правильный способ сделать это? (Пожалуйста, не говорите, вернитесь и узнайте о классах, вот где я хочу узнать о них!)#include
#include
#include
int main()
{
//character position
enum Direction{ Down, Left, Right, Up };
sf::Vector2i source(1, Down);
//window
sf::RenderWindow window(sf::VideoMode(1200, 700), "Testing");
window.setKeyRepeatEnabled(false);
//player character
sf::Texture pTexture;
sf::Sprite pSprite;
if(!pTexture.loadFromFile("image/playerSprite.png"))
std::cout = pTexture.getSize().x)
{
source.x = 0;
}
}
else if(sf::Keyboard::isKeyPressed(sf::Keyboard::Right)) //move right
{
source.y = Right;
pSprite.move(0.2, 0);
//animation
source.x++;
if(source.x * 32 >= pTexture.getSize().x)
{
source.x = 0;
}
}
else if(sf::Keyboard::isKeyPressed(sf::Keyboard::Left)) //move left
{
source.y = Left;
pSprite.move(-0.2, 0);
//animation
source.x++;
if(source.x * 32 >= pTexture.getSize().x)
{
source.x = 0;
}
}
pSprite.setTextureRect(sf::IntRect(source.x * 32, source.y * 32, 32, 32));
window.draw(pSprite);
window.display();
}
return 0;
}
Подробнее здесь: https://stackoverflow.com/questions/191 ... c-and-sfml
Как сделать свои собственные занятия с C ++ и SFML ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как мне структурировать приложение Java, куда мне поставить свои занятия?
Anonymous » » в форуме JAVA - 0 Ответы
- 2 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как добавить свои собственные аргументы в setup.py для компиляции cython и cpp?
Anonymous » » в форуме Python - 0 Ответы
- 22 Просмотры
-
Последнее сообщение Anonymous
-