क्या आप ख़तरे से निपटने के लिए अपने खेल में चतुराई की तलाश कर रहे हैं? जीवन को स्वास्थ्य में बदलें और अपने गेमप्ले में एक अतिरिक्त आयाम जोड़ें।

अपने आर्केड गेम में एक स्वास्थ्य प्रणाली जोड़ने से खिलाड़ी का अनुभव बढ़ सकता है और चुनौती और जुड़ाव की एक अतिरिक्त परत जुड़ सकती है। आप खिलाड़ी के स्वास्थ्य और क्षति तथा उपचार की प्रक्रिया के प्रदर्शन के साथ अधिक गहन गेमप्ले अनुभव बना सकते हैं।

सौभाग्य से, आर्केड लाइब्रेरी का उपयोग करके पायथन में एक स्वास्थ्य प्रणाली लागू करना सीधा है और इसके लिए केवल कुछ चरणों की आवश्यकता होती है।

एक सरल गेम बनाएं

पहला, अपने डिवाइस पर पिप इंस्टॉल करें और आर्केड लाइब्रेरी स्थापित करने के लिए नीचे दिए गए कमांड का उपयोग करें:

पिप इंस्टाल आर्केड

उसके बाद, आर्केड लाइब्रेरी का उपयोग करके एक सरल गेम बनाकर शुरुआत करें। इस गेम में एक खिलाड़ी का चरित्र होगा जो बाएं, दाएं, ऊपर और नीचे घूम सकता है और एक दुश्मन वस्तु होगी जो खिलाड़ी के लिए खतरा बन सकती है।

इस आलेख में प्रयुक्त कोड इसमें उपलब्ध है गिटहब रिपॉजिटरी और यह आपके लिए एमआईटी लाइसेंस के तहत उपयोग करने के लिए निःशुल्क है।

नामक एक नई फ़ाइल बनाएँ Simple-game.py और नीचे दिया गया कोड जोड़ें:

आयात आर्केड

# विंडो आयाम सेट करें
स्क्रीन_चौड़ाई = 800
स्क्रीन_ऊंचाई = 600

# खिलाड़ी की गति निर्धारित करें
PLAYER_MOVEMENT_SPEED = 5
सफ़ेद = आर्केड.रंग. सफ़ेद
नीला = आर्केड.रंग. नीला
लाल = आर्केड.रंग. लाल

कक्षागेमविंडो(आर्केड. खिड़की):
डीईएफ़__इस में__(स्वयं, चौड़ाई, ऊंचाई):
सुपर().__init__(चौड़ाई, ऊंचाई)
आर्केड.सेट_बैकग्राउंड_रंग (सफ़ेद)

# खिलाड़ी और शत्रु वस्तुएं बनाएं
स्व.खिलाड़ी = आर्केड. स्प्राइटसर्कल(30, नीला)
स्व.शत्रु = आर्केड. स्प्राइटसर्कल(30, लाल)
self.player.center_x = 100
self.player.center_y = 100
स्वयं.शत्रु.केन्द्र_x= 400
स्वयं.शत्रु.केन्द्र_य= 300

डीईएफ़on_draw(खुद):
आर्केड.स्टार्ट_रेंडर()
self.player.draw()
स्वयं.दुश्मन.खींचना()

डीईएफ़अद्यतन(स्वयं, डेल्टा_समय):
उत्तीर्ण

डीईएफ़on_key_press(स्वयं, कुंजी, संशोधक):
अगर कुंजी == आर्केड.कुंजी। बाएं:
self.player.center_x -= PLAYER_MOVEMENT_SPEED
एलिफ़ कुंजी == आर्केड.कुंजी। सही:
self.player.center_x += PLAYER_MOVEMENT_SPEED
एलिफ़ कुंजी == आर्केड.कुंजी। ऊपर:
self.player.center_y += PLAYER_MOVEMENT_SPEED
एलिफ़ कुंजी == आर्केड.कुंजी। नीचे:
self.player.center_y -= PLAYER_MOVEMENT_SPEED

डीईएफ़मुख्य():
गेम = गेमविंडो (स्क्रीन_चौड़ाई, स्क्रीन_ऊंचाई)
आर्केड.रन()

