मैं एक स्पेस शूटर गेम बना रहा हूं जिसकी पृष्ठभूमि में एक ग्रह है। मैंने कुछ ग्रहों को पृष्ठभूमि में खींचने का फैसला किया है और जब मैं दाईं ओर जाता हूं तो ग्रहों को बाईं ओर जाना चाहिए। यानी खिलाड़ी को यह महसूस करना कि अंतरिक्ष यान अंतरिक्ष के चारों ओर घूम रहा है। हालाँकि मैं इसे केवल एक ग्रह के लिए ही कर सकता था। जब अन्य ग्रहों को एक वर्ग में लागू करने का प्रयास किया जाता है तो यह लगातार दूसरे ग्रह में बदल रहा है।

lanetdic = {'planets':[]}
imagestoload = ['Feza/graphs/sprites/saturne.png']
for i in imagestoload:
    img = pg.image.load(i).convert_alpha()
    planetdic['planets'].append(img)

यह स्प्राइट लोड करना है। और नीचे में मैंने ग्रहों के लिए एक वर्ग बनाया है।

class Planets(pg.sprite.Group):
    def __init__(self):
        pg.sprite.Group.__init__(self)
        self.frame = 0
        self.image = planetdic['planets'][self.frame]
        self.rect = self.image.get_rect()
        self.rect.center = (500+100*self.frame,HEIGHT/2)
        self.pos = vec(500,HEIGHT/2)
        self.vel = vec(0,0)
        self.acc = vec(0,0)
    def update(self):
        #self.acc = vec(0,0)
        self.frame = (self.frame + 1)%len(planetdic['planets'])

हो सकता है कि किसी ग्रह के लिए एक वर्ग बनाना समझदारी न हो, लेकिन अगर वहाँ है तो मुझे कोई दूसरा रास्ता नहीं मिल सकता है, कृपया मुझे बताएं।

अगर हम फिर से मुद्दे पर आते हैं। नीचे मैंने छवियों को लोड करने के लिए लूप के लिए बनाया है। और लूप के लिए फिर से उसी का उपयोग किया जाता है

planetdic = {'planets':[]}
    imagestoload = ['Feza/graphs/sprites/saturne.png','Feza/graphs/sprites/jupiter.png','Feza/graphs/sprites/venus.png','Feza/graphs/sprites/uranus.png','Feza/graphs/sprites/neptune.png']
    for i in imagestoload:
        img = pg.image.load(i).convert_alpha()
        planetdic['planets'].append(img)

जब मैं बहु छवियों को लागू करता हूं तो यह मिलीसेकंड में एक से दूसरे में बदल जाता है मैं इसे कैसे रोक सकता हूं। मैं बस हर ग्रह को पृष्ठभूमि में दिखाना चाहता हूं और उन्हें गतिमान करना चाहता हूं।

1
omneer 29 जिंदा 2021, 23:10
"एक वर्ग में एकाधिक स्प्राइट कैसे बनाएं" - आप ऐसा नहीं करते हैं। हालांकि, आप एक वर्ग के अनेक इंस्टेंस ऑब्जेक्ट बना सकते हैं।
 – 
Rabbid76
29 जिंदा 2021, 23:11
ओह हाँ अब यह समझदार है धन्यवाद :)
 – 
omneer
29 जिंदा 2021, 23:18

1 उत्तर

सबसे बढ़िया उत्तर