אירועים

מתוך Gamemaker

קפיצה אל: ניווט, חיפוש

אירועים

Game Maker משתמשת בגישה - מונעת אירועים. זה עובד כך: בכל פעם שמשהו קורה בתוך המשחק המופעים (Instances) השונים של האוביקטים (Objects) מקבלים אירוע (Event) (סוג של הודעה שאומרת שמשהו קרה). המופעים (Instances) אז יכולים להגיב על הודעות אלה על ידי הפעלת פעולות (Actions) מסוימות. עבור כל אוביקט (Object) יש להגדיר על אלו אירועים (Events) הוא מגיב ומה הפעולות (Actions) שהוא חייב לבצע כאשר מתרחש האירוע (Event). זה אולי נשמע מסובך אבל זה בעצם מאוד פשוט. קודם כל, לרוב האירועים האובייקט אינו צריך לעשות דבר. באירועים שבהם יש מה לעשות - אתה יכול להשתמש בגישת "גרור ושחרר" כדי להגדיר את הפעולות לארוע.

במרכז דף המאפינים של האובייקט יש רשימה של אירועים להם האובייקט יכול להגיב. בתחילה הוא ריק. אתה יכול להוסיף אירועים אליו על ידי לחיצה על הלחצן שכותרתו Add Event (הוסף ארוע). טופס יופיע עם כל סוגי האירועים השונים . כאן אתה בוחר את האירוע שברצונך להוסיף. לפעמים יופיע תפריט עם בחירות נוספת. לדוגמה, באירוע של המקלדת יש לבחור את המקש. להלן תמצא רשימה מלאה של האירועים השונים ופרוט תכונותיהם. ניתן לבחור אירוע אחד ברשימה . זהו הארוע שאנחנו כרגע מגדירים פעולותיו. אתה יכול להחליף את האירוע הנבחר על ידי לחיצה עליו. בחלק הימני של הדף יש את כל הפעולות שניתן לבצע כתגובה לארוע,הם מיוצגים על ידי סמלים קטנים. הם מקובצים במספר מחיצות. בפרק הבא תמצאו תיאורים של כל הפעולות ומה הם עושים. בין האירועים והפעולות ישנה רשימת פעולות. רשימה זו מכילה את הפעולות שיש לבצע בשביל האירוע הנוכחי. כדי להוסיף פעולות לרשימה, יש לגרור את הסמלים מימין המיצגים פעולות לתוך הרשימה. הם יהיו ממוקמים אחד מתחת לשני, עם תיאור קצר. עבור כל פעולה תתבקש לספק מספר תכונות. תכונות אלה מתוארות בפרק הבא. אז אחרי הוספת מספר פעולות, המצב עשוי להיראות כך:


תמונה:form_event_panel.jpg


עכשיו אתה יכול להתחיל להוסיף פעולות לאירוע אחר. ביחרו את האירוע הרצוי עם כפתור העכבר השמאלי וכעת תוכל לגרור פעולות מתאימות.

אתה יכול לשנות את סדר הפעולות ברשימה שוב באמצעות גרירה ושחרור. אם תחזיק את מקש Alt בעת גרירה, תיצור עותק של הפעילות. אתה יכול גם להשתמש בגרור ושחרר להעביר פעולות בין רשימות של אוביקטים שונים. כאשר אתה לוחץ באמצעות לחצן העכבר הימני על פעולה, יופיע תפריט בו תוכל למחוק את הפעולה שנבחרה (יכול להתבצע גם באמצעות המקש Del) או להעתיק ולהדביק פעולות. (אתה יכול לבחור מספר פעולות של גזירה, העתקה, מחיקה על ידי לחיצה על מקש של Shift או מקש Ctrl.הקש על Ctrl A כדי לבחור את כל הפעולות). כאשר נח העכבר על אחת הפעולות לעיל,יופיע תיאור ארוך יותר של הפעילות. ראה את הפרק הבא בשביל מידע נוסף על הפעולות.

כדי למחוק את האירוע שכעת בחור,יחד עם כל הפעולות - לחצו על הלחצן שכותרתו מחק (Delete). (אירועים ללא פעולות ימחוקו באופן אוטומטי כאשר אתה סוגר את דף האוביקט, כך שאין צורך למחוק אותם באופן ידני.) אם אתה רוצה להקצות את הפעולות לאירוע אחר (למשל, כי החלטת להשתמש במקש אחר עבורם ) לחץ על הלחצן שכותרתו Change (שנה) ובחר אירוע חדש (ארוע שעדיין לא הוגדר לפעולות אחרות!) באמצעות התפריט שמופיע עם לחיצה בכפתור ימני בעכבר על רשימת האירועים, אתה יכול גם לשכפל אירוע, כלומר, להוסיף אירוע חדש עם אותן פעולות.

