integrity#
from integrity import Component
from ./settings import settings
from ./blocks import blocks
from ./player import player
main = Component()
function main.on("main"):
if score settings.data.activated obj matches 1:
main.run("active")
function main.on("active"):
as @a at @s:
player.run("main")
function blocks.on("placed_by_player"):
if block ~ ~ ~ stone expand:
say Placed stone!
player.run("placed_stone")
Installation#
The package can be installed with pip
. Note, you must have
both beet
and mecha
installed to use this package.
$ pip install integrity
Getting Started#
To use this package, we must add the plugin to the require
section in the beet
project file alongside with mecha
and
bolt
.
require:
- bolt
- integrity
pipeline:
- mecha
Now that we've enabled integrity
, we can import the module
directly inside a bolt script
from integrity import Component
foo = Component("foo")
Features#
Components
Contributing#
Contributions are welcome. Make sure to first open an issue
discussing the problem or the new feature before creating a
pull request. The project uses poetry
.
$ poetry install
You can run the tests with poetry run pytest
.
$ poetry run pytest
The project must type-check with pyright
.
If you're using VSCode the pylance
extension should report diagnostics automatically. You can also install
the type-checker locally with npm install
and run it from the command-line.
$ npm run watch
$ npm run check
The code follows the black
code style.
Import statements are sorted with isort
.
$ poetry run isort bolt_expressions examples tests
$ poetry run black bolt_expressions examples tests
$ poetry run black --check bolt_expressions examples tests