Jak ustawisz rozmiar GUI to zostanie przeskalowany do ekranu jeśli jest za duży jeśli nie użyjesz skalowania.
I oczywiste, że nie wstawiasz w każdym obiekcie, bo GUI i ekran masz jeden :) Wystarczy na początku każdego poziomu (z obiektu, z creation code - to już jak chcesz).
Samo GUI oczuwiście nie ma nic wspólnego z rozmiarem okna gry, a tylko z eventem draw gui :)
No to musisz napisać tak kod, żeby te pozycje się dostosowywały do ekranu :) Tego nikt za Ciebie nie zrobi, trochę matematyki (dodawanie, odejmowanie, mnożenie i dzielenie) i wszystko będzie OK. W YoYoGames tak to robiliśmy, naprawdę.
A moim zdaniem właśnie takie różne techniki się gryzą. Wszystko ma inny rozmiar kwadratów z których się składa, do tego poszarpane krawędzie strasznie bolą :/
Stwórz room, stwórz obiekty na które jak klikasz, to wywołujesz odpowiednie funkcje - jakie? Otwórz dokumentację i odpowiedni dział (audio itp.) i tam masz wszystko.
Dokumentacja jest w menu Help lub pod klawiszem F1 lub ma http://docs.yoyogames.com/
http://php.net/manual/pl/function.pg-fetch-row.php przykład mówi sam za siebie w sumie - row zwraca pierwszy wiersz ze stosu, jak użyjesz go kolejny raz dostaniesz albo kolejny wiersz, albo FALSE. Więc można tego też użyć w pętli while i zrobi to samo co pg_fetch_array.
A tak przy okazji - zalecam korzystanie z PDO.