McRogueFace/roguelike_tutorial
John McCardle 994e8d186e feat: Add Part 5 tutorial - Entity Interactions
Implements comprehensive entity interaction system:
- Entity class hierarchy inheriting from mcrfpy.Entity
- Non-blocking movement animations with destination tracking
- Bump interactions (combat when hitting enemies, pushing boulders)
- Step-on interactions (buttons that open doors)
- Basic enemy AI with line-of-sight pursuit
- Concurrent animation system (enemies move while player moves)

Also fixes C++ animation system to support Python subclasses:
- Changed PyAnimation::start() to use PyObject_IsInstance instead of strcmp
- Now properly supports inherited entity classes
- Animation system works with any subclass of Frame, Caption, Sprite, Grid, or Entity

This completes the core gameplay mechanics needed for roguelike development.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 00:21:58 -04:00
..
mcrogueface_does_the_entire_tutorial_2025 draft lessons 2025-07-10 00:14:56 -04:00
part_0.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
part_1.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
part_1b.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
part_2-naive.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
part_2-onemovequeued.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
part_2.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
part_3.py feat: Thread-safe FOV system with improved API 2025-07-22 23:00:34 -04:00
part_4.py feat: Thread-safe FOV system with improved API 2025-07-22 23:00:34 -04:00
part_5.py feat: Add Part 5 tutorial - Entity Interactions 2025-07-23 00:21:58 -04:00
tutorial2.png Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
tutorial_hero.png Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00