ইভেন্ট সিস্টেমগুলি আশ্চর্যজনক, এগুলি অত্যন্ত অপ্রতিরোধ্য কোডটি নিয়ন্ত্রণ করে এবং বস্তুগুলির সহজ যোগাযোগের এবং গেম লুপের মাধ্যমে গেমগুলির গতিশীল তৈরি করার জন্য সত্যই অনুমতি দেয়। আমার বর্তমান বাস্তবায়নের দক্ষতা নিয়ে আমি খুব কঠিন সময় কাটাচ্ছি। বর্তমানে তারা সাড়া জাগানো ইভেন্টগুলিতে অবজেক্টের তালিকাগুলির তালিকা পৃথক করার আমার সামান্য অনুকূলতা, তবে আমার আরও কিছু করা উচিত।
বর্তমানে আমার দুটি পদ্ধতি রয়েছে:
সর্বাধিক: যখন কোনও ইভেন্ট প্রেরণ করা হয় তখন সমস্ত বস্তুগুলিকে একটি ভেক্টরে যুক্ত করা হয় যখন সমস্ত অবজেক্টগুলিকে ইভেন্টটি হ্যান্ডেল_উভেন্ট () পদ্ধতির মাধ্যমে প্রেরণ করা হয়
আরও জটিল: স্ট্রিং সহ আমার মানচিত্রটি এর কী এবং এর মান হিসাবে এটি অন্তর্ভূক্ত। কোনও ইভেন্টের ধরণের যুক্ত হয়ে গেলে, এই মানচিত্রে এটি যুক্ত করা হয়, কেবলমাত্র প্রসারিতভাবে ইনক্রিমেন্ট করা হয় (সেখানে আরও ভাল উপায় থাকতে হবে)
সেই ধরণের ইভেন্টটি পরিচালনা করতে নতুন ভেক্টরকে পিছনে ঠেলে দেয়।
যখন কোনও ইভেন্ট বলা হয় তখন এটিকে ইভেন্ট টাইপস ম্যাপের সাথে সম্পর্কিত ইনটকে অবজেক্টের ভেক্টরের ভেক্টরের অভ্যন্তরের প্রকারে কল করে এবং সেই ইভেন্টটি সেই ইভেন্টের ধরণটি পরিচালনা করে প্রতিটি বস্তুর কাছে প্রেরণ করে।
এই প্রথম পদ্ধতিটি প্রচুর অবজেক্টের জন্য বেশ ধীর (স্পষ্টতই), তবে খুব কম কিছু অবজেক্টের জন্য দ্রুত। যদিও দ্বিতীয় পদ্ধতিটি বড় আকারের অবজেক্টগুলির সাথে বেশ দ্রুত যা বিভিন্ন ধরণের ইভেন্টগুলি পরিচালনা করতে চায় তবে একই ধরণের ইভেন্ট পরিচালনা করে এমন বস্তুগুলির সাথে প্রতি বস্তুতে প্রথম পদ্ধতির চেয়ে ধীর।
দ্রুত (রান টাইম ওয়াইজ) উপায় আছে কি? স্ট্রিংয়ের ধরণ থেকে কোন int দেখার জন্য আরও দ্রুত উপায় আছে? (প্রথমদিকে আমার একটি এনাম ছিল, তবে এটি কাস্টম প্রকারের অনুমতি দেয় নি, যা গতিরোধের পছন্দসই স্তরের কারণে প্রয়োজনীয়))