מעקב אחר דמות ב-Game Maker באמצעות Views

בפוסט זה מדריך איך ליצור מצב שבו המסך עוקב אחרי דמות שנבחר. מתי כדאי להפעיל מעקב של המסך אחר הדמות? כאשר גודל החדר גדול יותר ממה שמוצג בפועל במסך. למשל, כאשר רוחב החדר גדול יותר ממה שנראה על המסך והדמות אמורה לעבור לכל רוחבו.  במקרה כזה לא נרצה שהדמות תיעלם מהמסך, אלא שנמשיך לראות אותה והרקע יזוז בהתאם.

יצירת דמות

כרגיל, נתחיל ביצירת דמות שיכולה לנוע לצדדים. לא זוכרים איך? קראו שוב את הפוסט יצירת משחק בסיסי ב-Game Maker.

הגדרות החדר

במשחק זה ניצור חדר ארוך מאוד, כדי שנוכל לבצע מעקב אחר הדמות. יצירת חדר והסבר לגבי המאפיינים בפוסט על חדרים ב-Game Maker.

בלשונית setting קבעו את רוחב החדר שיהיה גדול יותר מ-1000 פיקסלים. אני הגדרתי את הרוחב על 6400.

room View

בלשונית background הוסיפו רקע, וודאו שתמונת הרקע תתפרס לרוחב כל המסך ע”י סימון V באפשרות Tile Hor.

tile Hor

בלשונית View נגדיר את גודל המסך בפועל ואת המעקב אחר הדמות במסך:

הגדרת גודל המסך

  1. ראשית סמנו V באפשרויות: Enable the use of View ו- Visible when room starts.
  2. View in room – הגדירו איזה חלק מהחדר יראה ב-view, אני בחרתי רוחב של 300 פיקסלים. כמו כן הגדרתי את רוחב המסך כולו ל-300, כך שתהיה התאמה בין המראה למסך.

הסבר מפורט על מאפייני יצירת view תוכלו לקרוא בפוסט יצירת מפה מוקטנת של המסך.

הגדרת מעקב אחר הדמות

בחלק התחתון – Object following בחרו את הדמות שאחריה יתבצע המעקב.

Hbor, Vbor – קובעים את המרחק של גבול המראה מהאובייקט הנבחר, ניתן לבחור רק את המרחק מהצד השמאלי והצד העליון.
מרחק של אריח אחד= 32 , חצי = 16 . (אם לא שונו הגדרות ברירת המחדל של החדר)
המרחק מהצד הימני והצד התחתון תמיד=0.

Hsp, Vsp – קובעים את המהירות שהמראה עוקב אחר האובייקט
0 = ללא תזוזה. במקרה זה הדמות תיעלם מהמסך לאחר שתעבור את 300 הפיקסלים הראשונים
1 = עיכוב / delay. במקרה זה המסך נמצא תמיד צעד אחד אחרי הדמות
1 – = תואם את מהירות האובייקט. זה המצב שאנחנו רוצים – כלומר המסך תמיד עוקב אחר הדמות

כך יראה מסך הגדרות החדר בסיום הגדרת כל המאפיינים:

view Border
שימו לב שניתן לראות את גבול המראה, במקרה זה x=300.

לאחר שתמקמו את הדמות בחדר הריצו את המסך וראו כיצד המסך זז עם הדמות והרקע.

כתיבת תגובה