আমি পাইগাম (পাইথন লাইব্রেরি) দিয়ে তৈরি একটি সাধারণ গেমটি বিকাশের চেষ্টা করছি।
আমার কাছে একটি sprite
অবজেক্ট রয়েছে যা এটি player
এবং আমি এ্যার কী ব্যবহার করে এটি সরিয়ে নিয়েছি। আমি যদি মাউসটি না সরাই, স্প্রাইটটি স্বাভাবিকভাবে সরানো হয় তবে আমি যখন মাউসটি সরিয়ে ফেলি তখন স্প্রাইটটি দ্রুত চলে যায় (x2 বা x3 এর মতো) like player
বস্তুর ভিতরে charsGroup
Var।
আমি ডাব্লু 7 এবং উবুন্টুতে গেমটি চালিয়েছি। উভয় ওএসে একই জিনিস ঘটে।
আমার আরও সত্ত্বা রয়েছে যা এনপিসি এবং বুলেটের মতো চলে তবে তারা প্রভাবিত হয় না, কেবল প্লেয়ার। এটি দিয়েছি, আমি মনে করি যে সমস্যাটির সম্ভবত প্লেয়ার মুভিং সিস্টেমের সাথে সরাসরি সংযোগ রয়েছে (অ্যারো কীগুলি)।
এখানে অবজেক্টের update()
পদ্ধতি player
:
def update(self):
for event in pygame.event.get():
key = pygame.key.get_pressed()
mouseX, mouseY = pygame.mouse.get_pos()
if event.type == pygame.MOUSEBUTTONDOWN:
self.bulletsGroup.add(Bullet(pygame.image.load("bullet.png"),
self.rect.x + (self.image.get_width()/2),
self.rect.y + (self.image.get_height()/2),
mouseX, mouseY, 50, 50))
if key[pygame.K_RIGHT]:
if not self.checkCollision():
self.rect.x += 10
else:
self.rect.x -= 10
if key[pygame.K_LEFT]:
if not self.checkCollision():
self.rect.x -= 10
else:
self.rect.x += 10
if key[pygame.K_UP]:
if not self.checkCollision():
self.rect.y -= 10
else:
self.rect.y += 10
if key[pygame.K_DOWN]:
if not self.checkCollision():
self.rect.y += 10
else:
self.rect.y -= 10
এবং এখানে লুপটি এখানে:
while True:
if PLAYER.healthBase <= 0:
GAMEOVER = True
if not GAMEOVER:
mapTilesGroup.draw(SCREEN)
charsGroup.update()
charsGroup.draw(SCREEN)
npcsGroup.update()
npcsGroup.draw(SCREEN)
drawBullets()
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if GAMEOVER:
myfont = pygame.font.SysFont("monospace", 30)
label = myfont.render("GAME OVER!", 1, (255, 255, 0))
SCREEN.blit(label, (400, 300))
freq.tick(0)
pygame.display.flip()
আমাকে আরও সাহায্য করার জন্য আপনার আর কী প্রয়োজন হতে পারে তা আমি জানি না, তবে আপনার যা কিছু প্রয়োজন (আরও তথ্য বা কোড) কেবল এটির জন্য জিজ্ঞাসা করুন!
BULLET_IMAGE = pygame.image.load("bullet.png")
এবং তারপরেself.bulletsGroup.add(Bullet(BULLET_IMAGE...