Skip to content

MHA-FinalProject/Matala3A-Matan

Repository files navigation

Matala3A-Matan

זהו משחק חלליות שצריכה להרוס את האויבים שלה. למשחק ב-itch.io לחץ כאן : click here

מקשים : Left Arrow- שמאלה , Right Arrow- ימינה , space - לירות

במשימה זו ביצעתי את ההוספות הבאות למשחק: (עשיתי את זה על ה - level 1 scene שבתקייה 4) קישור : click here

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

ב- ClickSpawner script : קישור לסקריפט - click here

הגדרתי את השלושת המשתנים אלו להיות חישוב הזמן מהירייה האחרונה , איפוס הזמן אחרי כל ירייה, להגדיר זמן שאי אפשר לירות בו בין יריה לירייה בהתאמה - כפי שמוצג בתמונה.

Screenshot 2024-01-23 174531

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

Screenshot 2024-01-23 174558

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

Screenshot 2024-01-23 174611

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

Screenshot 2024-01-23 174625

ב - LaserShooter script : קישור לסקריפט - click here

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

Screenshot 2024-01-23 174648

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

יצרתי מחלקה שנקראת explotion שכל מה שעושה זה להשמיד את האוביקט.

Screenshot 2024-01-23 184603

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

Screenshot 2024-01-23 184536

שמתי את ה scripts גם על האויב ועל הלייזר.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published