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

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

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

शुरू करने से पहले, सुनिश्चित करें कि आपके पास है आपके सिस्टम पर पाइप स्थापित है. इंस्टॉल करने के लिए इस कमांड का उपयोग करें pygame पुस्तकालय:

पिप इंस्टाल पायगेम

इसके बाद नाम की एक फाइल बनाएं Simple-game.py और एक सरल गेम बनाकर शुरुआत करें जहां खिलाड़ी बाएं और दाएं घूम सकता है।

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

इस बुनियादी गेम लूप में, खिलाड़ी का उद्देश्य दुश्मन से टकराने से बचना होगा।

आयात pygame
आयात अनियमित

# PyGame प्रारंभ करें
pygame.init()

# गेम विंडो सेट करें
विंडो_चौड़ाई, विंडो_ऊंचाई = 800, 600
विंडो = pygame.display.set_mode((window_width, window_height))

instagram viewer

pygame.display.set_caption("स्वास्थ्य प्रणाली डेमो")

# खिलाड़ी विशेषताएँ
खिलाड़ी_चौड़ाई, खिलाड़ी_ऊंचाई = 50, 50
प्लेयर_एक्स, प्लेयर_वाई = विंडो_विड्थ // 2, विंडो_हाइट - प्लेयर_हाइट - 10
प्लेयर_स्पीड = 1

#शत्रु गुण
शत्रु_चौड़ाई, शत्रु_ऊंचाई = 50, 50
शत्रु_x, शत्रु_y = यादृच्छिक.randint(0, विंडो_विड्थ - शत्रु_विड्थ), 0
शत्रु_गति = 0.3

# गेम लूप
दौड़ना= सत्य
जबकि दौड़ना:
के लिए आयोजन में pygame.event.get():
अगर इवेंट.प्रकार == pygame. छोड़ना:
दौड़ना= असत्य

# प्लेयर को बाएँ या दाएँ घुमाएँ
कुंजी = pygame.key.get_pressed()
अगर चाबियाँ[pygame. K_LEFT] और प्लेयर_एक्स > 0:
प्लेयर_एक्स - = प्लेयर_स्पीड
अगर चाबियाँ[pygame. K_RIGHT] और प्लेयर_एक्स प्लेयर_एक्स += प्लेयर_स्पीड

#शत्रु को नीचे की ओर ले जाएँ
शत्रु_य += शत्रु_गति

# गेम ऑब्जेक्ट बनाएं
विंडो.फिल((0, 0, 0)) # स्क्रीन साफ़ करें
pygame.draw.rect (विंडो, (255, 0, 0),
(प्लेयर_एक्स, प्लेयर_वाई,
खिलाड़ी_चौड़ाई, खिलाड़ी_ऊंचाई))
pygame.draw.rect (विंडो, (0, 255, 0),
(शत्रु_x, शत्रु_y,
शत्रु_चौड़ाई, शत्रु_ऊंचाई)) # दुश्मन को खींचो
pygame.display.update()

pygame.छोड़ें()

कोड चलाएँ, और आपको प्लेयर कैरेक्टर वाली एक विंडो दिखाई देगी जिसे आप बाएँ और दाएँ तीर कुंजियों का उपयोग करके नियंत्रित कर सकते हैं।

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

प्रारंभिक खिलाड़ी के स्वास्थ्य को 100 पर सेट करें, अधिकतम स्वास्थ्य को 100 के रूप में परिभाषित करें, और दुश्मन की क्षति को 20 पर सेट करें। इन मानों को आपके गेम की विशिष्ट आवश्यकताओं के अनुसार समायोजित किया जा सकता है।

#खिलाड़ियों का स्वास्थ्य
खिलाड़ी_स्वास्थ्य = 100
अधिकतम_स्वास्थ्य = 100
शत्रु_क्षति= 20

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

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

जांचें कि क्या कोई है खिलाड़ी के बीच टकराव और शत्रु को उनकी सीमाबद्ध आयतों की तुलना करके। यदि टक्कर का पता चलता है, तो खिलाड़ी के स्वास्थ्य से दुश्मन की क्षति का मूल्य घटा दें।

इसके अतिरिक्त, यदि खिलाड़ी स्क्रीन के शीर्ष से हट जाता है (खिलाड़ी_y <0), उनके स्वास्थ्य में 10 जोड़ें और सुनिश्चित करें कि यह अधिकतम स्वास्थ्य से अधिक न हो। यह एक हीलिंग मैकेनिक बनाता है और खिलाड़ी की स्थिति को स्क्रीन के नीचे रीसेट कर देता है।

नामक एक नई फ़ाइल बनाएँ क्षति-और-उपचार.py और नीचे दिए गए अपडेट के साथ कोड जोड़ें:

# गेम लूप के अंदर, दुश्मन की स्थिति को अपडेट करने के बाद
# खिलाड़ी और दुश्मन के बीच टकराव का पता लगाएं
अगर प्लेयर_एक्स < शत्रु_एक्स + शत्रु_चौड़ाई और \
प्लेयर_एक्स + प्लेयर_विड्थ > शत्रु_एक्स और \
खिलाड़ी_y < शत्रु_y + शत्रु_ऊंचाई \
और खिलाड़ी_y + खिलाड़ी_ऊंचाई > शत्रु_y:
खिलाड़ी_स्वास्थ्य - = शत्रु_नुकसान
प्रिंट करें (खिलाड़ी_स्वास्थ्य)

