Brox Opublikowano 10 Lutego 2011 Udostępnij Opublikowano 10 Lutego 2011 Siema! Mam podzielony ekran na 2 viewy i moje pytanie jest takie jak zrobić, że jak myszka jest w pierwszym viewie to np. jakaś tam zmienna zmienia wartość na true, a jak myszka jest w drugim viewie do to ta zmienna zmienia wartość na false? Jest w ogóle takie coś możliwe? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Elevator Opublikowano 10 Lutego 2011 Udostępnij Opublikowano 10 Lutego 2011 jesli masz ekran podzielony na 2 viewy (np jak w jakiejs grze na 2 graczy), gdzie jeden view znajduje sie na gorze, a drugi na dole to (wartosci podalem przykladnie) if mouse_x>100 then zmienna=false (jesli x kursora jest wieksze niz 100, wtedy zmienna=false) if mouse_x<100 then zmienna=true (jesli x kursora jest mniejsze niz 100, wtedy zmienna=true) wiec jesli viewy granicza ze soba na (podalem 100), to gdy myszka jest na gornym viewie zmienna=true, a gdy na dolnym wtedy zmienna=false Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Brox Opublikowano 10 Lutego 2011 Autor Udostępnij Opublikowano 10 Lutego 2011 Wiem o co Ci chodzi ale to tak nie działa :D nie wiem czy mnie zrozumiałeś czy nie ale nie o to mi chodziło. Pozycja myszki w każdym roomie jest inna, bo jak np. pierwszy view pokazuje początek mapy a drugi view pokazuje koniec mapy to pozycja myszki w każdym roomie będzie inna a nie tak jak mówisz, że pozycja myszki jest określona po przez położenie jej na oknie gry. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Elevator Opublikowano 10 Lutego 2011 Udostępnij Opublikowano 10 Lutego 2011 mozesz zrobic wielki, cały zacieniowany sprite wielkosci viewa, walnac go w jakis obj, ustawic zeby ten obj lazil za viewem, wtedy zrobic event mouse enter, a w nim walnac zmienna=true to samo z drugim viewem oczywiscie takze ustawic Depth tych obj tak, zeby byly pod wszystkimi obiektami (zeby byly niewidoczne, gdyby cieniowanie niestarczylo) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Brox Opublikowano 10 Lutego 2011 Autor Udostępnij Opublikowano 10 Lutego 2011 Nie wiem czy o to Ci chodzi, ale dajmy teraz tak, że te dwa viewy są w tej samej pozycji to przecież ten wielki kwadrat :D będzie w pierwszym viewie jak i w drugim ;p, czyli raczej nie sprawdzi w którym viewie jest myszka. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Elevator Opublikowano 10 Lutego 2011 Udostępnij Opublikowano 10 Lutego 2011 jesli viewy beda na sobie, to kwadrat z false i kwadrat z true beda na sobie takze co za tym idzie, kwadrat(a raczej obj) ktory jest wyzej(wedlug depth), bedzie tym, ktory bedzie reagowal na to co masz w mouse enter. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 10 Lutego 2011 Udostępnij Opublikowano 10 Lutego 2011 o ile się tak da (a nie mam pojęcia czy się da) To zrób jeden wielki room i wwal do niego dwa małe (czyli ekran każdego gracza czy coś) i wtedy oblicz pozycję myszki dla tego roomu dużego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rafik01 Opublikowano 10 Lutego 2011 Udostępnij Opublikowano 10 Lutego 2011 A może zwyczajnie przez jakiegoś DLL'a których są setki? Coś od okienek :P. Pobierasz pozycję myszki względem pozycji danego okna :P. Wtedy dajesz: GML if ( ( pozycja_x_myszki - pozycja_x_okna ) < view_width[0] ) { global.zmienna_odpowiadajaca_za_wybrany_view = 0; } else if ( ( pozycja_x_myszki - pozycja_x_okna ) > view_width[0] ) { global.zmienna_odpowiadajaca_za_wybrany_view = 1; } Dawno w GMie nie używałem viewów to nie pamiętam wszystkich nazw. Jednak coś podobnego spróbuj zrobić. A jak korzystać z DLLi, jaki wybrać itp. to już na forum wertowane było wielokrotnie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 10 Lutego 2011 Udostępnij Opublikowano 10 Lutego 2011 Kombinujecie... Prosty przykład: GML var _vx1, _vx2; _vx1 = window_view_mouse_get_x( 0 ) - view_xview[0]; _vx2 = window_view_mouse_get_x( 1 ) - view_xview[1]; if( _vx1 >= 0 && _vx1 <= 320 ) text = "View 1 ["+string(_vx1)+"]"; else if( _vx2 >= 0 && _vx2 <= 320 ) text = "View 2 ["+string(_vx2)+"]"; else text = "N/A"; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się