अगर __नाम__ == "__मुख्य__":
मुख्य()

आपको एक विंडो देखनी चाहिए जिसमें दो अक्षर होंगे, जो नीले और लाल वृत्तों द्वारा दर्शाए जाएंगे:

स्वास्थ्य प्रणाली को लागू करने के लिए स्वास्थ्य से संबंधित चर और स्थिरांक को परिभाषित करें। आप उनका उपयोग खिलाड़ी के वर्तमान स्वास्थ्य पर नज़र रखने और क्षति और उपचार के नियमों को निर्धारित करने के लिए करेंगे। निम्नलिखित कोड को अंदर जोड़ें गेमविंडो कक्षा:

कक्षागेमविंडो(आर्केड. खिड़की):
डीईएफ़__इस में__(स्वयं, चौड़ाई, ऊंचाई):
# ...
# स्वास्थ्य संबंधी चर और स्थिरांक
स्व.खिलाड़ी_स्वास्थ्य= 100

# स्वास्थ्य बिंदु प्रति सेकंड ठीक हो गए
self.heal_rate = 1

# उपचार के लिए टाइमर
self.heal_timer = 0

डीईएफ़अद्यतन(स्वयं, डेल्टा_समय):
# ...
# हीलिंग टाइमर अपडेट करें
सेल्फ.हील_टाइमर += डेल्टा_टाइम

# हर 2 सेकंड में खिलाड़ी का स्वास्थ्य ठीक करें
अगर self.heal_timer >= 2:
सेल्फ.प्लेयर_हेल्थ += सेल्फ.हील_रेट
self.heal_timer = 0

# सुनिश्चित करें कि स्वास्थ्य अधिकतम मूल्य से अधिक न हो
अगर स्व.खिलाड़ी_स्वास्थ्य > 100:
स्व.खिलाड़ी_स्वास्थ्य= 100

क्षति और उपचार यांत्रिकी को लागू करना

क्षति और उपचार यांत्रिकी को लागू करने के लिए, खिलाड़ी और दुश्मन के बीच टकराव का पता लगाएं. जब खिलाड़ी दुश्मन से टकराते हैं तो उनके स्वास्थ्य को कम करें और जब वे टकरा नहीं रहे हों तो हर 2 सेकंड में खिलाड़ी के स्वास्थ्य को ठीक करें। संशोधित करें अद्यतन() विधि और निम्नलिखित कोड जोड़ें:

कक्षागेमविंडो(आर्केड. खिड़की):
डीईएफ़__इस में__(स्वयं, चौड़ाई, ऊंचाई):
# ...

डीईएफ़अद्यतन(स्वयं, डेल्टा_समय):
# खिलाड़ी और दुश्मन के बीच टकराव का पता लगाएं
अगर आर्केड.चेक_फॉर_कोलिजन (स्वयं.खिलाड़ी, स्वयं.दुश्मन):
स्व.खिलाड़ी_स्वास्थ्य -= 5

# ...

खिलाड़ी की मृत्यु और गेम ओवर परिदृश्यों का प्रबंधन करना

खिलाड़ी की मृत्यु और गेम-ओवर परिदृश्यों को प्रबंधित करने के लिए, जांचें कि क्या खिलाड़ी का स्वास्थ्य शून्य या उससे नीचे पहुंचता है। यदि स्वास्थ्य शून्य हो जाए तो खिलाड़ी को मृत मान लें और खेल समाप्त कर दें। संशोधित करें अद्यतन() निम्नलिखित कोड के साथ विधि:

कक्षागेमविंडो(आर्केड. खिड़की):
डीईएफ़__इस में__(स्वयं, चौड़ाई, ऊंचाई):
# ...

डीईएफ़अद्यतन(स्वयं, डेल्टा_समय):
# ...

# जांचें कि खिलाड़ी का स्वास्थ्य शून्य या उससे नीचे है या नहीं
अगर स्व.खिलाड़ी_स्वास्थ्य <= 0:
# खेल समाप्त करें
आर्केड.close_window()

# ...

