আমি একটি 2 ডি মেট্রোডোভেনিয়া বিকাশ করছি যা আন্তঃসংযুক্ত স্তরের একটি সিরিজ নিয়ে পুনরায় দেখা যেতে পারে।
প্রতিটি স্তর একটি টাইল্ড টিএমএক্স ফাইল দ্বারা প্রতিনিধিত্ব করা হয় যেখানে আমি নির্দিষ্ট করেছি যেখানে বিভিন্ন স্প্রাইট শ্রেণীর বিভিন্ন বস্তু স্পোন করে (উদাহরণস্বরূপ, শত্রু, পিকআপস, লিভারস ইত্যাদি)। একটি নতুন গেম শুরু করার সময়, একটি সংরক্ষিত গেমটি লোড করা বা কোনও স্তর পরিবর্তন করার সময়, আমার গেম লুপটি উপযুক্ত টিএমএক্স ফাইলের মধ্য দিয়ে চলে এবং সেই স্তরের সমস্ত অবজেক্ট তৈরি করে।
আমি স্তর পরিবর্তনগুলি নিম্নরূপে পরিচালনা করি: যদি Player
বস্তুটি কোনও বস্তুকে ছেদ করে তবে এমন Portal
একটি change_map()
পদ্ধতি বলা হয় যা একটি নতুন মানচিত্র (ছেদযুক্ত পোর্টালের সাথে সম্পর্কিত একটি) লোড করে এবং খেলোয়াড়কে নতুন মানচিত্রে উপযুক্ত অবস্থানে রাখে।
আমার কিছু জিনিসের স্টেট রয়েছে যা আমি স্তর পরিবর্তন এবং গেমটি সংরক্ষণ এবং ছাড়ার মাধ্যমে অবিচল থাকতে চাই । উদাহরণস্বরূপ, যদি কোনও খেলোয়াড় কোনও দরজা আনলক করে এবং দরজার রাষ্ট্রীয় বৈশিষ্ট্যটি "খোলার" সেট করা থাকে তবে আমি খেলোয়াড় ফিরে আসার পরে দরজাটি উন্মুক্ত করতে চাই। আমি লিভারের জন্য অনুরূপ কিছু চাই যা বাম বা ডান এবং অন্যান্য বিভিন্ন অবজেক্টে সেট করা যায়। তদ্ব্যতীত, প্লেয়ারটি মাঝে মাঝে আইটেম সংগ্রহ করে থাকে যা আমি প্লেয়ার যখন অঞ্চলটি ঘুরে দেখি তখন পুনরায় জিজ্ঞাসা করতে চাই না।
আমার প্রশ্ন এইভাবে আমি এই ধরণের দৃ pers়তা কীভাবে পরিচালনা করতে পারি?
আমি পাইথনে কাজ করছি, যদিও আমি মনে করি আপনি এটি থেকে দূরে বিমূর্ত করতে পারেন।