Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Funkcja zawarta w funkcji innej klasy

Ostatnio zmodyfikowano 2011-07-22 12:30
Autor Wiadomość
diego997
Temat założony przez niniejszego użytkownika
Funkcja zawarta w funkcji innej klasy
» 2011-07-22 12:07:16
C/C++
class Enemy
{
   
public:
    sf::Shape Alien;
   
   
};

class EnemyBullet
{
   
public:
    sf::Shape Naboj;
    void tworzenie();
    void rdy();
    void strzal( Enemy * obcy );
   
   
};


void EnemyBullet::rdy()
{
    if( Naboj.GetPosition().x == - 30 )
    {
        strzal( this );
    }
   
   
}

void EnemyBullet::strzal( Enemy * obcy )
{
    Naboj.SetPosition( obcy->Alien.GetPosition().x, obcy->Alien.GetPosition().y );
}
Chciałem aby najpierw wykonywana była funkcja rdy() ktora sprawdza czy
pocisk znajduje sie na pozycji -30 (Przy tworzeniu pocisku tworzenie(),
zostanie on tam przeniesiony) jeżeli tak to(strzal();) czyli ustaw go w miejscu w ktorym
znajduje sie alien. Kod nie chce sie skompilować pewnie musiał bym coś przesłać
jakiś argument do rdy zapewne np. EnemyBullet kula rdy(&kula) ale nie wiem jak
to zdefiniować. Możecie mi pomóc 154 raz z kolei ;p?

P-36574
waxx
» 2011-07-22 12:13:52
Czemu pocisk strzela?

class Enemy {
sf::Vector2f position;

void Shoot(); //tu sprawdzasz czy moze enemy strzelic jak tak to stworzysz CBullet i w konstruktorze sobie przekazesz pozycje

};


class CBullet {
CBullet(sf::Vector2f position); //a tutaj ustawiasz pozycje...ofc dodasz sobie jeszcze zeby w konstruktorze jakis wektor kierunku podawac/kat czy cokolwiek


}
P-36575
diego997
Temat założony przez niniejszego użytkownika
» 2011-07-22 12:30:16
Zrobiłem to trochę inaczej


P.S w sumie racja czemu pocisk strzela ;p
P-36576
« 1 »
  Strona 1 z 1