2 डी प्लेटफ़ॉर्मर के लिए वॉल जंप


14

मैं अपने xna गेम में दीवार-कूद को लागू करने का एक तरीका ढूंढ रहा हूं, लेकिन मुझे इसके बारे में कोई जानकारी नहीं मिल रही है, क्या कोई व्यक्ति कृपया मेरी मदद कर सकता है?

जवाबों:


21

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


3
मुझे लगता है कि आपको पहले वाक्य को संशोधित करने की आवश्यकता है: "जब कोई खिलाड़ी दीवार से टकराता है (जब वे कूद रहे होते हैं) ..." अन्यथा खिलाड़ी दीवार के बगल में जमीन पर स्थिर होने से कूद सकता है, जो नहीं होगा अपेक्षित होना।
सिस्कोआईपीफोन

@ सिस्कोपफोन: हाँ, धन्यवाद। यह टकराव के बाद और बाद में 100 एमएस के बीच व्यवहार का एक अजीब परिवर्तन पैदा करेगा।
अराजकता

2

मैंने ईमानदारी से सिर्फ एक बिंदु की जाँच की होगी। इसलिए:

if (falling AND left_key_pressed AND !point_free(x-1,y))
    doWallJump

आप y + sprite_width / 2 (या - अपने समन्वय प्रणाली के आधार पर) कहने के लिए y को बदलना चाह सकते हैं ताकि यह शीर्ष (या नीचे) के बजाय आपके स्प्राइट के मध्य के बाईं ओर जांच करे। इस तरह से दीवार कूद (अंतिम पैराग्राफ) के लिए एन औजार दीवार की जांच करता है

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

एक अन्य दृष्टिकोण का उल्लेख नहीं है सुपर Metroid है। उस गेम में जब आप एक दीवार के खिलाफ होते हैं, यदि आप उस दीवार को बहुत ही कम "हिलने वाली दीवार" से हटाते हैं, तो एनीमेशन चलेगा। यदि आप उस एनीमेशन के दौरान कूदते हैं, तो आप एक दीवार कूद करेंगे। (सुपर Metroid भी दीवार कूदता का उपयोग करके एक खिलाड़ी को एक दीवार पर चढ़ने की अनुमति देता है, लेकिन इसके लिए थोड़ा कौशल की आवश्यकता होती है (वास्तव में सुपर Metroid में दीवार कूदने के बारे में सब कुछ कौशल की एक निष्पक्ष आवश्यकता होती है ...)।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.