[sfml] przesowanie itemow do ekwipunku
Ostatnio zmodyfikowano 2012-03-28 17:02
hincu Temat założony przez niniejszego użytkownika |
[sfml] przesowanie itemow do ekwipunku » 2012-03-27 20:00:22 siema : P pojawil sie kolejny problem przy grze, to przejde do sedna sprawy, mianowicie mam jakis tam item na ziemi i chce go przeniesc( przesowajac item na dany slot w ekwipunku ) no i tu pojawil sie problem nie mam zielonego pojecia jak zrobic aby przedmiot przesowal sie razem z kursorem, jakies pomysly? probowalem sie bawic z setcenter lecz bez dobrych efektow |
|
kampar |
» 2012-03-27 20:08:32 po prostu ustawiasz pozycję itemu na taką samą jak pozycja myszy |
|
hincu Temat założony przez niniejszego użytkownika |
» 2012-03-27 20:27:49 wlasnie problem polega na tym ze nie mozna tak z prostego powodu, item posiada swoj center i to wzgledem niego sie przesowa, tak wiec najpierw musze znalezc sposob na to aby przy kliknieciu pozycja myszki przyjela taki center jaka byla pozycja myszki podczas klikniecia a po przesunieciu myszki dopiero zmieniac pozycje itemu. @EDIT udalo mi sie nastrugac cos takiego ale niestety nie dziala tak jak powinno : / i nie mam zielonego pojecia gdzie jest blad bool Item::MouseOnItem( const sf::Input & Mouse ) { if(( Mouse.GetMouseX() >= ItemGFX.GetPosition().x && Mouse.GetMouseX() < ItemGFX.GetPosition().x + Width ) &&( Mouse.GetMouseY() >= ItemGFX.GetPosition().y && Mouse.GetMouseY() < ItemGFX.GetPosition().y + Height ) ) return true; else return false; }
bool Item::MouseClickItem( const sf::Input & Mouse ) { if( MouseOnItem( Mouse ) && Mouse.IsMouseButtonDown( sf::Mouse::Left ) ) { return IsMove = true; } else { return IsMove = false; } }
void Item::MoveItem( const sf::Input & Mouse ) { if( MouseClickItem( Mouse ) && LastItemPos.x != Mouse.GetMouseX() && LastItemPos.y != Mouse.GetMouseY() && IsMove == true ) { ItemGFX.SetPosition( Mouse.GetMouseX(), Mouse.GetMouseY() ); } else ItemGFX.SetCenter( Width / 2, Height / 2 ); IsMove = false; } |
|
kampar |
» 2012-03-28 17:02:25 "nie działa tak jak powinno", czyli jak to teraz działa? |
|
« 1 » |