سلام! در فایل Haste.py (که کد اصلی درون آن قرار گرفته)، ۳ تابع، ۲ متغیر کلی و یک حلقه تعریف شده که در ادامه به توضیح آن میپردازم.
- متغیر ها:
- متغیر game_dict : این متغیر از جنس دیکشنری است و حاوی اطلاعاتی راجع به مقاومت و سربازهای دو بازیکن دارد. مقاومت و جان ساختمانها به صورت یک عدد صحیح (integer) و اطلاعات مربوط به سربازها به صورت تاپلی است که عضو اول آن بیانگر مقاومت سرباز و عضو دوم آن بیانگر فاصلهی آن سرباز از خانهی خودش است، ارايه شده است.
- متغیر coins : این متغیر حاوی اطلاعات مربوط به سکههای دو بازیکن است.
- متغیر functions : این دیکشنری درون خود توابعی را دارد که کاربر (برنامه نویس گرافیک) آنها را اضافه کرده به طوری که key، نام event و value خود تابع است.
- توابع:
- تابع get_status : این تابع در اصل دیکشنری game_dict را برمیگرداند (ولی راجع به شرایط بازی اطلاعاتی میدهد). این تابع ورودی ندارد.
- تابع teach : این تابع به اضافه کردن سربازها کمک میکند. ورودیهای این تابع team_id که یا first یا second است و soldier_id که یا ۳ یا ۱۰ است (به صورت رشته) میباشد. در صورت ورود ورودیهای غلط، تابع کاری انجام نمیدهد و False برمیگرداند. در صورت درست بودن ورودیها، تابع با دستکاری متغیر game_dict، سرباز مد نظر را به بازی اضافه میکند و خروجی True میدهد.
- تابع add_event : این تابع یک فانکشن و یک نام برای آن را ورودی میگیرد و این فانکشن و نامش را به ترتیب به صورت value و key در دیکشنری functions اضافه میکند.
- حلقه : در انتهای کد یک حلقه وجود دارد که توسط برنامه نویس گرافیک باید تغییر داده شود. این حلفه به ساخت و ساز سکه در هر ثانیه و در ادامه به ساز و کار بازی (این بخش توسط برنامه نویس گرافیک باید اضافه شود) کمک میکند.