不二如是 发表于 2022-6-6 18:34:19

纪念 1984.06.06 俄罗斯方块发布~

本帖最后由 不二如是 于 2022-6-6 20:59 编辑

在线讲解:

https://www.bilibili.com/video/BV1PW4y1y7Td

《俄罗斯方块》(Тетрис)英文名 Tetris,于 1984 年 6 月 6 日首次发布,风靡全球,没有之一的游戏~



游戏最初由阿列克谢·帕基特诺夫在苏联设计和编写。

此游戏的名称是由希腊语数字“四”的前缀“tetra-”。

所以所有落下方块皆由四块组成。

此外帕基特诺夫最喜欢的运动是网球(“tennis”),所以拼接在一起。

有趣的是,虽然游戏为苏联人发明,但最初为了规避版权,在苏联解体前就已经将其普遍称为“俄罗斯方块”了。

写好一个极简版俄罗斯程序给大家:

# 上方向键-旋转
# 左方向键-左移
# 右方向键-右移
# 下方向键-加速
import pygame
import random

colors = [
    (0, 0, 0),
    (120, 37, 179),
    (100, 179, 179),
    (80, 34, 22),
    (80, 134, 22),
    (180, 34, 22),
    (180, 34, 122),
]


class Figure:
    x = 0
    y = 0

    figures = [
      [, ],
      [, , , ],
      [, , , ],
      [, , , ],
      [],
    ]

    def __init__(self, x, y):
      self.x = x
      self.y = y
      self.type = random.randint(0, len(self.figures) - 1)
      self.color = random.randint(1, len(colors) - 1)
      self.rotation = 0

    def image(self):
      return self.figures

    def rotate(self):
      self.rotation = (self.rotation + 1) % len(self.figures)


class Tetris:
    level = 2
    score = 0
    state = "start"
    field = []
    height = 0
    width = 0
    x = 100
    y = 60
    zoom = 20
    figure = None

    def __init__(self, height, width):
      self.height = height
      self.width = width
      for i in range(height):
            new_line = []
            for j in range(width):
                new_line.append(0)
            self.field.append(new_line)

    def new_figure(self):
      self.figure = Figure(3, 0)
...



完整源码(回复我爱鱼C):**** Hidden Message *****

NieRV 发表于 2022-6-6 21:02:36

我爱鱼C

leletatann 发表于 2022-6-6 21:09:03

我爱C鱼{:10_254:}

追忆浅梦 发表于 2022-6-6 21:10:23

我爱鱼C

pswu 发表于 2022-6-6 21:19:00


我爱鱼C

dudaguo 发表于 2022-6-6 21:42:16

复我爱鱼C

1molHF 发表于 2022-6-6 21:46:21

我爱鱼C

tb5913750_99 发表于 2022-6-6 21:50:14

我爱鱼C

1050293757 发表于 2022-6-6 22:10:28

我爱鱼C

kc1763 发表于 2022-6-6 22:30:43

学到了,学到了

hornwong 发表于 2022-6-6 22:54:03

学到了

2195516122 发表于 2022-6-6 23:38:33

学到了

hrpzcf 发表于 2022-6-7 00:44:45

学到了

zy990106 发表于 2022-6-7 01:02:37

学到了

Max472 发表于 2022-6-7 08:08:43

学到了

peng_python 发表于 2022-6-7 09:32:46

我爱鱼C

marrrsss 发表于 2022-6-7 13:05:07

学到了

marrrsss 发表于 2022-6-7 13:05:42

我爱鱼C

BananaGreened 发表于 2022-6-7 14:33:28

我爱鱼C

tomok 发表于 2022-6-7 16:28:50

学到了
页: [1] 2 3 4 5 6 7
查看完整版本: 纪念 1984.06.06 俄罗斯方块发布~