Besemir Temat założony przez niniejszego użytkownika |
» 2009-05-09 20:41:24 int ic_x = 75, ic_y = 75, ic_w = 75, ic_h = 75; bool is_mark = false; int pokaz_obrazek = 0; if( mouse_b == 1 ) { if(( mouse_x >= ic_x && mouse_x <= ic_x + ic_w ) &&( mouse_y >= ic_y && mouse_y <= ic_y + ic_h ) ) { if( is_mark == false ) is_mark = true; else if( is_mark == true ) is_mark = false; pokaz_obrazek++; } } if( pokaz_obrazek == 1 ) { masked_blit(( BITMAP * ) data[ krzyzyk_b ].dat, bufor, 0, 0, 75, 75,(( BITMAP * ) data[ krzyzyk_b ].dat )->w,(( BITMAP * ) data[ krzyzyk_b ].dat )->h ); }
Dziala tak samo :( zmienna pokaz_obrazek przyjmuje wartość 1 a jak spuszczę przycisk myszki z guzika to ta wartość się resetuje do 0, wiec obrazek wyświetla się tylko przy kliknięciu guzika a po spuszczeniu przycisku z guzika obrazek znika... :( Wie ktoś jak to rozwiązać?? @Pietrzuch masz na myśli dać sobie z tym spokój czy to jakaś nieznana mi funkcja w allegro? |
|
lynx |
» 2009-05-09 21:04:37 <<delete>> /edit: @Besemir - Pisząć delete nie miałem na myśli funkcji czy niczego takiego. <<delete>> - była wiadomość ale ją skasowałem. Za chwilkę napiszę Ci co poprawić aby efekt był taki jaki oczekujesz. :) Rozumiem że chcesz aby obrazek wyświetlał się od momentu klliknięcia. //edit2: Coś takiego mam dla Ciebie: bool is_mark_p1 = false; int ic_x = 75, ic_y = 75, ic_w = 75, ic_h = 75;
if( mouse_b == 1 ) { if(( mouse_x >= ic_x && mouse_x <= ic_x + ic_w ) &&( mouse_y >= ic_y && mouse_y <= ic_y + ic_h ) && is_mark_p1 != 1 ) { is_mark_p1 = true; } }
if( is_mark_p1 == 1 ) { masked_blit(( BITMAP * ) data[ krzyzyk_b ].dat, bufor, 0, 0, 75, 75,(( BITMAP * ) data[ krzyzyk_b ].dat )->w,(( BITMAP * ) data[ krzyzyk_b ].dat )->h ); }
///edit3: Zmieniłem nieco jeszcze kod. :) ////edit4: Przydałoby się tak samo wymiary i współrzędne przycisków posegregować ( tak jak is_mark_p1), a najlepiej zrobic do nich klasę (oczywście tylko jeżeli już czytałeś o klasach w jakimś kursie/książce). Ufff... ale edytowałem ten post. :P |
|
Besemir Temat założony przez niniejszego użytkownika |
» 2009-05-09 21:29:37 Ooo wielkie Ci dzięki.
/edit:
Może by dodać coś takiego do kursu? Przydało by się. |
|
lynx |
» 2009-05-09 21:36:50 Do kursu oczywiście można dodać tylko po co? Kurs powinień być kursem na dany temat, a nie zbiorem artykułów jak zrobic jedno czy drugie. Oczywiście jeżeli zostanie utworzony dział artykuły to jestem pewien, że coś w tym stylu się pojawi. :) |
|
Besemir Temat założony przez niniejszego użytkownika |
» 2009-05-09 22:01:19 No to pytanie do kodu: 1. Skąd wziołes zmienna "mouse_b"; ( Było wcześniej, ale chce wiedzieć) 2. Czy korzystanie ze zmiennej "mouse_b" w dalszej części kodu jest możliwe? Chodzi o to ze chce z nią zrobić 9 guzików, i czy te guziki nie będą zależne od pierwszego? |
|
lynx |
» 2009-05-09 22:05:34 1. No jak to skąd, z allegro. mouse_b jest w Allegro i udostępnia nam informacje o myszce, a dokładniej o przyciskach. Poczytaj2. Tak jest możliwe. Poczytaj artykuł jakie informacje zawiera ta zmienna. Nie będą zależne pod warunkiem, że zrobisz dla każdego przycisku odpowiednie zmienne ( czyli współrzędne, is_mark_X ) |
|
Besemir Temat założony przez niniejszego użytkownika |
» 2009-05-10 08:54:15 << duplikat >> |
|
Besemir Temat założony przez niniejszego użytkownika |
» 2009-05-10 08:57:17 Ehhh... Znowu mam problem :( Przyciski juz zrobione ale cos tu jest nie tak ;/ if( mouse_b == 1 ) { if(( mouse_x >= 75 && mouse_x <= 75 + 75 ) &&( mouse_y >= 75 && mouse_y <= 75 + 75 ) && pole_1 != 1 ) { pole_1 = true; } } if( pole_1 == 1 ) { if( toczyto == 0 ) { masked_blit(( BITMAP * ) data[ kolko_b ].dat, bufor, 0, 0, 75, 75,(( BITMAP * ) data[ krzyzyk_b ].dat )->w,(( BITMAP * ) data[ krzyzyk_b ].dat )->h ); toczyto = 1; } else { masked_blit(( BITMAP * ) data[ krzyzyk_b ].dat, bufor, 0, 0, 75, 75,(( BITMAP * ) data[ krzyzyk_b ].dat )->w,(( BITMAP * ) data[ krzyzyk_b ].dat )->h ); toczyto = 0; } }
Tak wyglada jeden z przyciskow.( Jak by co to "toczyto" bylo deklarowane na początku z wartoscia 0) Teraz robie takie coś co pozwoli graczowi na granie nie tylko kółkiem:D Coś tutaj jest nie tak ponieważ jak kliknę na guzik to zamiast pojawienia się tam obrazku "kolko", pojawia się na przemian obrazek "kolko" z "krzyzyk", jeśli później kliknę na guzik nr 2 to wszytko się uspokoi i będzie tak jak ma być, a jeśli jeszcze później kliknę na guzik nr 3 to wszystkie obrazki zwariują i będą pojawiać się na przemian tak jak po kliknięciu guzika nr 1. http://www.youtube.com/watch?v=ZWkoPZd0EBA PS. Filmik jest jaki jest, nie miałem za dużo czasu. PPS. FPS jest mały wiec nie widać dokładnie ale coś tam jest :D /edit: pozostałe guziki nie maja tej funkcji wiec ona tylko wyświetlają krzyżyk, guzik ktore maja funkcje 1,2,3 |
|
1 « 2 » 3 |