ПОМОГИТЕ!!! СРОЧНО!

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
Что я делаю не правильно что мой код дает результат но и выдает ошибку? помогите пж!!
Python:
title = "User name:"
count = 1
name = "Vasya"
Lastname = "Mi Mi"
email = "Vasya.Mimi@gmail.com"

columns = ('Фио', 'Емейл', 'Город', 'Тариф', 'Дата регистрации')

data = (["Вася пупкин", "vasya.py@gmail.com", "Москва","Профи+","07.13.2020"],["Джордж Ваш", "vah@gmail.com", "Питер","Новичoк","03.26.2022"],["Ваня Котлета", "meat@gmail.com","Тула","Профи","09.10.2019"])

test = {}
test["vasya"] = 1
test["max"] = 2

print(test["vasya"])

del test["vasya"]

print(test["vasya"])

1643793805003.jpeg

помогите((!
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
под игрой я имел ввиду твою программу, точнее файл game.py (ну или как ты его назвала), а под ее папкой, папку в которой лежит этот файл
а я вроде бы папку под игру не создавала просто код писала? или она авто?
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
под игрой я имел ввиду твою программу, точнее файл game.py (ну или как ты его назвала), а под ее папкой, папку в которой лежит этот файл
я вроде бы папку под игру не создавала? или оно автом?
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
974
220
43
21
Москва
А где файл игры?
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
урааа получилось!! только теперь блоки змеи и яблока лагают сильно.. они лагают прям жуть.. и очки
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
974
220
43
21
Москва
урааа получилось!! только теперь блоки змеи и яблока лагают сильно.. они лагают прям жуть.. и очки
Кинь получившийся код, есть предположение почему лагает, но надо глянуть
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
Кинь получившийся код, есть предположение почему лагает, но надо глянуть
import pygame
from random import randrange

RES = 800
SIZE = 50


x, y = randrange(SIZE, RES - SIZE, SIZE), randrange(SIZE, RES - SIZE, SIZE)
apple = randrange(SIZE, RES - SIZE, SIZE), randrange(SIZE, RES - SIZE, SIZE)
length = 1
snake = [(x, y)]
dx, dy = 0, 0
fps = 60
dirs = {'W': True, 'S': True, 'A': True, 'D': True, }
score = 0
speed_count, snake_speed = 0, 10

pygame.init()
surface = pygame.display.set_mode([RES, RES])
clock = pygame.time.Clock()
font_score = pygame.font.SysFont('Arial', 26, bold=True)
font_end = pygame.font.SysFont('Arial', 66, bold=True)
img = pygame.image.load("car.jpg")
img_rect = img.get_rect(left=0, top=0)

def close_game():
for event in pygame.event.get():
if event.type == pygame.QUIT:
exit()

while True:
surface.blit(img, img_rect)
pygame.display.update()
# drawing snake, apple
[pygame.draw.rect(surface, pygame.Color('green'), (i, j, SIZE - 3, SIZE - 3)) for i, j in snake]
pygame.draw.rect(surface, pygame.Color('red'), (*apple, SIZE, SIZE))
# show score
render_score = font_score.render(f'SCORE: {score}', 1, pygame.Color('orange'))
surface.blit(render_score, (5, 5))
# snake movement
speed_count += 1
if not speed_count % snake_speed:
x += dx * SIZE
y += dy * SIZE
snake.append((x, y))
snake = snake[-length:]
# eating food
if snake[-1] == apple:
apple = randrange(SIZE, RES - SIZE, SIZE), randrange(SIZE, RES - SIZE, SIZE)
length += 1
score += 1
snake_speed -= 1
snake_speed = max(snake_speed, 4)
# game over
if x < 0 or x > RES - SIZE or y < 0 or y > RES - SIZE or len(snake) != len(set(snake)):
while True:
render_end = font_end.render('GAME OVER', 1, pygame.Color('orange'))
surface.blit(render_end, (RES // 2 - 200, RES // 3))
pygame.display.flip()
close_game()

pygame.display.flip()
clock.tick(fps)
close_game()
# controls
key = pygame.key.get_pressed()
if key[pygame.K_w]:
if dirs['W']:
dx, dy = 0, -1
dirs = {'W': True, 'S': False, 'A': True, 'D': True, }
elif key[pygame.K_s]:
if dirs['S']:
dx, dy = 0, 1
dirs = {'W': False, 'S': True, 'A': True, 'D': True, }
elif key[pygame.K_a]:
if dirs['A']:
dx, dy = -1, 0
dirs = {'W': True, 'S': True, 'A': True, 'D': False, }
elif key[pygame.K_d]:
if dirs['D']:
dx, dy = 1, 0
dirs = {'W': True, 'S': True, 'A': False, 'D': True, }
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
974
220
43
21
Москва
1) код как код)
2) Замени
Python:
while True:
    surface.blit(img, img_rect)
    pygame.display.update()
на
Python:
surface.blit(img, img_rect)
while True:
3) У меня почему-то змея стала постоянно удлиняться
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
так снов здрасте.. создаю новую игру, кубик рубика только 3D скачала новое расширение, UrsinaEngine делала по видео уроку, у него кубик рубика а у меня белый экран с платформой? что не так?
Python:
from ursina import *


