LolikZabijaka Opublikowano 20 Maja 2013 Udostępnij Opublikowano 20 Maja 2013 Cześć, zrobiłem w swojej grze następujący motyw, przejeżdżające w nocy samochody, to działa. Ale chciałem dać, żeby świeciły światłami, teoretycznie też działa, tylko jest jeden problem. Otóż kiedy samochód przejeżdża, światło nie zanika, tylko tworzy za nim taką smugę, która rozświetla room. Używam tego przykładu na światło. Event tworzenia światła dałem w step. Co zrobiłem nie tak ? Chodzi o to, aby światło jechało z pojazdem, ale żeby było krótkie i nie rozświetlało obszaru na stałe, tylko na ten czas to przejeżdża samochód Taki kod dałem przy samochodzie: GML //Przyklad latarki na takim czyms. ins = instance_create(x, y, oLight); //Tworzymy obiekt swiatla, jego id pobieramy do zmiennej ins, aby moc go kontrolowac ins.spr = s_swiat_lewo; //Ustawiamy jego sprite na sLaareczka ins.color = c_white; //Kolor na lekkoniebieski ins.cAlpha = 1; //Intensywnosc koloru na 1 (max)</span> I światło zostaje w tyle, w miejscu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Danielus Opublikowano 21 Maja 2013 Udostępnij Opublikowano 21 Maja 2013 Nie znam przykładu, ale jeśli ten kod masz w stepie, to co step tworzysz nowy obiekt, jeśli ich potem nie niszczysz to no oczywiście zostaja z tyłu. Masz dwa rozwiązania( w zależności o co chodzi w tym przykładzie ): Albo kasujesz te obiekty po krotkiej chwili, albo robisz tylko jeden obiekt i przyczepiasz go do auta tak by ciagle poruszał sie razem z autem Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 21 Maja 2013 Administratorzy Udostępnij Opublikowano 21 Maja 2013 ja bym to drugie zrobił. robis tylko ins.x = car.x, ins.y = car.y (dodajesz kąty lenghtdirami) i działa Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 21 Maja 2013 Autor Udostępnij Opublikowano 21 Maja 2013 Dobra, tylko jaki to kod z tym przyczepianiem, dałem instance_create, ale zostaje w tyle, co dać, żeby samochód ciągnął światło ze sobą. Tak to wygląda u mnie. https://gmclan.org/up2808_12_swiatla.html Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 21 Maja 2013 Udostępnij Opublikowano 21 Maja 2013 samochod niecognie sviatlo za sobo, ale nierobi CLEAR dla sviatla v surface. GML // object oCtrlLight event STEP: surface_set_target(global.sfShadow); { draw_clear_alpha($dddddd, 1); draw_set_blend_mode(bm_subtract); { with(oLight) { draw_clear_alpha($dddddd, 1); // TUTAJ NOWY CLEAR draw_sprite_ext(spr, 0, x-view_xview[0], y-view_yview[0], sclX, sclY, dir, make_color_rgb(alpha*255, alpha*255, alpha*255), 1); } } draw_set_blend_mode(bm_normal); draw_set_blend_mode(bm_add); { with(oLight) { if(cAlpha > 0) { draw_sprite_ext(spr, 0, x-view_xview[0], y-view_yview[0], sclX, sclY, dir, $ffffff-color, cAlpha); } } } draw_set_blend_mode(bm_normal); } surface_reset_target(); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 21 Maja 2013 Autor Udostępnij Opublikowano 21 Maja 2013 Teoretycznie działa, tylko jest jeden myk, obiekty, które wcześniej świeciły, przestały wytwarzać światło. W prostych słowach, najwyraźniej tylko jeden obiekt na raz może świecić. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 21 Maja 2013 Udostępnij Opublikowano 21 Maja 2013 Cofnij zmiany i zmodyfikuj obiekt obj_sam_postronny tak: GML Information about object: obj_sam_postronny Create Event: set the horizontal speed to -25 execute code: sprite_index=choose(spr_f1,spr_m1,sprite1) //Przyklad latarki na takim czyms. ins = instance_create(x, y, oLight); //Tworzymy obiekt swiatla, jego id pobieramy do zmiennej ins, aby moc go kontrolowac ins.spr = sLatareczka; //Ustawiamy jego sprite na sLaareczka ins.color = c_white; //Kolor na lekkoniebieski ins.cAlpha = 1; //Intensywnosc koloru na 1 (max) Step Event: execute code: ins.x = x; ins.y = y; Other Event: Outside Room: execute code: with ( ins ) instance_destroy(); destroy the instance Czyli, przenieś kod na tworzenie światła ze stepa do create. A do stepa daj kod na przesuwanie światła i do room_outside kod na usuwanie światła Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 21 Maja 2013 Autor Udostępnij Opublikowano 21 Maja 2013 Dzięki ziomuś, teraz jest jak trza :D Ale mam jeszcze jedno pytanko. Mam takie zdarzenie i dzieje się coś dziwnego, otóż obiekt, zamiast się przemienić, znika, dodam że kiedy zmieniam room i cofam się tam, to obiekt jest już zmieniony, tylko w chwili zdarzenia znika całkowicie. O co biega? Tu jest kod: STEP NPC : GML if global.najebany = true { instance_change(o_najeb,true) with o_najeb{ image_speed= (0.2) } } KOLIZJA Z GRACZEM: GML if keyboard_check(vk_control){ add_text('Stach - Czego?') add_text('Ptakowsky - Kupie ci to wino.') add_text('Stach - Yyyy, dobra, masz tu piatke, kup dwa "Byki"') add_text('Ptakowsky - Ok.') script_execute(Inventory_Add,8,obj_5zl,"5 PLN",true) global.najebany=true global.piatka=true instance_change(o_najeb,true) add_text('Ptakowsky - Ale zgon, pewnie znow wyladuje na wytrzezwialce.') } Już nie ważne, naprawiłem to, można zamknąć. 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ę