Witam
Usiluje napisac gre w SFML. Napisalem sobie 2 klasy: 1 odp za wyswietlanie okna, a druga za poruszanie sie postaci, a w przyszlosci za kolizje. Lecz mam niewielki problem. Jak moge dziedziczyc element Windows klasy sf::RenderWindow z klasy Okno w klasie Gracz, aby moc uzyc funkcji Windows.draw(sprite(sprite to tekstura gracza poruszana przeze mnie)). Pozdrawiam
0
0
Mi to wygląda na brak rozróżnienia dziedziczenia a udostępnienie referencji.
0
wiesz moglem to zle nazwac ale z opisu wskazuje na udostepnianie referencji?
0
Jak chcesz ogólnie to jakiś kurs poczytaj, jak chcesz konkretnie to podaj kod.
Zawsze możesz zgłosić się na forum wróżbitów ...
0
window.h
#ifndef KLASA_H_
#define KLASA_H_
class Game : public player
{
public:
void start();
sf::RenderWindow windows;
sf::Event event;
sf::Sprite sprite;
};
#endif
window.cpp
#include <SFML/Graphics.hpp>
#include "window.h"
#include "player.h"
void Game::start()
{
windows.create(sf::VideoMode(800, 600), "Games");
while (windows.isOpen())
{
while (windows.pollEvent(event))
{
switch (event.type)
{
case sf::Event::Closed:
windows.close();
break;
}
windows.display();
windows.clear();
}
}
}
player.h
#ifndef KLASA_H_
#define KLASA_H_
class player
{
public:
sf::Texture tekstura;
sf::Sprite sprite;
void postac();
};
#endif
player.cpp
#include <SFML\Graphics.hpp>
#include "window.h"
void player::postac()
{
tekstura.loadFromFile("image.png");
sprite.setTexture(tekstura);
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Right))
{
sprite.move(5, 0);
}
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Down))
{
sprite.move(0, 5);
}
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Up))
{
sprite.move(0, -5);
}
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Left))
{
sprite.move(-5, 0);
}
windows.draw(sprite)
}
core.cpp
#include <SFML\Graphics.hpp>
#include<iostream>
#include <string>
#include <fstream>
#include "window.h"
int main()
{
Game game;
game.start();
}
0
- W żadnym przypadku
Game
nie może dziedziczyć poplayer
- to tak jakby chcesz zagrać tak no to zaraz plansza zostanie przykręcona do ciebie śrubami (boleśnie i niewygodnie). - Zapoznaj się z pojęciem konstruktor
- W konstruktorze do
player
przekaż obiektGame
- Rozdziel porządnie funkcjonalności.
0
a moglbys troche bardziej mnie poinstruować
0
Liczysz na streszczenie dokumentacji czy kursu C++?
http://www.cplusplus.com/doc/tutorial/