כפי שצוין לעיל, על מנת להוסיף אירוע, לחצו על הלחצן Add Event (הוסף ארוע) והטופס הבא יופיע:


תמונה:form_event_selector.jpg


כאן אתה בוחר את האירוע שברצונך להוסיף. לפעמים יופיע תפריט עם בחירות נוספות. הנה תיאור של האירועים השונים. (יש לזכור כי בדרך כלל אתה משתמש רק בחלק קטן מהם).


תמונה:event_create.png אירוע נוצר (Create Event)

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


תמונה:event_destroy.png אירוע מושמד (Destroy Event)

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


תמונה:event_timer.png אירוע שעון מעורר (Alarm)

לכל מופע יש 12 שעונים מעוררים. אתה יכול להגדיר שעונים אלו באמצעות פעולות מסוימות (ראה פרק הבא). שעון מעורר סופר אחורה לכוון 0 וכשמגיע הרגע בו אמור לצלצל מופק האירוע. כדי לציין את הפעולות עבור כל שעון מעורר, אתה ראשית צריך לבחור אותו בתפריט.שעונים מעוררים מאוד שימושים. אתה יכול להשתמש בהם כדי לאפשר שדברים מסוימים יקרו מעת לעת. לדוגמה מפלצת יכולה לשנות את כיוון תנועתה כל 20 צעדי משחק. (במקרים כאלה אחת מהפעולות באירוע חייבת להגדיר שוב שעון מעורר שיקרה באופן מחזורי.)


תמונה:event_step.png אירוע צעד (Step Event)

אירוע צעד מתרחש בכל שלב במשחק. כאן אתה יכול לשים את הפעולות שצריכות להתבצע באופן רציף. לדוגמה, אם אובייקט אחד צריך לעקוב אחר, כאן אתה יכול להתאים את כיוון תנועה לכיוון האובייקט הנרדף. תיזהר בשימוש אירוע זה. אל תשים הרבה פעולות מורכבות באירועים של האובייקטים שקים להם מופעים רבים. זה עלול להאט מאוד את המשחק. אם לדייק, יש שלושה אירועי צעד שונים. בדרך כלל אתה צריך רק את Step (צעד) שמהווה את בררת המחדל. אבל בעזרת התפריט אתה יכול גם לבחור את הארועים Begin Step (התחל צעד) ו End Step (סיים צעד) .הארוע Begin Step (התחל צעד) מבוצע בתחילת כל שלב, לפני שכל שאר האירועים מתרחשים. בדרך כלל אירוע צעד (Step Event) מבוצע ממש לפני שהמופעים זזים למקום חדש. ארוע End Step (סיים צעד) מבוצע בסופו של הצעד, בדיוק לפני הציור.שימוש בו נעשה בדרך כלל בכדי לשנות את דמות הספרייט (Sprite) בהתאם לכיוון הנוכחי.


תמונה:event_collision.png אירוע התנגשות (Collision Event)

כאשר שני מופעים מתנגשים (כלומר, הספרייטים שלהם בחפיפה) אירוע התנגשות מתרחש. ובכן, אם לדייק - שני אירועי התנגשות מתרחשים; אחד לכל מופע. המופע יכול להגיב לאירוע ההתנגשות. לשם כך, בחר מהתפריט את האובייקט לו אתה רוצה להגדיר את אירוע התנגשות. ולאחר הנח את הפעולות הנדרשות.

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

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

כאשר האובייקט השני אינו מוצק, לא מחזירים אותו לאחור. האירוע פשוט מבוצע עם המופע (Instance) במיקום הנוכחי שלו. כמו כן, לא מחפשים התנגשות שנייה.אם תחשוב על זה, זה הגיוני, זה מה שאמור לקרות. בגלל שהאובייקט אינו מוצק, אנחנו יכולים פשוט לעבור עליו.האירוע פשוט מודיע לנו שזה קורה.

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


תמונה:event_keyboard.png אירוע מקלדת (Keyboard Event)

