Python implementation of the JavaScript package 'tetris-fumen'
Project description
py-fumen-py
More Python-ish Python implementation of Knewjade's tetris-fumen
Original project: hsohliyt105's py-fumen
Usage
from py_fumen_py import *
Module
bold namesare automatically imported withfrom py_fumen_py import *
| Name | Description | Importable Names |
|---|---|---|
action |
Codec for action in a fumen string | Action, ActionCodec |
comment |
Codec for comment in a fumen string | CommentCodec |
constant |
Constants used in the project | FieldConstants, FieldConstants110, FumenStringConstants |
field |
Playing field object | Field |
fumen_buffer |
Buffer objects for saved data | FumenBuffer, FumenBufferReader, FumenBufferWriter |
fumen_codec |
The Fumen codec | decode, encode |
js_escape |
escape() ported from JavaScript |
escape, unescape, escaped_compare |
operation |
Tetrimino placement object | Mino, Rotation, Operation |
page |
Page object | Flags, Refs, Page |
quiz |
Quiz object | Quiz |
Example
- Decoding
from py_fumen_py import *
pages = decode('v115@9gQ4EeAtBewhR4CeBtBewhg0Q4CeAtglRpwhi0Aeil?RpwhJeAgWSANxiSASowNE1oo2AzyBUAT5AAA')
for i, page in enumerate(pages):
print(i)
print(page.field)
- Encoding
from py_fumen_py import *
field = Field(
field='\n'.join([
'S_____Z__I',
'SS___ZZ__I',
'JS___ZLOOI',
'JJJ_LLLOOI',
]),
garbage='__________'
)
pages = [Page(
field=field,
operation=None,
comment='MKO you say?',
flags=Flags(),
refs=Refs())
]
print(encode(pages))
Difference Compared with tetris-fumen and py-fumen
- Action encoding and decoding are moved to
action - Comment encoding and decoding are moved to
comment - Added
FieldConstants110toconstantto accomodate for Fumen version110 decoderandencoderare combined into onefumen-codecmodulefieldandinner_fieldare combined into onefieldmodule- Action, comment and field reading/writing are moved to
fumen_buffer - Placement tetrimino
enumobjects are moved tooperation quizworks completely differently (based on this editor instead oftetris-fumen)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
py_fumen_py-0.0.7.tar.gz
(13.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_fumen_py-0.0.7.tar.gz.
File metadata
- Download URL: py_fumen_py-0.0.7.tar.gz
- Upload date:
- Size: 13.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe0a8f526f5d19ca0bf9d738fe2d364091a11f2e8fd6fe422bdeecdd49db7d03
|
|
| MD5 |
923bfe25e2f321582fa3e585025f9707
|
|
| BLAKE2b-256 |
a6ad8bdfcefb9ac8832f0292d59864b3be6b5cb8fcaefcd7fa8e1b1fc607cb43
|
File details
Details for the file py_fumen_py-0.0.7-py3-none-any.whl.
File metadata
- Download URL: py_fumen_py-0.0.7-py3-none-any.whl
- Upload date:
- Size: 16.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9880483ae90129930ecbf06624d58ad6a601af3cb55a7098f66a502f43bf76e6
|
|
| MD5 |
a45336444689377d27744008bcd9621c
|
|
| BLAKE2b-256 |
c1d192b65399940f6a76fb3d9a9d5add088f91ba0df7f2853f6d7db88b0d4982
|