python-bulletml - BulletML for Python
-------------------------------------
-This module parses and runs BulletML scripts. BulletML is a markup
-language for describing complex bullet patterns in shooting games.
-More information is available at the BulletML homepage,
-http://www.asahi-net.or.jp/~cs8k-cyu/bulletml/index_e.html.
+BulletML is the Bullet Markup Language. BulletML can describe the
+barrage of bullets in shooting games. (For example Progear, Psyvariar,
+Gigawing2, G DARIUS, XEVIOUS, ...) This module parses and executes
+BulletML scripts in Python. All data structures in it are
+renderer-agnostic. A sample renderer for Pygame is included.
-The module code is renderer-agnostic. A sample renderer for Pygame is
-included.
+More information is available at the BulletML homepage,
+http://www.asahi-net.or.jp/~cs8k-cyu/bulletml/index_e.html, or the
+python-bullet homepage, http://code.google.com/p/python-bulletml/.
$ ./bulletml-runner examples/*/*.xml
-Use Page Up and Page Down to switch between bullet definitions.
+Use Page Up and Page Down to switch between bullet definitions, S to
+respawn the bullet pattern, and Enter to restart it.
Installing
License
-------
+The BulletML specification is the work of Kenta Cho.
+
All example BulletML files in the examples folder are released into
the public domain. Everything else is covered by the following
license:
"""BulletML parser.
-This module parses and runs BulletML scripts. BulletML is a markup
-language for describing complex bullet patterns in shooting games.
+BulletML is the Bullet Markup Language. BulletML can describe the
+barrage of bullets in shooting games. (For example Progear, Psyvariar,
+Gigawing2, G DARIUS, XEVIOUS, ...) This module parses and executes
+BulletML scripts in Python. All data structures in it are
+renderer-agnostic.
+
More information is available at the BulletML homepage,
-http://www.asahi-net.or.jp/~cs8k-cyu/bulletml/index_e.html.
+http://www.asahi-net.or.jp/~cs8k-cyu/bulletml/index_e.html, or the
+python-bullet homepage, http://code.google.com/p/python-bulletml/.
Basic Usage:
...
-For drawing, you're on your own, but Bullet has a number of
+For drawing, you're on your own, but Bullet instances have a number of
attributes that can be used to influence it.
"""
from bulletml.errors import Error
from bulletml.expr import NumberDef, INumberDef
+__all_ = ["ParseError", "BulletML"]
+
class ParseError(Error):
"""Raised when an error occurs parsing the XML structure."""
pass
data_files=glob.glob("examples/*/*.xml") + ["examples/template.xml"],
scripts=["bulletml-runner"],
long_description="""\
-This module parses and runs BulletML scripts. BulletML is a markup
-language for describing complex bullet patterns in shooting games.
-More information is available at the BulletML homepage,
-http://www.asahi-net.or.jp/~cs8k-cyu/bulletml/index_e.html.
+BulletML is the Bullet Markup Language. BulletML can describe the
+barrage of bullets in shooting games. (For example Progear, Psyvariar,
+Gigawing2, G DARIUS, XEVIOUS, ...) This module parses and executes
+BulletML scripts in Python. All data structures in it are
+renderer-agnostic. A sample renderer for Pygame is included.
-The module code is renderer-agnostic. A sample renderer for Pygame is
-included.
+More information is available at the BulletML homepage,
+http://www.asahi-net.or.jp/~cs8k-cyu/bulletml/index_e.html, or the
+python-bullet homepage, http://code.google.com/p/python-bulletml/.
"""
)