जैसा कि पहले से ही मौजूदा लोगों ने अच्छे उत्तर जोड़ दिए हैं, मुझे खुली स्थितियों में जवाब देने दें।
यदि आप सभी ऐसी स्थिति में हैं, जहाँ आपने अपना गेम कोडिंग पूरा कर लिया है और अब कोड उपलब्धियों को शुरू कर रहे हैं और बहुत अधिक चर और गिनती बनाए रखने के लिए इसे बहुत जटिल पाते हैं और उन्हें कुछ घटनाओं और चीजों की तरह साफ कर देते हैं।
आप सभी घटनाओं को प्राप्त करने के लिए हमेशा एक वर्ग (अधिमानतः सिंगलटन) बना सकते हैं। अब अपनी सभी उपलब्धियों को सूचीबद्ध करें। फिर ट्रैक किए जाने वाले सभी गेम ईवेंट की सूची बनाएं। उदाहरण के लिए मेरी वर्तमान सूची इस तरह दिखती है
गोली मारना - चलना, गोलियां गोली मारना - गिरना, गिरना, स्वास्थ्य ENTER_ROOM, EXIT_ROP &
चलने, गोलियों जैसे अतिरिक्त विवरण पैरामीटर हो सकते हैं। अब उस एचीवमेंट ट्रैकिंग क्लास में फायरनेवेंट नामक एक फ़ंक्शन है। कोड में उन सभी स्थानों को खोजें जहाँ आपको आग लगाने की आवश्यकता है और उस फ़ंक्शन को कॉल करें। अब अचीवमेंट क्लास में बाकी गंदे काम करते हैं। मौजूदा कोड और कोड उपलब्धियों को परेशान नहीं करने का यह सबसे सुरक्षित तरीका है। इसने मेरे लिए बहुत तेजी से काम किया।