class Game(Ursina):
    def __init__(self):
        super().__init__()
        window.fullscreen = True
        Entity(model='quad', scale=60, texture='white_cube', texture_scale=(60, 60), rotation_x=90, y=-5,
               color=color.light_gray)  # plane
        Entity(model='sphere', scale=100, texture='textures/sky0', double_sided=True)  # sky
        EditorCamera()
        camera.world_position = (0, 0, -15)
        self.model, self.texture = 'models/custom_cube', 'textures/rubik_texture'
        self.load_game()

    def load_game(self):
        self.create_cube_positions()
        self.CUBES = [Entity(model=self.model, texture=self.texture, position=pos) for pos in self.SIDE_POSITIONS]
        self.PARENT = Entity()
        self.rotation_axes = {'LEFT': 'x', 'RIGHT': 'x', 'TOP': 'y', 'BOTTOM': 'y', 'FACE': 'z', 'BACK': 'z'}
        self.cubes_side_positons = {'LEFT': self.LEFT, 'BOTTOM': self.BOTTOM, 'RIGHT': self.RIGHT, 'FACE': self.FACE,
                                    'BACK': self.BACK, 'TOP': self.TOP}
        self.animation_time = 0.5
        self.action_trigger = True
        self.action_mode = True
        self.message = Text(origin=(0, 19), color=color.black)
        self.toggle_game_mode()
        self.create_sensors()
        self.random_state(rotations=3) # initial state of the cube, rotations - number of side turns

    def random_state(self, rotations=3):
        [self.rotate_side_without_animation(random.choice(list(self.rotation_axes))) for i in range(rotations)]

    def rotate_side_without_animation(self, side_name):
        cube_positions = self.cubes_side_positons[side_name]
        rotation_axis = self.rotation_axes[side_name]
        self.reparent_to_scene()
        for cube in self.CUBES:
            if cube.position in cube_positions:
                cube.parent = self.PARENT
                exec(f'self.PARENT.rotation_{rotation_axis} = 90')

    def create_sensors(self):
        '''detectors for each side, for detecting collisions with mouse clicks'''
        create_sensor = lambda name, pos, scale: Entity(name=name, position=pos, model='cube', color=color.dark_gray,
                                                        scale=scale, collider='box', visible=False)
        self.LEFT_sensor = create_sensor(name='LEFT', pos=(-0.99, 0, 0), scale=(1.01, 3.01, 3.01))
        self.FACE_sensor = create_sensor(name='FACE', pos=(0, 0, -0.99), scale=(3.01, 3.01, 1.01))
        self.BACK_sensor = create_sensor(name='BACK', pos=(0, 0, 0.99), scale=(3.01, 3.01, 1.01))
        self.RIGHT_sensor = create_sensor(name='RIGHT', pos=(0.99, 0, 0), scale=(1.01, 3.01, 3.01))
        self.TOP_sensor = create_sensor(name='TOP', pos=(0, 1, 0), scale=(3.01, 1.01, 3.01))
        self.BOTTOM_sensor = create_sensor(name='BOTTOM', pos=(0, -1, 0), scale=(3.01, 1.01, 3.01))

    def toggle_game_mode(self):
        '''switching view mode or interacting with Rubik's cube'''
        self.action_mode = not self.action_mode
        msg = dedent(f"{'ACTION mode ON' if self.action_mode else 'VIEW mode ON'}"
                     f" (to switch - press middle mouse button)").strip()
        self.message.text = msg

    def toggle_animation_trigger(self):
        '''prohibiting side rotation during rotation animation'''
        self.action_trigger = not self.action_trigger

    def rotate_side(self, side_name):
        self.action_trigger = False
        cube_positions = self.cubes_side_positons[side_name]
        rotation_axis = self.rotation_axes[side_name]
        self.reparent_to_scene()
        for cube in self.CUBES:
            if cube.position in cube_positions:
                cube.parent = self.PARENT
                eval(f'self.PARENT.animate_rotation_{rotation_axis}(90, duration=self.animation_time)')
        invoke(self.toggle_animation_trigger, delay=self.animation_time + 0.11)

    def reparent_to_scene(self):
        for cube in self.CUBES:
            if cube.parent == self.PARENT:
                world_pos, world_rot = round(cube.world_position, 1), cube.world_rotation
                cube.parent = scene
                cube.position, cube.rotation = world_pos, world_rot
        self.PARENT.rotation = 0

    def create_cube_positions(self):
        self.LEFT = {Vec3(-1, y, z) for y in range(-1, 2) for z in range(-1, 2)}
        self.BOTTOM = {Vec3(x, -1, z) for x in range(-1, 2) for z in range(-1, 2)}
        self.FACE = {Vec3(x, y, -1) for x in range(-1, 2) for y in range(-1, 2)}
        self.BACK = {Vec3(x, y, 1) for x in range(-1, 2) for y in range(-1, 2)}
        self.RIGHT = {Vec3(1, y, z) for y in range(-1, 2) for z in range(-1, 2)}
        self.TOP = {Vec3(x, 1, z) for x in range(-1, 2) for z in range(-1, 2)}
        self.SIDE_POSITIONS = self.LEFT | self.BOTTOM | self.FACE | self.BACK | self.RIGHT | self.TOP

    def input(self, key):
        if key in 'mouse1 mouse3' and self.action_mode and self.action_trigger:
            for hitinfo in mouse.collisions:
                collider_name = hitinfo.entity.name
                if (key == 'mouse1' and collider_name in 'LEFT RIGHT FACE BACK' or
                        key == 'mouse3' and collider_name in 'TOP BOTTOM'):
                    self.rotate_side(collider_name)
                    break
        if key == 'mouse2':
            self.toggle_game_mode()
        super().input(key)


if __name__ == '__main__':
    game = Game()
    game.run()
 

Eva

Новичок
Пользователь
Фев 2, 2022
58
3
8
16
1) код как код)
2) Замени
Python:
while True:
    surface.blit(img, img_rect)
    pygame.display.update()
на
Python:
surface.blit(img, img_rect)
while True:
3) У меня почему-то змея стала постоянно удлиняться
забыла поблагодарить! спасибо большое) все получилось и игра работает!
 
  • Мне нравится
Реакции: Vershitel_sudeb

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
974
220
43
21
Москва
Глянь что выводится в консоль, у меня например так:
Код:
warning: missing texture: 'textures/rubik_texture' 
warning: missing model: 'models/custom_cube' 
info: psd-tools3 not installed

1) Нет текстур кубика (ну я их не скачивал, у тебя должны быть)
2) Нет модели кубика (аналогично)
3) Не установлена библиотека psd-tools3 (Там ошибка в релизе библиотеки, она пока не ставится)
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
974
220
43
21
Москва
Кстати ты лучше создавай отдельные темы для вопросов, так и просматривать удобнее, и другие пользователи могут понять что за вопрос по заголовку и ответить
 

Форум IT Специалистов