תכנות לילדים באמצעות Game Maker/חייזרים/צעד 9: בריאות

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
קפיצה לניווט קפיצה לחיפוש



בריאות[עריכה]

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

את זה נוכל לעשות בעזרת הבריאות. הבריאות היא משתנה גלובלי, כמו החיים והניקוד. בתחילת המשחק הערך של הבריאות הוא 100, כי השחקן בריא במאה אחוזים. אנחנו נוריד 25 אחוזי בריאות בכל התנגשות, ואז אחרי 4 התנגשויות הבריאות תגיע ל-0.

בשביל זה צריך לשנות את ארוע ההתנגשות של החללית בחייזר:

  1. למחוק את פעולת שינוי החללית לפיצוץ.
  2. להוסיף פעולת שינוי החייזר לפיצוץ Gmaker change instance.png (לבחור Other ב-Applies to).
  3. להוסיף את הפעולה לקביעת הבריאות שנמצאת בלשונית score Gmaker set health button.png. בפעולה הזאת נרצה להקטין את הבריאות, לכן צריך לכתוב -25 בשדה value ולסמן Relative.

כשהבריאות מגיעה ל-0, נרצה שהחללית תתפוצץ. לכן נוסיף לחללית ארוע סוף הבריאות - No more health מסוג ארוע Other Gmaker other.png. בארוע הזה נשים פעולה להפוך את החללית לפיצוץ Gmaker change instance.png.

בארוע היצירה של החללית Gmaker create.png נחזיר את הבריאות שלה ל-100 באמצעות הפעולה לקביעת הבריאות Gmaker set health button.png.


Gmaker test save.png עכשיו החללית מתפוצצת רק אחרי ארבע התנגשויות.




הצגת הבריאות[עריכה]

Gmaker health bar.png

בואו נוסיף את הבריאות ללוח הניקוד: בארוע הציור של אובייקט לוח הניקוד נוסיף את הפעולה לציור הבריאות שנמצאת בלשונית score Gmaker draw health button.png. הפעולה הזאת מציירת פס בריאות, כמו הפס משמאל.

Gmaker draw health dialog.png

בחלון אפשרויות הפעולה יש 6 שדות:

  • x1 ו-x2 הם הקצוות האופקיים של פס הבריאות - איפה הוא מתחיל ואיפה הוא נגמר. נכתוב 0 בשדה x1 כדי שפס הבריאות יתחיל משמאל, ו-100 בשדה x2 כדי שהפס יהיה בגודל 100 פיקסלים.
  • y1 ו-y2 הם הקצוות האנכיים של פס הבריאות. נכתוב 60 בשדה y1 כדי שפס הבריאות יופיע מתחת לפצצות, ונכתוב 70 בשדה y2 כדי שהפס יהיה ברוחב 10 פיקסלים.
  • back color (בַּק קוֹלוֹר) - צבע הרקע. כאן אפשר לבחור את צבע הרקע של הפס. אני בעד להשאיר את השדה הזה על הערך none כדי שהרקע יהיה שקוף, אבל אפשר לשים שם צבע אחר אם זה נראה לך יותר טוב.
  • bar color (בַּר קוֹלוֹר) - צבע הפס. כאן אפשר לקבוע את צבע פס הבריאות עצמו. כדאי להשאיר את זה על green to red (גְרִין טוּ רֵד) - מירוק לאדום. ככה הפס יהיה ירוק כשהבריאות מלאה, אדום כשהיא כמעט ריקה, וגווני צהוב וכתום כשהיא איפשהו באמצע.

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


Gmaker test save.png אפשר לראות את הבריאות, אבל היא מוצגת מחוץ ללוח הניקוד.




שיפור לוח הניקוד[עריכה]

Gmaker aliens score panel.png

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

לכן נשנה את הקורדינטות של פעולות הציור:

  • בפעולת ציור הבריאות, נשנה את y1 ל-20 ואת y2 ל-30 כדי שהבריאות תופיע מיד מתחת לניקוד. את x2 נשנה ל-115 כדי שפס הבריאות יימשך עד לסוף החללית השלישית ויראה יותר מסודר.
  • בפעולת ציור החיים, נשנה את y ל-40 כדי שהחלליות יופיעו מתחת לבריאות.
  • בסדרת הפעולות לציור הפצצה, נאתחל את bomb_x ל-130 ונשנה את y ל-20 כדי שהפצצות יופיעו מימין לפס הבריאות.
  • המסגרת של לוח הניקוד צריכה להיות בגודל מתאים בשביל להקיף את כל הפצצות. איך יודעים עד לאן מגיעה תצוגת הפצצות? בעזרת המשתנה bomb_x שמשמש לציור הפצצות - בסוף תצוגת הפצצות הוא מראה את המקום שבו היה אפשר לצייר את הפצצה הבאה (אילו היתה) ולכן הוא מראה בדיוק איפה גמרנו לצייר פצצות. לכן בפעולת ציור המלבן נשנה את x2 ל-bomb_x.

Gmaker test save.png עכשיו לוח הניקוד אמור להתאים לתוכנו.




בואו ניתן לחללית עוד חיזוק - צעד 10: מגן