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

Jak odwołać się w module do zmiennej tworzonej w main?

Ostatnio zmodyfikowano 2012-04-27 20:57
Autor Wiadomość
Virpi
Temat założony przez niniejszego użytkownika
Jak odwołać się w module do zmiennej tworzonej w main?
» 2012-04-27 20:50:39
Witam. Mój problem polega na tym, że przy użyciu SFML tworzę w mainie zmienną sf::Event zdarzenie, której wartość odczytuję w pętli while i teraz od rodzaju zdarzenia zaliezy to, co stanie sięw programie. I tak np. w module z klasą CAkwarium mam zmianę poziomu wody, jednak nie wiem, jak w funkcji void CAkwarium::ch_water_lvl() mogę odwołać sie do tej zmiennej tworzonej w mainie. Oto kod:

C/C++
#include <iostream>

#include "CAkwarium.h"

using namespace std;


int main()
{
    sf::Window oknoAplikacji( sf::VideoMode( 800, 600, 32 ), "AKWARIUM" );
    sf::Event zdarzenie;
   
    while( 1 )
    {
        oknoAplikacji.GetEvent( zdarzenie );
       
       
    }
    return 0;
}

#ifndef CAKWARIUM_H
#define CAKWARIUM_H

#include "CElement_gry.h"
#include <SFML/Graphics.hpp>


class CAkwarium
{
public:
    CAkwarium();
    virtual ~CAkwarium();
    void ch_water_lvl();
    void r_water_lvl();
    void ch_purity();
    void r_purity();
    void add_item();
    int visible_water_lvl;
    int visible_purity;
    CElement_gry * wsk;
protected:
private:
    int water_lvl;
    int purity;
};

#endif // CAKWARIUM_H



#include "CAkwarium.h"

void CAkwarium::ch_water_lvl() // zmiana poziomu wody w akwarium
{
    if( zdarzenie.Key.Code == sf::Key::W ) // klawisz "w"
    {
        water_lvl++;
    }
    else
    {
        if( 1 ) // klawisz "s"
        {
            water_lvl--;
        }
    }
}

Wkleiłem tylko ważne fragmenty kodu. Reszty nie przerabiałem, bo będzie polegała na tym samym. Bardzo proszę o podpowiedź.
P-55488
SeaMonster131
» 2012-04-27 20:57:06
Daj
sf::Event
 jako argument tej metody.
P-55489
« 1 »
  Strona 1 z 1