#include <SFML/Graphics.hpp>
using namespace sf;
int main()
{
RenderWindow Aplikacja( VideoMode( 600, 600, 32 ), "Aplikacaja" );
Shape kwadrat1;
kwadrat1.AddPoint( 100, 100, Color::Red, Color::Red );
kwadrat1.AddPoint( 100, 200, Color::Red, Color::Red );
kwadrat1.AddPoint( 200, 200, Color::Red, Color::Red );
kwadrat1.AddPoint( 200, 100, Color::Red, Color::Red );
float x1 = 100, y1 = 100;
Sprite trawa, powietrze;
Image obraz1, obraz2;
obraz1.LoadFromFile( "trawa.png" );
obraz2.LoadFromFile( "powietrze.png" );
trawa.SetImage( obraz1 );
powietrze.SetImage( obraz2 );
int szer = 40;
int wys = 40;
int mapa[ 10 ][ 10 ] =
{
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
};
while( Aplikacja.IsOpened() )
{
Event zdarzenie;
while( Aplikacja.GetEvent( zdarzenie ) )
{
if( zdarzenie.Type == Event::Closed )
Aplikacja.Close();
}
const Input & sterowanie = Aplikacja.GetInput();
if( sterowanie.IsKeyDown( Key::Right ) )
{
kwadrat1.Move( 0.2, 0 );
x1 += 0.2;
}
if( sterowanie.IsKeyDown( Key::Left ) )
{
kwadrat1.Move( - 0.2, 0 );
x1 -= 0.2;
}
if( sterowanie.IsKeyDown( Key::Up ) )
{
kwadrat1.Move( 0, 0.2 );
y1 += 0.2;
}
if( sterowanie.IsKeyDown( Key::Down ) )
{
kwadrat1.Move( 0, - 0.2 );
y1 -= 0.2;
}
Aplikacja.Clear( Color( 0, 0, 0 ) );
for( int i = 0; i < 10; i++ )
{
for( int j = 0; j < 10; j++ )
{
if( mapa[ j ][ i ] == 2 )
{
powietrze.SetPosition( i * szer, j * wys );
Aplikacja.Draw( powietrze );
}
if( mapa[ j ][ i ] == 1 )
{
trawa.SetPosition( i * szer, j * wys );
Aplikacja.Draw( trawa );
}
}
}
Aplikacja.Draw( kwadrat1 );
Aplikacja.Display();
}
return 0;
}