Dodano w miare sensowne poruszanie sie tla i muzyke, do zrobienia lepsze tlo
This commit is contained in:
37
main.cpp
37
main.cpp
@@ -4,6 +4,8 @@
|
||||
#include "SFML/Graphics.hpp"
|
||||
#include "headers/Player.h"
|
||||
#include "headers/Bullet.h"
|
||||
#include "headers/Background.h"
|
||||
#include "headers/AudioManager.h"
|
||||
|
||||
int main()
|
||||
{
|
||||
@@ -12,9 +14,18 @@ int main()
|
||||
window.setVerticalSyncEnabled(true);
|
||||
window.setFramerateLimit(60);
|
||||
|
||||
sf::Texture backgroundTexture;
|
||||
backgroundTexture.loadFromFile("../assets/img/space.jpg"); // wczytywanie tła
|
||||
sf::Sprite backgroundSprite(backgroundTexture); // tworzenie tła
|
||||
Background background("../assets/img/space.jpg", 2.0f); //tutaj predkosc tla, mozna zwiekszyc jak za wolno
|
||||
|
||||
|
||||
AudioManager audioManager;
|
||||
if (!audioManager.loadBackgroundMusic("../assets/music/background.ogg")) {
|
||||
return -1;
|
||||
}
|
||||
audioManager.playBackgroundMusic();
|
||||
|
||||
audioManager.loadSoundEffect("shoot", "../assets/sounds/shoot.ogg");
|
||||
audioManager.loadSoundEffect("shoot_alt", "../assets/sounds/shoot_alt.ogg");
|
||||
|
||||
|
||||
Player ship(240,650, "../assets/ship/Dreadnought-Base.png"); // tworzenie statku
|
||||
ship.setMovingSpeed(8);
|
||||
@@ -23,8 +34,6 @@ int main()
|
||||
while (window.isOpen()) {
|
||||
window.clear();
|
||||
|
||||
window.draw(backgroundSprite); // narysuj tło
|
||||
|
||||
// Tu są handlowane eventy
|
||||
sf::Event event{};
|
||||
while (window.pollEvent(event)) {
|
||||
@@ -35,16 +44,21 @@ int main()
|
||||
}
|
||||
if(sf::Keyboard::isKeyPressed(sf::Keyboard::Space)) {
|
||||
ship.shoot();
|
||||
audioManager.playSoundEffect("shoot");
|
||||
}
|
||||
}
|
||||
|
||||
if(event.type == sf::Event::MouseButtonPressed) {
|
||||
if(event.mouseButton.button == sf::Mouse::Left)
|
||||
if(event.mouseButton.button == sf::Mouse::Left) {
|
||||
ship.shoot();
|
||||
else
|
||||
audioManager.playSoundEffect("shoot", 70.f); // Odtworzenie dźwięku wystrzału
|
||||
} else {
|
||||
ship.alternate_shoot();
|
||||
audioManager.playSoundEffect("shoot_alt", 70.f); // Odtworzenie dźwięku dla alternatywnego strzału
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(sf::Keyboard::isKeyPressed(sf::Keyboard::A)) {
|
||||
if(ship.getPosition().x > -10) {
|
||||
ship.moveLeft();
|
||||
@@ -71,6 +85,15 @@ int main()
|
||||
window.draw(bullet.getSprite());
|
||||
}
|
||||
|
||||
// tło
|
||||
background.update();
|
||||
background.draw(window);
|
||||
|
||||
for (auto& bullet : ship.getBullets()) {
|
||||
bullet.update();
|
||||
window.draw(bullet.getSprite());
|
||||
}
|
||||
|
||||
ship.updateBullets();
|
||||
window.draw(ship.getSprite());
|
||||
window.display();
|
||||
|
||||
Reference in New Issue
Block a user