Gość Adster Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Mam mały i zapewne banalny problem, który wynika z pewnością z mojego braku pomysłowości. Mianowicie chciałbym sprawdzić, jaka odległość dzieli obiekt a od najbliższego obiektu b, ale w lini prostej tzn. sprawdzać ma tylko, ile pikseli jest do obiektu, który znajduje się załóżmy najbliżej z tych, będących na tym samym y i znajdujących się na lewo od obiektu a oraz zapisywać zwróconą wartość do zmiennej xx dodając do niej 32. Z resztą warunków (prawo, góra, dół) to ja sobie już z pewnością poradzę... Schemat (xP) sprawdzania-sprawdza tylko odległość od b1, który znajduje się najbliżej w linii prostej i na lewo. b1<xxxxxxxxxxxxxxxxxxx <b2xxb<--------------------^a PS. Te obiekty, których obecność ma się sprawdzać są not-solid, czyli trzeba raczej korzystać np: z place_empty, jeżeli tego typu kod jest potrzebny... PS2. Sorry, że zadaję noobskie pytania, ale ja masterem w GM jednak jeszcze nie jestem :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Micanser Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Nie wiem czy dbrze cię rozumiem, ale czy nie wystarczy dopisać if y=obiektb.y ? (daj ten kod też przed zapisaniem) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Adster Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Trochę źle mnie zrozumiałeś...to o tym samym y (no właśnie-muszę poprawić :P ) jest tylko dopełnieniem sprawdzania najbliższego obiektu, znajdującego się na lewo i na tym samym y...będącego not-solid (czyli coś z place_empty będzie). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 a instance_nearst nie wystarcza :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Adster Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Niestety, ale nie-nie mam pomysłu na warunek sprawdzający odległość najbliższego obiektu będącego w tej samej linii y co gracz (niech będzie, że gracz), oraz znajdującego się na lewo od niego. Potrzebny mi jest dokładnie tak sprawdzany warunek. PS.instance_nearest sprawdza najbliższy obiekt (określonego typu), znajdujący się w ogóle najbliżej określonego x i y. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Micanser Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Teraz już zupełnie się pogubiłem. Chcesz aby do zmiennej xx zapisać odległość najbliższego obiektu który ma ten sam y i jest z lewej strony? if x.instance_nearest(x,y,obiekt) > x && instance_nearest(x,y,obiekt).y=y { //tutaj nie wiem jak zrobic (pewnie o to ci chodziło, ale nie jetsem pewien) } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 sprawdź czy własny y jest równy z tym najbliższym :P ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Adster Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 if x.instance_nearest(x,y,obiekt) > x && instance_nearest(x,y,obiekt).y=y Nie wiem, czy wypali...muszę sprawdzić i pokombinować. Powinienem to przekształcić na jakoś tak: (może to Wam pomoże) xx-=tutaj wynik odległości obiektu od gracza będącego na tym samym y co gracz oraz mającego x najbliższe graczowi (uwzględniając tylko te obiekty, które znajdują się "na lewo"). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 create: ex=instance_nearest(x,y,obiekt) if (y= ex) {rysuj=distance_to_point(ex,ex)} może tak ? ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Adster Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Dobra-ze szczątkowych informacji skompletowałem całość ;) Powinienem sobie poradzić... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Micanser Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 if x.instance_nearest(x,y,obiekt) > x && instance_nearest(x,y,obiekt).y=y Sorki zrobiłem błąd, powinno być bez x na początku if instance_nearest(x,y,obiekt).x > x && instance_nearest(x,y,obiekt).y=y Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Potem napisz jak ci wyszło bo tez jestem ciekaw :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Hanjuso Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 a moze cos takiego for(i=1;i<=500;i+=5) { _obj=instance_place(x+cos(degtorad(dir))*i,y-sin(degtorad(dir))*i,szukany) if _obj!=-4 break } w dir podajesz kierunek poszukiwan, w _obj bedzie id obiektu znalezionego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Adster Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 Działa jak należy, tylko muszę to jeszcze dokładnie "wpasować" w mój kod. ;) Dzięki wszystkim... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pablo1517 Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 przecież banał? Chodzi ci o sprawdzenie ile np w odległości po osi y jest pixeli do najbliższego obiektu? var naj,dist; naj=instance_nearest(x,y,obiekt); /* zapiszemy se do zmiennej tymczasowej id najblizszego obiektu gdzie "obiekt" to twoj cel */ if (naj.y>y) { dist=abs(naj.y)-abs(y); } if (naj.y<y) { dist=abs(y)-abs(naj.y); } /* gdzie dist jest odlegloscia w pixelach*/ Pisalem w pośpiechu wiec możliwe że źle Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość Adster Opublikowano 25 Kwietnia 2007 Udostępnij Opublikowano 25 Kwietnia 2007 przecież banał? Chodzi ci o sprawdzenie ile np w odległości po osi y jest pixeli do najbliższego obiektu? Niedokładnie-chodziło mi o to, ile jest po np: osi y obiektu a do najbliższego obiektu b będącego na tej osi i znajdującego się np: u góry. Twoja interpretacja zabrzmiała trochę inaczej... PS. Już sobie poradziłem dużo wcześniej, ale mimo wszystko dzięki za chęci.. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi