本文介绍了多人游戏同时按下多个键的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不确定这是我的编码问题还是我的计算机限制,但我似乎对在两人游戏中按下多个键有问题.按键本身工作正常,我也想要它们,但由于两个玩家可以同时按下 4 个按键(比如 、、和 ) 如果他们都在加速前进并想向左或向右躲避某些东西,那么如果同时按下所有 4 个键,其中一个键似乎对其中一个玩家不起作用.... 如果 player1 释放 'up' (),'left' () 会突然起作用 - 这是同时 player2 正在按向上" () 并说向右 ()

I am not sure if it is my coding or just my computers limitations but I seem to have issue with multiple keys being pressed in a two player game. The keys themselves work correctly and as I want them too, but since two players could be pressing 4 keys simultaneously (say , , and ) if they are both speeding forward and want to dodge something left or right, it seems that one of the keys will not work for one of the players if all 4 are being pressed at same time.... 'left' () will suddenly work if player1 releases 'up' () - this is while simultaneously player2 is pressing 'up' () and say right ()

是否有更好的方法来请求关键事件/按下以使其停止发生,或者我的代码是否正常,也许我的计算机只是滞后?

Is there a better way to ask for key event / pressed for this to stop happening or is my code ok and maybe my computer is just lagging?

keystate1 = pygame.key.get_pressed()
if keystate1[pygame.K_a]:
    self.speedx = -5
if keystate1[pygame.K_d]:
    self.speedx = 5
if keystate1[pygame.K_w]:
    self.speedy = -5
if keystate1[pygame.K.s]:
    self.speedy = 5

同样适用于 player2,除了 [K.LEFT, K.RIGHT, K.UP, K.DOWN]

Same would go for player2 except [K.LEFT, K.RIGHT, K.UP, K.DOWN]

任何帮助将不胜感激

经过进一步测试,当 player1player1 按下 时,它似乎只会发生在 player1 上.player2 同时按下 ( & )...然后 player1 不会移动除非 player1 放开 或 player2 放开 .它根本不影响 player2(、、、) 或 player1 的任何其他方向,除了左 ?

Upon further testing it only seems to happen to player1 pressing when both player1 & player2 are pressing up ( & ) at same time... then player1 won't move left unless player1 lets go of or player2 lets go of .It doesn't affect player2 at all (, , , ) or any other direction of player1 except left ?

推荐答案

这是您键盘的硬件限制.由于它们的制造方式,它们中的大多数将无法注册同时按下的 4 个非修饰键

This is a hardware limitation of your keyboard. Most of them will not be able to register 4 non-modifier keys being pressed at the same time due to the way they are manufactured

这篇关于多人游戏同时按下多个键的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-13 15:21