第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

無法在pygame中移動(dòng)捕手角色

無法在pygame中移動(dòng)捕手角色

溫溫醬 2022-07-05 15:18:51
試圖制作一個(gè)讓我的接球手接住棒球的游戲。如果棒球被接住,則會(huì)在屏幕頂部隨機(jī)出現(xiàn)一個(gè)新棒球。做出更改后,我似乎無法移動(dòng)捕手。該游戲是通過python和pygame制作的。catch.pyimport sysimport pygamefrom pygame.sprite import Groupfrom settings import Settingsfrom catcher import Catcherfrom baseball import Baseballimport game_functions as gfdef run_game():    """Initializes the game, screen, and settings."""    pygame.init()    ai_settings = Settings()    screen = pygame.display.set_mode((ai_settings.screen_width, ai_settings.screen_height))    pygame.display.set_caption("Catch")    catcher = Group()    baseball = Group()    while True:        gf.check_events(catcher)        gf.update_catcher(ai_settings, screen, catcher)        gf.update_baseball(ai_settings, screen, catcher, baseball)        gf.update_screen(ai_settings, screen, catcher, baseball)run_game()baseball.pyimport pygamefrom pygame.sprite import Spriteclass Baseball(Sprite):    """A class to represent a baseball."""    def __init__(self, ai_settings, screen):        super().__init__()        self.screen = screen        self.ai_settings = ai_settings        # Load the baseball image and set its rect attribute.        self.image = pygame.image.load('images/baseball.bmp')        self.rect = self.image.get_rect()        # Start each new baseball at a random position at the top of the screen.        self.rect.x = self.rect.width        self.rect.y = self.rect.height         # Store the alien's exact position.        self.x = float(self.rect.x)        self.y = float(self.rect.y)    def blitme(self):        """Draw the baseball at tis current location."""        self.screen.blit(self.image, self.rect)    def update(self):        """Dropping the baseball."""        self.y += self.ai_settings.baseball_drop_speed        self.rect.y = self.ycatcher.py
查看完整描述

1 回答

?
慕哥6287543

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超10個(gè)贊

問題是它c(diǎn)atcher是Group而不是的一個(gè)實(shí)例Catcher(Sprite):


catcher = Group()


while True:

   check_events(catcher)

這導(dǎo)致屬性moving_right和分別moving_left設(shè)置為Group對象。check_keydown_eventscheck_keyup_events


您必須更改以下對象的屬性Group:


def check_keydown_events(event, catcher):

    """Respond to keypresses."""

    if event.key == pygame.K_RIGHT:

        for c in catcher:

            c.moving_right = True

    elif event.key == pygame.K_LEFT:

        for c in catcher:

            c.moving_left = True

    elif event.key == pygame.K_q:

        sys.exit()


def check_keyup_events(event, catcher):

    """Respond to key releases."""

    if event.key == pygame.K_RIGHT:

        for c in catcher:

            c.moving_right = False

    elif event.key == pygame.K_LEFT:

        for c in catcher:

            c.moving_left = False


查看完整回答
反對 回復(fù) 2022-07-05
  • 1 回答
  • 0 關(guān)注
  • 103 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號