हेल्थ बार की कल्पना

खिलाड़ी के स्वास्थ्य का एक दृश्य प्रतिनिधित्व गेमप्ले अनुभव को काफी बढ़ा सकता है। वर्तमान स्वास्थ्य स्तर दिखाने के लिए आयतों का उपयोग करके एक स्वास्थ्य पट्टी बनाएं। नामक एक नई फ़ाइल बनाएँ स्वास्थ्य-bar.py और नीचे दिए गए अपडेट के साथ कोड जोड़ें:

कक्षागेमविंडो(आर्केड. खिड़की):
डीईएफ़__इस में__(स्वयं, चौड़ाई, ऊंचाई):
# ...

डीईएफ़on_draw(खुद):
आर्केड.स्टार्ट_रेंडर()
self.player.draw()
स्वयं.दुश्मन.खींचना()
ग्रे = आर्केड.रंग. हल्का ग्रे
हरा = आर्केड.रंग. हरा

# स्वास्थ्य पट्टी बनाएं
आर्केड.ड्रॉ_रेक्टेंगल_फिल्ड (स्क्रीन_विड्थ // 2, 20,
स्क्रीन_चौड़ाई, 20, स्लेटी)

स्वास्थ्य_चौड़ाई = स्वयं.खिलाड़ी_स्वास्थ्य / 100 * स्क्रीन_चौड़ाई

आर्केड.ड्रॉ_रेक्टेंगल_फिल्ड (स्वास्थ्य_चौड़ाई // 2, 20,
स्वास्थ्य_चौड़ाई, 20, हरा)

नीचे आउटपुट है:

अतिरिक्त सुविधाओं सहित

आप नीचे दी गई सुविधाओं की तरह अधिक सुविधाओं के साथ स्वास्थ्य प्रणाली को और बेहतर बना सकते हैं।

संख्यात्मक स्वास्थ्य प्रदर्शन

स्वास्थ्य पट्टी के अतिरिक्त, आप शेष स्वास्थ्य को स्क्रीन पर संख्यात्मक मान के रूप में प्रदर्शित कर सकते हैं। यह खिलाड़ी की स्वास्थ्य स्थिति का सटीक संकेत प्रदान करता है। निम्नलिखित कोड को अंदर जोड़ें on_draw() तरीका:

# on_draw() विधि के अंदर
काला = आर्केड.रंग. काला
पाठ = च"स्वास्थ्य: {स्वयं.खिलाड़ी_स्वास्थ्य}"
आर्केड.ड्रॉ_टेक्स्ट (टेक्स्ट, 10, 10, काला, 14)

स्वास्थ्य पावर-अप

स्वास्थ्य पावर-अप पेश करने के लिए, आप विशेष वस्तुएं बना सकते हैं जिनसे टकराने पर खिलाड़ी का स्वास्थ्य बेहतर हो जाता है। आप इस सुविधा को कैसे कार्यान्वित कर सकते हैं इसका एक उदाहरण यहां दिया गया है:

# अद्यतन() विधि के अंदर
अगर आर्केड.चेक_फॉर_कोलिजन (स्वयं.खिलाड़ी, स्व.शक्ति_अप):
स्व.खिलाड़ी_स्वास्थ्य += 20

# गेम से पावर-अप हटाएं
self.power_up.kill()

विभिन्न प्रकार के शत्रु

अपने खेल में गहराई जोड़ने के लिए, आप अलग-अलग प्रकार के दुश्मन पेश कर सकते हैं जो खिलाड़ी को अलग-अलग स्तर की क्षति पहुंचाते हैं। यह एक रणनीतिक तत्व जोड़ता है और अधिक विविध गेमप्ले अनुभवों की अनुमति देता है। इस सुविधा का कार्यान्वयन यहां दिया गया है:

# अद्यतन() विधि के अंदर
अगर आर्केड.चेक_फॉर_कोलिजन (स्वयं.खिलाड़ी, स्वयं.दुश्मन):
अगर स्वयं.शत्रु.प्रकार == "कमज़ोर":
स्व.खिलाड़ी_स्वास्थ्य -= 5
एलिफ़ स्वयं.शत्रु.प्रकार == "मज़बूत":
स्व.खिलाड़ी_स्वास्थ्य -= 20