# जब खिलाड़ी स्क्रीन से हट जाएं तो उन्हें ठीक करें
अगर प्लेयर_वाई < 0:
खिलाड़ी_स्वास्थ्य += 10
प्रिंट करें (खिलाड़ी_स्वास्थ्य)
अगर खिलाड़ी_स्वास्थ्य > अधिकतम_स्वास्थ्य:
खिलाड़ी_स्वास्थ्य = अधिकतम_स्वास्थ्य
प्लेयर_वाई = विंडो_हाइट - प्लेयर_हाइट - 10

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

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

खिलाड़ी की मृत्यु और गेम-ओवर परिदृश्यों को संभालने के लिए, आपको यह जांचना होगा कि क्या खिलाड़ी का स्वास्थ्य शून्य तक पहुंच गया है। यदि ऐसा होता है, तो a प्रदर्शित करें खेल खत्म संदेश भेजें और खेल पुनः आरंभ करें।

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

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

# खिलाड़ी की स्थिति अपडेट करने के बाद

# जाँच करें कि क्या खिलाड़ी का स्वास्थ्य शून्य तक पहुँच गया है
अगर खिलाड़ी_स्वास्थ्य <= 0:
प्रिंट("खेल खत्म")
खिलाड़ी_स्वास्थ्य = अधिकतम_स्वास्थ्य
प्लेयर_एक्स = विंडो_विड्थ // 2
प्लेयर_वाई = विंडो_हाइट - प्लेयर_हाइट - 10

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

स्वास्थ्य प्रणाली को और बेहतर बनाने के लिए, आप अतिरिक्त सुविधाएँ शामिल कर सकते हैं। नीचे एक उदाहरण है:

पावर अप

पावर-अप की विशेषताओं को परिभाषित करें, जैसे कि इसके आयाम और स्थिति। साथ ही, एक स्वास्थ्य मान भी सेट करें जो पावर-अप से टकराने पर खिलाड़ी को प्राप्त होगा।

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

नामक एक नई फ़ाइल बनाएँ Power-up.py और नीचे दिए गए अपडेट के साथ कोड जोड़ें:

# पावर-अप विशेषताओं को परिभाषित करें
पॉवर_अप_विड्थ, पॉवर_अप_हाइट = 30, 30
पॉवर_अप_एक्स, पॉवर_अप_वाई = 200,200
पॉवर_अप_हेल्थ_वैल्यू = 50

# गेम लूप के अंदर, खिलाड़ी की स्थिति अपडेट करने के बाद
# प्लेयर और पावर-अप के बीच टकराव का पता लगाएं
अगर प्लेयर_एक्स < पावर_अप_एक्स + पावर_अप_विड्थ और\
प्लेयर_एक्स + प्लेयर_विड्थ > पावर_अप_एक्स \
और प्लेयर_वाई < पावर_अप_वाई + पावर_अप_हाइट\
और प्लेयर_वाई + प्लेयर_हाइट > पावर_अप_वाई:
प्लेयर_हेल्थ += पावर_अप_हेल्थ_वैल्यू
अगर खिलाड़ी_स्वास्थ्य > अधिकतम_स्वास्थ्य:
खिलाड़ी_स्वास्थ्य = अधिकतम_स्वास्थ्य
पॉवर_अप_एक्स, पॉवर_अप_वाई = 200,200

# पावर-अप ऑब्जेक्ट बनाएं
pygame.draw.rect (विंडो, (0, 0, 255),
(पावर_अप_एक्स, पावर_अप_वाई,
पॉवर_अप_विड्थ,
पॉवर_अप_हाइट))

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

प्रत्येक अतिरिक्त सुविधा के लिए, आप आवश्यक चर और स्थिरांक को परिभाषित कर सकते हैं, और गेम लूप के भीतर संबंधित यांत्रिकी को लागू कर सकते हैं।

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

PyGame में स्वास्थ्य प्रणाली लागू करते समय, निम्नलिखित सर्वोत्तम प्रथाओं को ध्यान में रखें:

इवेंट-संचालित सिस्टम लागू करें

गेम लूप के भीतर टकराव या स्वास्थ्य परिवर्तनों की लगातार जाँच करने के बजाय, इवेंट-संचालित सिस्टम का उपयोग करने पर विचार करें। PyGame इवेंट-हैंडलिंग क्षमताएं प्रदान करता है, जिससे आप विशिष्ट घटनाओं, जैसे टकराव की घटनाओं या पावर-अप पिकअप इवेंट के आधार पर स्वास्थ्य-संबंधी कार्रवाइयों को ट्रिगर कर सकते हैं।

स्वास्थ्य मूल्यों को संतुलित करें

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

राय देने

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

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

हेल्थ बार के साथ गेम्स को और अधिक आकर्षक बनाएं

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