{"id":24091783,"url":"https://github.com/volatile-static/rtt_tetris","last_synced_at":"2025-04-24T01:33:08.779Z","repository":{"id":56027364,"uuid":"308845423","full_name":"volatile-static/rtt_tetris","owner":"volatile-static","description":"Playing tetris on RT-Thread FinSH.","archived":false,"fork":false,"pushed_at":"2020-11-30T12:01:12.000Z","size":71,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-10T07:51:17.061Z","etag":null,"topics":["rt-thread","tetris"],"latest_commit_sha":null,"homepage":"https://packages.rt-thread.org/detail.html?package=tetris","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/volatile-static.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-10-31T09:18:20.000Z","updated_at":"2024-12-20T05:56:41.000Z","dependencies_parsed_at":"2022-08-15T11:40:47.159Z","dependency_job_id":null,"html_url":"https://github.com/volatile-static/rtt_tetris","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/volatile-static%2Frtt_tetris","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/volatile-static%2Frtt_tetris/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/volatile-static%2Frtt_tetris/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/volatile-static%2Frtt_tetris/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/volatile-static","download_url":"https://codeload.github.com/volatile-static/rtt_tetris/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250543888,"owners_count":21447986,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rt-thread","tetris"],"created_at":"2025-01-10T07:44:42.961Z","updated_at":"2025-04-24T01:33:08.730Z","avatar_url":"https://github.com/volatile-static.png","language":"C","readme":"# rtt-tetris\n\n用FinSH玩的俄罗斯方块。\n\n## 简介\n\n将[跨平台俄罗斯方块](https://github.com/volatile-static/CrossPlatformTetris)移植到RT-Thread，可以通过PuTTY或XShell游玩。\n\n![pic](tetris.png)\n\n## API\n\n```shell\nTetris.c\nTetris.h\n```\n\n这两个文件是从[跨平台俄罗斯方块](https://github.com/volatile-static/CrossPlatformTetris)复制过来的。总共只有6个函数接口：\n\n```c\nvoid NewGame(TCmd *Messenger);\nvoid MoveLeft(TCmd *Messenger);\nvoid MoveRight(TCmd *Messenger);\nbool MoveDown(TCmd *Messenger);\nvoid Transform(TCmd *Messenger);\nbool GameOver(void);\n```\n\n每个函数的输出都是一个TCmd结构体，记录了发生变动的方块的坐标。\n\n## 食用方式\n\n在ENV工具的配置方法：\n\n```\n RT-Thread online packages  ---\u003e\n    miscellaneous packages  ---\u003e\n        games: games run on RT-Thread console  ---\u003e\n            [*] Tetris: An indie puzzle video game run on RT-Thread console\n```\n\n在终端下键入：\n\n```shell\nmsh\u003e tetris_demo\n```\n\n即可运行。\n\n\n\n若要改变游戏速度，可以在命令后跟上方块下落的时间间隔，如：\n\n```shell\nmsh \u003etetris_demo 200\n```\n\n表示俄罗斯方块每200毫秒下落一格。\n\n- 在```tetris_demo.c```中有以下宏定义，可以自行修改键位：\n\n```cpp\n#define KEY_UP    ('w')\n#define KEY_LEFT  ('a')\n#define KEY_DOWN  ('s')\n#define KEY_RIGHT ('d')\n```\n\n- 在```Tetris.h```中可以修改画布尺寸：\n\n```cpp\n// Horizon\n#define SizeX 24\n// Vertial\n#define SizeY 32\n```\n\n\n\n## TODO\n\n目前每次下落只能左右移动一格，计划采用多线程实现。\n\n## 联系方式\n\n- QQ：1043064987\n","funding_links":[],"categories":["Packages"],"sub_categories":["Misc"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvolatile-static%2Frtt_tetris","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvolatile-static%2Frtt_tetris","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvolatile-static%2Frtt_tetris/lists"}