Skocz do zawartości

Zablokowane Sprite


karolo320

Rekomendowane odpowiedzi

@up:

<facepalm>

execute_string('while(sprite_exists(oczy'+string(w[0,1])+')){w[0,1]+=1}')

Zapętla się w[0,1]+=1 bo warunek sprite_exists(oczy'+string(w[0,1]) jest spełniony.Poza tym to jak dla mnie zawsze będzie się zapętlał bo się wartość warunku nie zmienia.

W execute_string chyba zmienne zewnętrzne nie działają(oprócz globalnych).

Odnośnik do komentarza
Udostępnij na innych stronach

Czemu sfacepalmowałeś Muczka?

 

if keyboard_check_pressed(ord('I'))

global.skrin=sprite_add_from_screen(0,view_xview,view_yview,640,480,0,0)

 

w drawie

draw_sprite(global.skrin,-1,view_xview,view_yview)

 

ale nic sie nie wyswietla, czemu?

 

E:wyswietla sie maly czarny kwadracik w lewym gornym

Odnośnik do komentarza
Udostępnij na innych stronach

Dzień dobry, ja jeszcze raz(jako, iż moje pytanie spadło z nowosci).

 

Jak otwieram menu, to mi deaktywuje wszystkie obiekty, ale chcę miec skrina w tle. Zorientowalem sie, ze trzeba uzyc sprite_add_from_screen, lub sprite_create_from_screen, lecz nie wiem jak :P Chciałbym jeszcze, żeby był rozmaziany(tak jak w minecrafcie na poczatku), ale to chyba trudniejsze bedzie. Z gory dzieki :)

 

E: prosze o nie banowanie za doubleposta

Odnośnik do komentarza
Udostępnij na innych stronach

@adam014:

<facepalm>

Zauważ, jak działą ta pętla. Jeśli istnieje sprite ('oczy'+string(x)), to wartość x wzrasta o 1, więc nie sprawdza cały czas tego samego, zatrzyma się, gdy sprite o nazwie 'oczy' z numerem x nie istnieje. A to na pewno nastąpi.

No i w execute_string działa wszystko, co działa w GML-u.

 

@topic:

Zanim zdezaktywujesz menu, przerzuć rysowanie na przygotowanego wcześniej surface'a o wielkości viewa i użyj funkcji screen_redraw(). Następnie na kolejnym surface'u o wymiarach 2x mniejszych od viewa narysuj tego pierwszego surface'a w skali 0.5. Na koniec narysuj tego mniejszego surface'a na większym w skali 2.

GML
//s1 - surface o wymiarach 1024x768

//s2 - -..--..- 512x384

texture_set_interpolation(1)

surface_set_target(s1)

screen_redraw()

surface_set_target(s2)

draw_surface_stretched(s1,0,0,512,384,0,0)

surface_set_target(s1)

draw_surface_stretched(s1,0,0,1024,768,0,0)

//wymiary surface'ów zmieniasz wg tego, jakich rozmiarów masz view i jak duże ma być rozmycie; im mniejszy s2, tym bardziej rozmyty obraz</span>

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...