Wyłącz funkcję skalowania na karcie tła na mapie. Jeśli wydaje się, że jest poza skalą, upewnij się, że twoja tekstura tła jest tego samego rozmiaru co pomieszczenie / mapa, w której się znajdujesz.
Możesz również użyć tego postu tutaj, aby utworzyć skrypt w tle, który zwiększy skalę tła z (miejmy nadzieję) wyraźnymi wynikami.
Wykorzystuje to powierzchnie, więc jeśli potrzebujesz dodatkowej pomocy w tym temacie - ten post zawiera wiele informacji.
EDYTOWAĆ:
Wracając do moich odpowiedzi, zdałem sobie sprawę, że to nie do zera i potrzebuje treści samouczka. Oto on:
KROK 1 : Wybierz żądaną skalę. Użyj widoku dla każdego pokoju i odpowiednio skaluj port W i port H. Na przykład, jeśli używasz skali 2 ... wyglądałoby to tak w edytorze pokoi GM.
Ważne jest, aby było to spójne we wszystkich pokojach. Jeśli masz dużo pokoi, może to być łatwiejsze za pomocą kodu *. Wolę robić to w ten sposób, ponieważ wtedy wartości nie są stałe i mogę obsługiwać wiele różnych skal.
KROK 2 : Utwórz 3 skrypty, screen_init, screen_begin i screen_end. Oto, co wchodzi w skład każdego ze skryptów ...
Cytat z: screen_init
// screen base(view_wview and view_hview)
screen_x = 0;
screen_y = 0;
screen_w = 320;
screen_h = 240;
screen_scale = 2;
// create a surface for the whole screen to be drawn on
screen = surface_create(screen_w,screen_h);
// this will destroy the screen object if surfaces are not supported on the graphics card, reverting to the viewport method
if screen = -1{instance_destroy();}
Cytat z: screen_begin
// this draws the surface on the screen
surface_reset_target();
draw_clear(0);
draw_set_blend_mode_ext(bm_one, bm_zero);
draw_surface_stretched(screen,screen_x,screen_y,screen_w*screen_scale,screen_h*screen_scale);
draw_set_blend_mode(bm_normal);
screen_refresh();
Cytat z: screen_end
// this sets surface 'screen' as the drawing target for everything in the game, so all drawing will be done on this surface and not on the game screen
surface_set_target(screen);
KROK 3 : Teraz mamy skrypty, ale dokąd one idą? Utwórz obiekt. Podobnie jak obj_screen, objScreen, o_screen lub cokolwiek innego, i wykonaj następujące czynności:
- A) umieść screen_initscript w zdarzeniu Create.
- B) umieść skrypt screen_begin w zdarzeniu Rozpocznij krok.
- C) umieść skrypt screen_end w zdarzeniu End Step.
I umieść ten obiekt w pierwszym i najważniejszym pokoju w grze, zaznacz go jako trwały i upewnij się, że nie ma jego duplikatów.
Skończyłeś, a teraz masz ładne, wyraźne skalowanie = D