本文整理汇总了Python中pygame.K_DOWN属性的典型用法代码示例。如果您正苦于以下问题:Python pygame.K_DOWN属性的具体用法?Python pygame.K_DOWN怎么用?Python pygame.K_DOWN使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类pygame
的用法示例。
在下文中一共展示了pygame.K_DOWN属性的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: update
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def update(self):
pg.display.set_caption(str((self.rect.x, self.rect.y)))
self.vx, self.vy = 0, 0
keys = pg.key.get_pressed()
if keys[pg.K_UP]:
self.vy = -5
if keys[pg.K_DOWN]:
self.vy = 5
if keys[pg.K_LEFT]:
self.vx = -5
if keys[pg.K_RIGHT]:
self.vx = 5
# if self.vx != 0 and self.vy != 0:
# self.vx *= 0.7071
# self.vy *= 0.7071
self.rect.x += self.vx
if pg.sprite.spritecollide(self, walls, False, pg.sprite.collide_mask):
self.rect.x -= self.vx
self.rect.y += self.vy
if pg.sprite.spritecollide(self, walls, False, pg.sprite.collide_mask):
self.rect.y -= self.vy
示例2: get_keys
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def get_keys(self):
self.rot_speed = 0
self.vel = vec(0, 0)
keys = pg.key.get_pressed()
if keys[pg.K_LEFT] or keys[pg.K_a]:
self.rot_speed = PLAYER_ROT_SPEED
if keys[pg.K_RIGHT] or keys[pg.K_d]:
self.rot_speed = -PLAYER_ROT_SPEED
if keys[pg.K_UP] or keys[pg.K_w]:
self.vel = vec(PLAYER_SPEED, 0).rotate(-self.rot)
if keys[pg.K_DOWN] or keys[pg.K_s]:
self.vel = vec(-PLAYER_SPEED / 2, 0).rotate(-self.rot)
if keys[pg.K_SPACE]:
now = pg.time.get_ticks()
if now - self.last_shot > BULLET_RATE:
self.last_shot = now
dir = vec(1, 0).rotate(-self.rot)
pos = self.pos + BARREL_OFFSET.rotate(-self.rot)
Bullet(self.game, pos, dir)
self.vel = vec(-KICKBACK, 0).rotate(-self.rot)
示例3: events
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def events(self):
# catch all events here
for event in pg.event.get():
if event.type == pg.QUIT:
self.quit()
if event.type == pg.KEYDOWN:
if event.key == pg.K_ESCAPE:
self.quit()
if event.key == pg.K_LEFT:
self.player.move(dx=-1)
if event.key == pg.K_RIGHT:
self.player.move(dx=1)
if event.key == pg.K_UP:
self.player.move(dy=-1)
if event.key == pg.K_DOWN:
self.player.move(dy=1)
示例4: _map_keys
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def _map_keys(self):
key_map = self.io.key_map
key_map[imgui.KEY_TAB] = pygame.K_TAB
key_map[imgui.KEY_LEFT_ARROW] = pygame.K_LEFT
key_map[imgui.KEY_RIGHT_ARROW] = pygame.K_RIGHT
key_map[imgui.KEY_UP_ARROW] = pygame.K_UP
key_map[imgui.KEY_DOWN_ARROW] = pygame.K_DOWN
key_map[imgui.KEY_PAGE_UP] = pygame.K_PAGEUP
key_map[imgui.KEY_PAGE_DOWN] = pygame.K_PAGEDOWN
key_map[imgui.KEY_HOME] = pygame.K_HOME
key_map[imgui.KEY_END] = pygame.K_END
key_map[imgui.KEY_DELETE] = pygame.K_DELETE
key_map[imgui.KEY_BACKSPACE] = pygame.K_BACKSPACE
key_map[imgui.KEY_ENTER] = pygame.K_RETURN
key_map[imgui.KEY_ESCAPE] = pygame.K_ESCAPE
key_map[imgui.KEY_A] = pygame.K_a
key_map[imgui.KEY_C] = pygame.K_c
key_map[imgui.KEY_V] = pygame.K_v
key_map[imgui.KEY_X] = pygame.K_x
key_map[imgui.KEY_Y] = pygame.K_y
key_map[imgui.KEY_Z] = pygame.K_z
示例5: get_keys
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def get_keys(self):
self.rot_speed = 0
self.vel = vec(0, 0)
keys = pg.key.get_pressed()
if keys[pg.K_LEFT] or keys[pg.K_a]:
self.rot_speed = PLAYER_ROT_SPEED
if keys[pg.K_RIGHT] or keys[pg.K_d]:
self.rot_speed = -PLAYER_ROT_SPEED
if keys[pg.K_UP] or keys[pg.K_w]:
self.vel = vec(PLAYER_SPEED, 0).rotate(-self.rot)
if keys[pg.K_DOWN] or keys[pg.K_s]:
self.vel = vec(-PLAYER_SPEED / 2, 0).rotate(-self.rot)
if keys[pg.K_SPACE]:
now = pg.time.get_ticks()
if now - self.last_shot > BULLET_RATE:
self.last_shot = now
dir = vec(1, 0).rotate(-self.rot)
pos = self.pos + BARREL_OFFSET.rotate(-self.rot)
Bullet(self.game, pos, dir)
self.vel = vec(-KICKBACK, 0).rotate(-self.rot)
MuzzleFlash(self.game, pos)
示例6: update
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def update(self):
self.vx, self.vy = 0, 0
keystate = pg.key.get_pressed()
if keystate[pg.K_UP]:
self.vy = -5
if keystate[pg.K_DOWN]:
self.vy = 5
if keystate[pg.K_LEFT]:
self.vx = -2
if keystate[pg.K_RIGHT]:
self.vx = 1
if self.vx != 0 and self.vy != 0:
self.vx /= 1.414
self.vy /= 1.414
self.rect.x += self.vx
self.rect.y += self.vy
示例7: update
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def update(self):
self.acc = vec(0, 0)
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
self.acc.x = -0.2
if keys[pygame.K_RIGHT]:
self.acc.x = 0.2
if keys[pygame.K_UP]:
self.acc.y = -0.2
if keys[pygame.K_DOWN]:
self.acc.y = 0.2
self.vel += self.acc
self.pos += self.vel + 0.5 * self.acc
if self.pos.x > WIDTH:
self.pos.x = 0
if self.pos.x < 0:
self.pos.x = WIDTH
if self.pos.y > HEIGHT:
self.pos.y = 0
if self.pos.y < 0:
self.pos.y = HEIGHT
self.rect.center = self.pos
示例8: _handleKeypress
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def _handleKeypress(self, key):
if self._clicked == None or self._moveEvent == None:
return False
column = self._clicked[0]
row = self._clicked[1]
target = None
if key == pygame.K_LEFT:
if column > 0:
target = (column-1, row)
elif key == pygame.K_RIGHT:
if column < self._map.cols - 1:
target = (column+1, row)
elif key == pygame.K_UP:
if row > 0:
target = (column, row-1)
elif key == pygame.K_DOWN:
if row < self._map.rows - 1:
target = (column, row+1)
if target != None:
self._moveEvent(self._clicked, target)
self._clicked = target
示例9: __human_control
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def __human_control(self, key):
if self.human_control:
robot = self.robots[self.human_control_robot]
if key == pygame.K_LEFT:
robot.move(GlobalConstants.LEFT_ACTION, self.sprites)
if key == pygame.K_RIGHT:
robot.move(GlobalConstants.RIGHT_ACTION, self.sprites)
if key == pygame.K_UP:
robot.move(GlobalConstants.UP_ACTION, self.sprites)
if key == pygame.K_DOWN:
robot.move(GlobalConstants.DOWN_ACTION, self.sprites)
if key == pygame.K_a:
reward = robot.move(GlobalConstants.FIRE_ACTION, self.sprites)
if reward > 0:
self.rewards[self.human_control_robot].append(reward)
self.total_score[self.human_control_robot] += reward
示例10: handle_continuous_action_event
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def handle_continuous_action_event(cls, action_type: ContinuousAction, event: pygame.event.EventType) -> None:
action = action_type.last_action.copy()
steering_index = action_type.space().shape[0] - 1
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_RIGHT and action_type.lateral:
action[steering_index] = 0.7
if event.key == pygame.K_LEFT and action_type.lateral:
action[steering_index] = -0.7
if event.key == pygame.K_DOWN and action_type.longitudinal:
action[0] = -0.7
if event.key == pygame.K_UP and action_type.longitudinal:
action[0] = 0.7
elif event.type == pygame.KEYUP:
if event.key == pygame.K_RIGHT and action_type.lateral:
action[steering_index] = 0
if event.key == pygame.K_LEFT and action_type.lateral:
action[steering_index] = 0
if event.key == pygame.K_DOWN and action_type.longitudinal:
action[0] = 0
if event.key == pygame.K_UP and action_type.longitudinal:
action[0] = 0
action_type.act(action)
示例11: keydown
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def keydown(self, key):
""" Update velocities based on key pressed
Arguments:
key: pygame key
"""
if key == pygame.K_UP: # set forward velocity
self.for_back_velocity = S
elif key == pygame.K_DOWN: # set backward velocity
self.for_back_velocity = -S
elif key == pygame.K_LEFT: # set left velocity
self.left_right_velocity = -S
elif key == pygame.K_RIGHT: # set right velocity
self.left_right_velocity = S
elif key == pygame.K_w: # set up velocity
self.up_down_velocity = S
elif key == pygame.K_s: # set down velocity
self.up_down_velocity = -S
elif key == pygame.K_a: # set yaw counter clockwise velocity
self.yaw_velocity = -S
elif key == pygame.K_d: # set yaw clockwise velocity
self.yaw_velocity = S
示例12: keyup
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def keyup(self, key):
""" Update velocities based on key released
Arguments:
key: pygame key
"""
if key == pygame.K_UP or key == pygame.K_DOWN: # set zero forward/backward velocity
self.for_back_velocity = 0
elif key == pygame.K_LEFT or key == pygame.K_RIGHT: # set zero left/right velocity
self.left_right_velocity = 0
elif key == pygame.K_w or key == pygame.K_s: # set zero up/down velocity
self.up_down_velocity = 0
elif key == pygame.K_a or key == pygame.K_d: # set zero yaw velocity
self.yaw_velocity = 0
elif key == pygame.K_t: # takeoff
self.tello.takeoff()
self.send_rc_control = True
elif key == pygame.K_l: # land
not self.tello.land()
self.send_rc_control = False
示例13: handle_event
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def handle_event(self, event):
if event.type == pygame.QUIT:
game_over = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
self.update('left')
if event.key == pygame.K_RIGHT:
self.update('right')
if event.key == pygame.K_UP:
self.update('up')
if event.key == pygame.K_DOWN:
self.update('down')
if event.type == pygame.KEYUP:
if event.key == pygame.K_LEFT:
self.update('stand_left')
if event.key == pygame.K_RIGHT:
self.update('stand_right')
if event.key == pygame.K_UP:
self.update('stand_up')
if event.key == pygame.K_DOWN:
self.update('stand_down')
示例14: take_action
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def take_action(self, observations):
assert len(observations) == 1, 'Keyboard does not support multiple player control'
if not self._init_done:
self._init_done = True
pygame.display.set_mode((1, 1), pygame.NOFRAME)
active_buttons = {}
for event in event_queue.get('keyboard'):
if event.type == pygame.KEYDOWN:
actions = KEY_TO_ACTIONS.get(event.key, [])
for a in actions:
active_buttons[a] = 1
keys = pygame.key.get_pressed()
left = keys[pygame.K_LEFT]
right = keys[pygame.K_RIGHT]
top = keys[pygame.K_UP]
bottom = keys[pygame.K_DOWN]
for key, actions in KEY_TO_ACTIONS.items():
if keys[key]:
for a in actions:
active_buttons[a] = 1
return self.get_env_action(left, right, top, bottom, active_buttons)
示例15: update
# 需要导入模块: import pygame [as 别名]
# 或者: from pygame import K_DOWN [as 别名]
def update(self, keys):
"""
Update arrow position.
"""
if self.allow_input:
if keys[pg.K_DOWN] and not keys[pg.K_UP] and self.index == 0:
self.index = 1
self.allow_input = False
self.notify(c.CLICK)
elif keys[pg.K_UP] and not keys[pg.K_DOWN] and self.index == 1:
self.index = 0
self.allow_input = False
self.notify(c.CLICK)
self.rect.y = self.pos_list[self.index]
if not keys[pg.K_DOWN] and not keys[pg.K_UP]:
self.allow_input = True