Jurek Temat założony przez niniejszego użytkownika |
sfml » 2012-12-16 00:21:23 mam kod podzieliem go na pliki w pliku glownym wywoluje funkcje a winnym pliku tworze funkcje aby ludek chodzil i nie chodzi nie wyskakuje blad jak skopiuje plik w ktorym jest funkcja do glownego to ludek chodzi dobrze co robie zle? jakies pomysly? Ludek reaguje na polecenia ale nie chodzi chyba ze skopiuje zawartosc funkcji do glownego pliku int main |
|
SeaMonster131 |
» 2012-12-16 11:50:59 Pokaż kod to pomożemy. |
|
Jurek Temat założony przez niniejszego użytkownika |
» 2012-12-16 12:07:44 Plik chodzenia Walk.cpp #include<sfml/system.hpp> #include<sfml/window.hpp> #include<sfml/graphics.hpp>
void Walk( sf::RenderWindow & Okno, sf::Sprite & Hero, sf::Vector2f & HeroPosition, sf::Vector2f & GoTo ) { HeroPosition = Hero.GetPosition(); if( HeroPosition.x > GoTo.x ) { if( HeroPosition.y == GoTo.y ) { Hero.Move( - 1, 0 ); } if( HeroPosition.y > GoTo.y ) { Hero.Move( - 1, - 1 ); } if( HeroPosition.y < GoTo.y ) { Hero.Move( - 1, + 1 ); } } if( HeroPosition.x < GoTo.x ) { if( HeroPosition.y == GoTo.y ) { Hero.Move( + 1, 0 ); } if( HeroPosition.y > GoTo.y ) { Hero.Move( + 1, - 1 ); } if( HeroPosition.y < GoTo.y ) { Hero.Move( + 1, + 1 ); } } if( HeroPosition.x == GoTo.x ) { if( HeroPosition.y > GoTo.y ) { Hero.Move( 0, - 1 ); } if( HeroPosition.y < GoTo.y ) { Hero.Move( 0, + 1 ); } if( HeroPosition.y == GoTo.y ) { Hero.Move( 0, 0 ); } } } Plik Hero.cpp #include<sfml/system.hpp> #include<sfml/window.hpp> #include<sfml/graphics.hpp> #include "IsHSelected.cpp" #include "Walk.cpp"
void HHero( sf::RenderWindow & Okno, sf::Vector2f & HeroPosition, sf::Vector2f & MousePosition, bool & MouseLeft, int & IsHeroSelected, bool & MouseRight, sf::Vector2f & GoTo ) { sf::Image Hero1, Hero1P; Hero1.LoadFromFile( "Hero.png" ); Hero1P.LoadFromFile( "HeroP.png" ); sf::Sprite Hero; Hero.SetCenter( Hero1.GetWidth() / 2, Hero1.GetHeight() / 2 ); Hero.SetPosition( Hero1.GetWidth() / 2, Hero1.GetHeight() / 2 ); if( GoTo.x == 0 and GoTo.y == 0 ) { Hero.SetPosition( HeroPosition ); } if( GoTo.x != 0 and GoTo.y != 0 ) { Walk( Okno, Hero, HeroPosition, GoTo ); } if( IsHeroSelected == 0 ) { Hero.SetImage( Hero1 ); } if( IsHeroSelected == 1 ) { Hero.SetImage( Hero1P ); } IsHSelected( Okno, MousePosition, Hero, Hero1, Hero1P, MouseLeft, IsHeroSelected ); if( IsHeroSelected == 1 && MouseRight == 1 ) { GoTo.x = MousePosition.x; GoTo.y = MousePosition.y; } Okno.Draw( Hero ); }
Plik glowny main #include<sfml/system.hpp> #include<sfml/window.hpp> #include<sfml/graphics.hpp>
#include "Mouse.cpp" #include "Kajko.cpp"
#include <iostream>
using namespace std;
int main() { int IsHeroSelected = 0; sf::Vector2f GoTo( 0, 0 ); sf::Vector2f MousePosition, BasicPositionHero1( 100, 100 ); bool MouseLeft = 0, MouseRight = 0; int Chapter = 0, Mission = 1, Map = 1; sf::Event Koniec; sf::RenderWindow Okno( sf::VideoMode( 1024, 768, 32 ), "SFML Graphics" ); Okno.SetFramerateLimit( 60 ); while( Okno.IsOpened() ) { while( Okno.GetEvent( Koniec ) ) { if( Koniec.Type == sf::Event::KeyPressed && Koniec.Key.Code == sf::Key::F1 ) Okno.Close(); } MouseF( Okno, MousePosition, MouseLeft, MouseRight ); Okno.Clear(); HHero( Okno, BasicPositionHero1, MousePosition, MouseLeft, IsHeroSelected, MouseRight, GoTo ); Okno.Display(); } return 0; } Jak skopiuje zawartosc pliku hero i walk do main to wszystko dziala, a jak proboje zmusic ludzika do chodzenia wywolujac funkcje to nie chodzi reaguje na klikniecie myszki ale nie chodzi troszke sie przesuwa tylko moge go zaznaczac odznaczac ale nie chodzi |
|
Jurek Temat założony przez niniejszego użytkownika |
Inne pliki » 2012-12-16 12:25:09 mam jescse dwa pliki mouse sprawdza polozenie myszy i czy wcisniete sa przyciski myszy, pli is selected sprawdza polozenie myszy wzgledem bohatera i czy wcisniety jest lewy przycisk IsSelected sluzy do zaznaczania |
|
hincu |
» 2012-12-16 12:59:38 przeczytales caly kurs cpp? jesli nie to wroc i zapoznaj sie z calym, zapoznaj sie z klasami/strukturami, bo te twoje pisanie funkcji w osobnych plikach nie ma ani ladu ani skladu
@edit, nastepnym razem edytuj post a nie robisz bezsensowny spam |
|
SeaMonster131 |
» 2012-12-16 14:13:58 if( GoTo.x == 0 and GoTo.y == 0 ) { Hero.SetPosition( HeroPosition ); } if( GoTo.x != 0 and GoTo.y != 0 ) { Walk( Okno, Hero, HeroPosition, GoTo ); }
and ? Raczej chodziło Ci o && . |
|
Jurek Temat założony przez niniejszego użytkownika |
» 2012-12-16 14:36:24 Tak chodzilo mi o && W jednej ksiazce bylo napisane ze zamiast && uzywac and a zamiast || mozna uzyc or zamienilem i wciaz nie dziala Gdzies mam blad nie wiem gdzie |
|
Jurek Temat założony przez niniejszego użytkownika |
» 2012-12-16 14:40:35 Nie umiem robic obiektow w sfml na razie, umiem je troche robic w c++ tylko najpierw tworzac klase class a potem dodajac obiekty Chcialem te pliki walk, mouse, ishselected uzywac dla innych postaci tez aby kod byl krotki i dzialal w miare sprawnie w main chcialem tylko wywolywac funkcie |
|
« 1 » 2 |