Reference
Complete documentation for McRogueFace systems and objects.
Systems
High-level guides explaining how McRogueFace’s major systems work together.
| System |
Description |
| Scene System |
Windows, scenes, frames, and UI rendering |
| Grid System |
Tile-based worlds, layers, FOV, and pathfinding |
| Input & Callbacks |
Keyboard, mouse, and timer events |
| Animation |
Smooth transitions with easing functions |
| Procedural Generation |
HeightMaps, BSP, and noise generation |
Objects
Detailed reference for every McRogueFace object.
Scene System Objects
| Object |
Description |
| Window |
The application window singleton |
| Scene |
Container for UI elements and game state |
| Frame |
Rectangular container with background |
| Caption |
Text rendering |
| Sprite |
Single sprite rendering |
| Arc |
Arc/pie shape drawing |
| Circle |
Circle shape drawing |
| Line |
Line drawing |
| Drawable |
Base class for all drawable elements |
Asset Objects
| Object |
Description |
| Font |
Font loading and management |
| Texture |
Sprite sheet loading |
| Color |
RGBA color representation |
| Vector |
2D vector for positions and sizes |
Grid System Objects
| Object |
Description |
| Grid |
Tile-based game world |
| GridPoint |
Individual tile data (walkable, transparent) |
| Entity |
Game objects that exist on grids (per-entity FOV memory via perspective_map) |
| TileLayer |
Tile sprite layer for grids |
| ColorLayer |
Color overlay layer for grids |
Pathfinding Objects
| Object |
Description |
| AStarPath |
A* pathfinding result |
| DijkstraMap |
Distance field from a root position |
| FOV |
Field of view algorithm enum |
| Object |
Description |
| Timer |
Scheduled callbacks |
| Key |
Keyboard key enum |
| Keyboard |
Keyboard state queries |
| Mouse |
Mouse state and position |
| MouseButton |
Mouse button enum |
| InputState |
Input event state enum (pressed/released) |
Animation Objects
| Object |
Description |
| Animation |
Animation handle returned by drawable.animate() (mcrfpy.Animation is not directly constructible) |
| Easing |
Easing function enum |
| Transition |
Scene transition enum |
| Alignment |
UI element alignment enum |
Procedural Generation Objects
| Object |
Description |
| NoiseSource |
Coherent noise generation (Perlin, Simplex, etc.) |
| HeightMap |
2D height field for terrain generation |
| BSP |
Binary space partitioning for dungeon generation |
| Traversal |
BSP tree traversal order enum |
Audio Objects
| Object |
Description |
| Music |
Background music playback |
| Sound |
Sound effect playback |
Module Attributes
| Attribute |
Type |
Description |
current_scene |
Scene |
Get or set the active scene: mcrfpy.current_scene = mcrfpy.Scene("gameplay") |
scenes |
tuple[str] |
Read-only tuple of all scene names |
default_font |
Font |
JetBrains Mono font, always available |
default_texture |
Texture |
Kenney Tiny Dungeon tileset (16x16 sprites) |
Module Functions
For every top-level mcrfpy function (step, find, find_all, get_metrics, bresenham, the benchmark API, …), see the auto-generated Module Functions reference, extracted directly from the C++ docstrings.
Quick Reference
For a condensed cheat sheet of common operations, see the Quick Reference.
Full API
For the complete generated mcrfpy object reference (every class, method, and property, with lifecycle badges), see Generated Reference.