import arcade WIDTH = 1280 HEIGHT = 800 x = 210 y = 235 SPEED = 270 keys = set() star_x, star_y = 1070, 540 meteor_x, meteor_y = 720, 385 meteor_speed = 200 window = arcade.Window(WIDTH, HEIGHT, "Звезда и Метеор") background = arcade.load_texture("assets/background.png") hero = arcade.load_texture("assets/astronaut.png") star = arcade.load_texture("assets/star.png") meteor = arcade.load_texture("assets/meteor.png") def draw_image(texture, x, y, size): arcade.draw_texture_rect(texture, arcade.XYWH(x, y, size, size)) def draw(): window.clear() arcade.draw_texture_rect(background, arcade.LBWH(0, 0, WIDTH, HEIGHT)) draw_image(hero, x, y, 132) draw_image(star, star_x, star_y, 90) draw_image(meteor, meteor_x, meteor_y, 132) def key_pressed(key, modifiers): keys.add(key) def key_released(key, modifiers): keys.discard(key) def update(delta_time): global x, y global meteor_x, meteor_speed if arcade.key.RIGHT in keys: x += SPEED * delta_time if arcade.key.LEFT in keys: x -= SPEED * delta_time if arcade.key.UP in keys: y += SPEED * delta_time if arcade.key.DOWN in keys: y -= SPEED * delta_time x = max(96, min(1184, x)) y = max(171, min(589, y)) meteor_x += meteor_speed * delta_time if meteor_x > 1110: meteor_x = 1110 meteor_speed = -200 elif meteor_x < 340: meteor_x = 340 meteor_speed = 200 window.on_draw = draw window.on_key_press = key_pressed window.on_key_release = key_released window.on_update = update window.on_deactivate = keys.clear arcade.run()