М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
plkg
plkg
19.05.2020 11:21 •  Информатика

Python Как сделать так ,чтобы монеты через время пропадали?
код:
import pygame
import random

pygame.init()

WIDTH = 800
HEIGHT = 600

WHITE = (255, 255, 255)
BLACK = (0, 0, 0)

screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Собери монеты")

coin_images = {
1: pygame.image.load("coin1.png"),
2: pygame.image.load("coin2.png"),
3: pygame.image.load("coin3.png")
}

class Coin(pygame.sprite.Sprite):
def __init__(self, value, x, y):
pygame.sprite.Sprite.__init__(self)
self.value = value
self.image = coin_images[value]
self.rect = self.image.get_rect()
self.rect.center = (x, y)

def update(self):
self.rect.y += 5

all_coins = pygame.sprite.Group ()

score = 0

font = pygame.font.Font(None, 36)

def show_score():
text = font.render("Счет: " + str(score), True, BLACK)
screen.blit(text, (10, 10))

running = True
clock = pygame.time.Clock()

while running:
clock.tick(30)

for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False

if event.type == pygame.MOUSEBUTTONDOWN:
pos = pygame.mouse.get_pos()
clicked_coins = [c for c in all_coins if c.rect.collidepoint(pos)]
for coin in clicked_coins:
score += coin.value
coin.kill()

if random.randint(0, 100) < 3:
value = random.choice([1, 2, 3])
x = random.randint(50, WIDTH - 50)
y = random.randint(-50, -10)
coin = Coin(value, x, y)
all_coins.add(coin)

all_coins.update()

screen.fill(WHITE)

all_coins.draw(screen)

show_score()

pygame.display.flip()

pygame.quit()

там должно быть что-то с time.slip и com_wat
и ещё скажите где это писать(между какими строчками).

👇
Ответ:
59494920948583
59494920948583
19.05.2020

Чтобы монеты пропадали через некоторое время, вам понадобится добавить соответствующую логику в код. Вот измененный код с комментариями, где нужно внести изменения:

import pygame

import random

import time

pygame.init()

# Остальной код

# Добавляем переменную для хранения времени последнего создания монеты

last_coin_spawn_time = time.time()

while running:

   clock.tick(30)

   # Остальной код

   if random.randint(0, 100) < 3 and time.time() - last_coin_spawn_time > 2:

       # Генерируем новую монету только если более 2 секунд с момента последнего создания

       value = random.choice([1, 2, 3])

       x = random.randint(50, WIDTH - 50)

       y = random.randint(-50, -10)

       coin = Coin(value, x, y)

       all_coins.add(coin)

       

       # Обновляем время последнего создания монеты

       last_coin_spawn_time = time.time()

   # Остальной код

pygame.quit()

Объяснение:

В этом коде добавлена переменная last_coin_spawn_time, которая хранит время последнего создания монеты. При каждой проверке на создание новой монеты, мы сравниваем разницу между текущим временем и временем последнего создания. Если больше 2 секунд (или другое значение, которое вам нужно), то создается новая монета.

Вы можете вставить этот блок кода после строки if event.type == pygame.MOUSEBUTTONDOWN: и перед строкой all_coins.update(). Это позволит проверять и создавать новые монеты каждый кадр игры.

4,4(79 оценок)
Открыть все ответы
Ответ:

В курсе информатики при изучении раздела "Алгоритмы и исполнители" рассматривают исполнителя Чертежник.

Чертежник - это виртуальный компьютерный исполнитель, который предназначен для построения рисунков и чертежей на координатной плоскости, и представляет собой перо, которое  может поднимать, опускать и перемещать.

При перемещении опущенного пера за ним остается след.

Среда обитания - часть координатной плоскости (1-я четверть, где х и у - положительны).

Начальное положение Чертежника - точка (0; 0) и перо поднято.

После исполнения программы перо должно быть поднято и и находится в начале координат - точке (0; 0).

Основные команды:

field(m,n) - создать поле размером m×n

topoint(x,y) - переместить перо в точку (х; у)

penup - поднять перо

pendown - опустить перо

onvector(a,b) - сместить перо на вектор (a; b)

m и n - натуральные числа

х и у - целые числа

Подробнее - на -

Объяснение:

4,5(10 оценок)
Ответ:
Polika127
Polika127
19.05.2020

1. MyAddictometer

MyAddictometer покажет, сколько времени отбирает у вас телефон, как часто вы разблокируете экран, сколько сидите в социальных сетях и других приложениях. Результаты можно увидеть на графике и сравнить их с достижениями других пользователей.

2. Social Fever

Благодаря интуитивному интерфейсу разобраться в этой программе не составит труда. Social Fever будет наблюдать за тем, какие приложения вы чаще всего используете. При желании можно выделить для каждого из них определённое время. В конце дня вы получите отчёт о своих успехах и узнаете, сколько времени сэкономили.

3. aTimeLogger

Используйте это приложение, чтобы отследить абсолютно всю активность в течение дня. Благодаря точным и подробным данным вы сможете проанализировать свой распорядок дня и привычки, а потом составить план, чтобы быть более продуктивным на работе и дома.

4,7(78 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