כאשר שחקן לוחץ על מקש,אירוע מקלדת קורה עבור כל המופעים של האובייקטים. יש אירוע שונה עבור כל מקש. בתפריט אתה יכול לבחור מקש שעבורו ברצונך להגדיר אירוע מקלדת (Keyboard Event) ולאחר לגרור פעולות עבורו.כמובן,שרק מספר קטן של אוביקטים צריכים אירוע מקלדת וזאת רק בעבור מעט מקשים. אתם מקבלים אירוע בכל צעד (step) של המשחק כל עוד השחקן שומר על המקש לחוץ. ישנם שני אירועי מקלדת מיוחדים. אחד נקרא No Key (אף מקש). אירוע זה קורה בכל צעד (step), כאשר המקשים לא לחוצים. השני נקרא Any Key (כל מקש) וקורה כאשר מקש כל שהוא נלחץ. כאשר שחקן לוחץ על מספר מקשים,מופעל אירוע עבור כל מקש שנלחץ. שים לב, המקשים בריבוע המספרים מימין יתרחשו רק כאשר NumLock לחוץ.


תמונה:event_mouse.png אירוע עכבר (Mouse Event)

אירוע עכבר קורה בכל פעם שסמן העכבר נמצא בתוך ספרייט (Sprite) המייצג את מופע של אובייקט. בהתאם ללחיצה על ללחצני העכבר אתה מקבל אירוע מתאים - No Button (אף לחצן), Left Button (לחצן שמאלי), Right Button (לחצן ימני), או Middle Button (לחצן אמצעי). אירועי העכבר נוצרים בכל צעד במשחק כל עוד השחקן שומר על לחצן העכבר לחוץ. אירועי Pressed (לחוץ) נוצרים רק פעם אחת, כאשר כפתור העכבר נלחץ . ארועי Released (משוחרר) נוצרים רק כאשר משחררים את הכפתור. שים לב, אירועים אלה מתרחשים רק כאשר העכבר נמצא מעל המופע. אם אתה רוצה להגיב לארוע לחיצה או שחרור של עכבר במקום שרירותי יש להשתמש בארועים תחת תפריט המשנה Global Mouse (עכבר כללי). ישנם שני אירועי עכבר מיוחדים. אירוע Mouse Enter (עכבר נכנס) קורה כאשר העכבר נכנס לשטח המופע. Mouse Leave (עכבר יצא) קורה כאשר העכבר עוזב את המופע. אירועים אלו משמשים בדרך כלל כדי לשנות את התמונה של המופע או להשמיע צלילים. ארועיי Mouse Wheel Up (גלגל עכבר למעלה) או Mouse Wheel Down (גלגל עכבר למטה) קורים כאשר המשתמש מגלגל את לחצן הגלגל בעכבר. לבסוף ישנם מספר אירועים הקשורים ל Joystick (ג'ויסטיק). אתה יכול לגדיר פעולות עבור ארבעה כיוונים הראשים של מוט הגוי (באלכסון ארוע לכול כיוון מתרחש). כמו כן, ניתן להגדיר פעולות עבור עד 8 כפתורים בJoystick (ג'ויסטיק). אתה יכול לעשות את זה עבור הגויסטיק הראשי והגויסטיק המשני.


תמונה:event_other.png אירוע אחר (Other Event)

