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.6.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.6.tar.gz.
File metadata
- Download URL: py_fumen_py-0.0.6.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 |
f6efe96a176cd8a03a5c6b0876211a6d5148a46eba59ca22a02faff52bef0826
|
|
| MD5 |
b602d9e2b050d10751fe198d22d3220f
|
|
| BLAKE2b-256 |
37bf3c6586cc0ca575ee97b4f108ae9dfebeba9cfdb50b18afcd260bdd525c32
|
File details
Details for the file py_fumen_py-0.0.6-py3-none-any.whl.
File metadata
- Download URL: py_fumen_py-0.0.6-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 |
ba4f935c98fddcc98a2bc4864923d32206e632cd9e35e9aa8242398f67f37187
|
|
| MD5 |
83aca0f9ae0c9fca3b6834350b644f5d
|
|
| BLAKE2b-256 |
086f02d7997008da5bbc260b5c1566ab211b4d134cbf835d7d7b925fc58da1a9
|