Есть ответ 👍

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
и ещё скажите где это писать(между какими строчками).

174
368
Посмотреть ответы 2

Ответы на вопрос:

tgdnm
4,7(70 оценок)

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

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(). Это позволит проверять и создавать новые монеты каждый кадр игры.


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

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS