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

SFML mapa kafelkowa, kod do sprawdzenia i poprawy.

Ostatnio zmodyfikowano 2011-08-17 20:51
Autor Wiadomość
RoinarN
Temat założony przez niniejszego użytkownika
» 2011-08-17 20:13:16
teraz mam poprawiłem trochę, i mam 33, połowa twierdzi że nie może przekonwertować ze Sprite, do int...
Druga połowa że nie ma ;
P-39363
m4tx
» 2011-08-17 20:15:36
Ze Sprite do int? Lol...

Pokaż ten kod co teraz masz.
P-39364
Elaine
» 2011-08-17 20:16:38
2. Musisz w każdej linijce walnąć klamry, czyli np:
C/C++
{ 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 },
Jesteś pewien, że musi?
P-39365
RoinarN
Temat założony przez niniejszego użytkownika
» 2011-08-17 20:17:40
C/C++
#include <SFML/Graphics.hpp>

using namespace sf;

int szerokosc_kafla = 32, wysokosc_kafla = 32;

int map_x, map_y;

int main()
{
    RenderWindow plansza( VideoMode( 800, 600, 32 ), "Plansza" );
    plansza.SetFramerateLimit( 120 );
   
    Image bricks;
    bricks.LoadFromFile( "bricks.gif" );
    Sprite spr1;
    spr1.SetImage( bricks );
   
    Image kafelek1;
    kafelek1.LoadFromFile( "1.jpg" );
    Sprite spr2;
    spr2.SetImage( kafelek1 );
   
    Image kafelek2;
    kafelek2.LoadFromFile( "2.jpg" );
    Sprite spr3;
    spr3.SetImage( kafelek2 );
   
    int mapa[ 20 ][ 20 ] =
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 };
   
    while( plansza.IsOpened() )
    {
        Event zdarzenie;
        while( plansza.GetEvent( zdarzenie ) )
        {
            if( zdarzenie.Type == Event::Closed )
                 plansza.Close();
           
        }
    }
   
    plansza.Clear( Color( 255, 0, 0 ) );
    plansza.Draw( mapa() );
    plansza.Display();
}
@UP: chyba muszę bo bez tego to pokazuje spooro więcej błędów
P-39366
m4tx
» 2011-08-17 20:21:03
Jesteś pewien, że musi?
Tak.
warning: missing braces around initializer for ‘int [20]’


@RoinarN może zamień
int mapa[ 20 ][ 20 ]
 na
Sprite mapa[ 20 ][ 20 ]
I tak btw., ujmij całość w klamrach:
C/C++
Sprite mapa[ 20 ][ 20 ] = {
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2, spr2 },
    { spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1, spr1 },
    { spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3, spr3 } };

@down, jestem tego samego zdania...
P-39367
pekfos
» 2011-08-17 20:23:36
Przerób podstawy programowania..
@up ubiegłeś mnie :P
P-39368
RoinarN
Temat założony przez niniejszego użytkownika
» 2011-08-17 20:25:52
Zamieniłem int a Sprite przy definicji mapy, było 50błędów, połowa mniej, usunąłem przecinki zza klamr, i dodałem przed klamry, zrobiło się 20...
P-39370
Elaine
» 2011-08-17 20:26:36
Jesteś pewien, że musi?
Tak.
warning: missing braces around initializer for ‘int [20]’
To jest ostrzeżenie, nie błąd. Kompilator chce tylko powiedzieć, że z tymi klamrami jest ładniej. Wiesz, że GCC można przycisnąć tak, że sprawdzenie równości dwóch liczb zmiennoprzecinkowych operatorem == skończy się ostrzeżeniem, że to jest "niebezpieczne"? I wiesz co? To wcale nie oznacza, że nie wolno porównywać dwóch liczb zmiennoprzecinkowych operatorem ==.
P-39371
1 « 2 » 3 4
Poprzednia strona Strona 2 z 4 Następna strona