יש מספר אירועים אחרים שיכולים להיות שימושיים במשחקים מסוימים . הם נמצאים בתפריט זה. להלן האירועים שניתן למצוא כאן:

  • Outside (מחוץ): אירוע זה קורה כאשר מופע יוצא לגמרי מחוץ לחדר. זה בדרך כלל רגע טוב להשמיד אותו.
  • Boundary (גבול): אירוע זה קורה כאשר מופע חוצה את גבול החדר, כלומר, הוא נמצא (לפחות) חלקית מחוץ לחדר.
  • Views (תצוגות): כאן תמצא מספר אירועים שימושים כאשר אתה משתמש בViews (תצוגות) בחדרים. אירועים אלו בודקים אם המופע נמצא לחלוטין מחוץ לתצוגה מסוימת או חוצה את גבולות התצוגה.
  • Game Start (תחילת משחק): אירוע זה קורה לכל המופעים בחדר הראשון כאשר המשחק מתחיל. זה קורה לפני האירוע Room Start (תחילת חדר) (ראה בהמשך) אך לאחר אירוע נוצר (Create Event) עבור המופעים בחדר. אירוע זה בדרך כלל מוגדר באוביקט אחד "שולט" שמשמש על מנת להפעיל מוסיקת רקע לאתחל משתנים מסוימים, או לטעון נתונים מסוימים.
  • Game End (סוף משחק): האירוע קורה לכל המופעים כאשר המשחק מסתיים. שוב, בדרך כלל, רק אובייקט אחד מגדיר אירוע זה.לדוגמא, נעשה בו שימוש כדי לאחסן נתונים מסוימים בקובץ.
  • Room Start (תחילת חדר): אירוע זה קורה לכל המופעים הקימים בחדר כאשר החדר מתחיל. זה קורה לאחר אירוע נוצר (Create Event).
  • Room End (סוף חדר): אירוע זה קורה לכל המופעים הקיימים בחדר כאשר החדר מסתיים.
  • No More Lives (אין יותר חיים): ל Game Maker יש מערכת חיים מובנית. קיימת פעולה לשנות את מספר החיים במשחק. בכל פעם שמספר החיים שווה או פחות מ 0, אירוע זה יקרה. בדרך כלל נעשה בו שימוש כדי לסיים או להפעיל את המשחק מחדש.
  • No More Health (אין יותר בריאות)::ב Game Maker יש מערכת בריאות מובנית. קיימת פעולה לשנות רמת הבריאות. בכל פעם שרמת הבריאות שווה או נמוכה מ 0, אירוע זה יקרה. בדרך כלל נעשה בו שימוש על מנת לצמצם את מספר החיים או להפעיל את המשחק מחדש.
  • End Of Animation (סוף אנימציה): כפי שצוין לעיל, האנימציה מורכבת ממספר תמונות אשר מופיעות אחד אחרי השני. לאחר שהתמונה האחרונה מוצגת אנחנו מתחילים שוב עם הראשון. האירוע קורה בדיוק ברגע זה. כדוגמה, ניתן להשתמש בו כדי לשנות את האנימציה, או להשמיד את המופע.
  • End Of Path (סוף נתיב): אירוע זה קורה כאשר מופע הנע בעקבות נתיב מגיע לסוף הנתיב.
  • Close Button (כפתור סגירה): אירוע זה קורה כאשר המשתמש לוחץ על כפתור סגירת חלון המשחק. הארוע קורה רק כאשר ב Global Game Settings (הגדרות משחק כלליות) לא מאפשרים לכפתור הסגירה להתנהג כמו מקש Escape.
  • User Defined (מוגדר משתמש):: ישנם 16 אירועים כאלה. הם בדרך כלל לא יתרחשו, אלא אם כן אתה תקרא להם מתוך פיסת קוד.


תמונה:event_draw.png אירוע צייר (Draw Event)

מופעים , כאשר גלוים, מציירים את הספרייט (Sprite) שלהם בכל שלב על המסך. כאשר אתה מציין פעולות באירוע צייר (Draw Event), את ספרייט לא מצוייר, אך הפעולות מבוצעת במקום. זה משמש כדי לצייר משהו שונה מהספרייט, או קודם לאפשר לבצע כמה שינויים בפרמטרים של הספרייט . יש מספר פעולות ציור שנועדו במיוחד לשימוש באירוע צייר. שים לב, אירוע צייר מבוצע רק כאשר האובייקט גלוי. לידיעתך, ללא קשר מה בחרת לצייר, אירוע התנגשות מבוסס על הספרייט שקושר שלמופע.


תמונה:event_keypress.png אירוע מקש נלחץ (Key Press Event)

אירוע זה דומה לאירוע המקלדת, אך קורה רק פעם אחת, כאשר המקש לחוץ, ולא באופן רציף. תכונה זו שימושית כאשר אתה רוצה שהפעולה תקרה רק פעם אחת.


תמונה:event_keyrelease.png אירוע מקש נעזב (Key Release Event)

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


במקרים מסוימים חשוב להבין את הסדר בו Game Maker מייצר את האירועים. והם על פי הרשימה:

  • אירוע התחל צעד (Begin Step Event)
  • אירוע שעון מעורר (Alarm)
  • אירוע מקלדת (Keyboard Event) , אירוע מקש נלחץ (Key Press Event), אירוע מקש נעזב (Key Release Event)
  • אירוע עכבר (Mouse Event)
  • אירוע צעד (Step Event)
  • (עכשיו מגדירים לכל המופעים את המיקום החדש שלהם)
  • אירוע התנגשות (Collision Event)
  • אירוע סיים צעד (End Step Event)
  • אירוע צייר (Draw Event)


אירוע נוצר (Create Event), אירוע מושמד (Destroy Event) , ואירוע אחר (Other Event) מתבצעים בהתאמה לתרחיש.


כלים אישיים

sl
דומיין בעברית  דומיין  דומין  תוכנה לניהול  קשרי לקוחות  CRM, ניהול קשרי לקוחות  דומין בעברית  פורומים  ספרדית  גיבוי