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

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

使用 key.get_pressed() 的鍵事件問題

使用 key.get_pressed() 的鍵事件問題

侃侃無極 2023-04-11 15:29:45
我有一輛車,我想向左/向右/向上/向下移動,但也要沿對角線移動。前四個(gè)效果很好,但是當(dāng)我讓它沿對角線移動時(shí),圖像并沒有改變。keys = pg.key.get_pressed()if keys[pg.K_LEFT] or keys[pg.K_q]:    van.state = VAN_LEFT    screen.acceleration.x = screen.vitesseif keys[pg.K_UP] or keys[pg.K_z]:    van.state = VAN_UP    screen.acceleration.y = screen.vitesseif (keys[pg.K_LEFT] or keys[pg.K_q]) and (keys[pg.K_UP] or keys[pg.K_z]):    van.state = VAN_LEFT_UP    screen.acceleration.x = screen.vitesse    screen.acceleration.y = screen.vitesse如果我在主循環(huán)中添加print(van.state),它永遠(yuǎn)不會是 van_left_up。有誰知道我做錯了什么?
查看完整描述

2 回答

?
桃花長相依

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

我終于找到了如何讓它工作。這可能不是最好的解決方案,但它完全符合我的要求。相反,或者只有if keys[pygame.K_UP]and if keys[pygame.K_LEFT],我這樣寫:


if keys[pygame.K_UP] and not keys[pygame.K_LEFT]:

    ...

if keys[pygame.K_LEFT] and not keys[pygame.K_UP]:

    ...

if keys[pygame.K_LEFT] and keys[pygame.K_UP]:

    ...

所以它知道我當(dāng)時(shí)按下了兩個(gè)鍵。感謝那些試圖幫助我的人!


查看完整回答
反對 回復(fù) 2023-04-11
?
PIPIONE

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

根據(jù)評論討論,這段代碼應(yīng)該可以工作。首先檢查是否按下了兩個(gè)鍵,然后檢查是否按下了各個(gè)鍵。


keys = pg.key.get_pressed()


if (keys[pg.K_LEFT] or keys[pg.K_q]) and (keys[pg.K_UP] or keys[pg.K_z]):

    van.state = VAN_LEFT_UP

    screen.acceleration.x = screen.vitesse

    screen.acceleration.y = screen.vitesse

    

elif keys[pg.K_LEFT] or keys[pg.K_q]:

    van.state = VAN_LEFT

    screen.acceleration.x = screen.vitesse


elif keys[pg.K_UP] or keys[pg.K_z]:

    van.state = VAN_UP

    screen.acceleration.y = screen.vitesse


查看完整回答
反對 回復(fù) 2023-04-11
  • 2 回答
  • 0 關(guān)注
  • 220 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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