अपने स्वास्थ्य प्रणाली कार्यान्वयन में इन अतिरिक्त सुविधाओं को शामिल करके, आप अपने खिलाड़ियों के लिए अधिक गतिशील और चुनौतीपूर्ण गेमप्ले अनुभव बना सकते हैं।

स्वास्थ्य प्रणाली के लिए सर्वोत्तम अभ्यास

अपने आर्केड गेम में स्वास्थ्य प्रणाली लागू करते समय, यह सुनिश्चित करने के लिए सर्वोत्तम प्रथाओं का पालन करना महत्वपूर्ण है कि सिस्टम मजबूत और कुशल है। यहां ध्यान में रखने योग्य कुछ सर्वोत्तम अभ्यास दिए गए हैं:

इसे मॉड्यूलर बनाएं

विभिन्न गेम प्रोजेक्टों में इसे मॉड्यूलर और आसानी से पुन: प्रयोज्य बनाए रखने के लिए स्वास्थ्य प्रणाली की कार्यक्षमता को एक अलग वर्ग या मॉड्यूल के भीतर रखें। यह कोड संगठन और चिंताओं को अलग करने को बढ़ावा देता है।

इनपुट सत्यापन और सुरक्षा उपाय

अपने कोड को अमान्य स्वास्थ्य मान निर्दिष्ट करने से रोकने के लिए इनपुट सत्यापन लागू करें। क्षति या उपचार होने पर समान सुरक्षा उपायों को अमान्य स्वास्थ्य मूल्यों से बचाना चाहिए।

सहेजें और लोड तंत्र

एक सेव और लोड तंत्र लागू करें जिसमें खिलाड़ी की स्वास्थ्य स्थिति शामिल हो। यह खिलाड़ियों को खेल से बाहर निकलने के बाद भी, अपने स्वास्थ्य सहित, अपनी प्रगति बरकरार रखते हुए खेल को फिर से शुरू करने की अनुमति देता है।

परीक्षण और त्रुटि प्रबंधन

इसकी शुद्धता और विश्वसनीयता को सत्यापित करने के लिए स्वास्थ्य प्रणाली कार्यान्वयन का पूरी तरह से परीक्षण करें। अपवादों और किनारे के मामलों को प्रभावी ढंग से संभालने के लिए उचित त्रुटि-हैंडलिंग तकनीकों का उपयोग करें।

लगातार स्वास्थ्य प्रतिक्रिया

खिलाड़ी को उनके स्वास्थ्य की स्थिति के बारे में लगातार और स्पष्ट प्रतिक्रिया प्रदान करें। आप ऑडियो प्रभाव जोड़ सकते हैं, दृश्य संकेत, या यहां तक ​​कि हैप्टिक फीडबैक, यह सुनिश्चित करता है कि खिलाड़ी खेल में अपनी स्वास्थ्य स्थिति को जानते हैं और गेमप्ले के दौरान सूचित निर्णय ले सकते हैं।

इन सर्वोत्तम प्रथाओं का पालन करके, आप एक मजबूत और प्रभावी स्वास्थ्य प्रणाली बना सकते हैं जो कोड गुणवत्ता और पठनीयता बनाए रखते हुए आपके आर्केड गेम के गेमप्ले अनुभव को बढ़ाती है।

स्वास्थ्य प्रणाली के साथ खेलों को और अधिक मनोरंजक बनाएं

अपने खेल में स्वास्थ्य प्रणाली जोड़ने से खिलाड़ी के समग्र अनुभव में उल्लेखनीय वृद्धि हो सकती है। यह जोखिम और चुनौती का तत्व पेश करता है, जिससे गेमप्ले अधिक आकर्षक और फायदेमंद हो जाता है।

स्वास्थ्य का एक दृश्य प्रतिनिधित्व खिलाड़ियों को आसानी से उनकी वर्तमान स्थिति का आकलन करने, विसर्जन और रणनीतिक निर्णय लेने में वृद्धि करने की अनुमति देता है।