en:rpd:doom_interface
Differences
This shows you the differences between two versions of the page.
| en:rpd:doom_interface [2026/07/10 04:33] – Fix dokuwiki linting issues and missing image reference Qwen Assistant | en:rpd:doom_interface [2026/07/10 04:37] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Doom Interface ====== | ||
| + | {{ rpd: | ||
| + | |||
| + | **Doom Interface** is a marker interface in Remixed Dungeon that identifies " | ||
| + | |||
| + | ==== Description ==== | ||
| + | The Doom interface extends [[en: | ||
| + | |||
| + | ==== Interface Definition ==== | ||
| + | ```java | ||
| + | public interface Doom extends NamedEntityKind { | ||
| + | void onHeroDeath(); | ||
| + | } | ||
| + | ``` | ||
| + | |||
| + | ==== Implementations ==== | ||
| + | Classes implementing Doom must: | ||
| + | * Extend [[en: | ||
| + | * Implement the `onHeroDeath()` method to define custom death behavior | ||
| + | * Implement `getEntityKind()` from NamedEntityKind for entity identification | ||
| + | |||
| + | ==== Known Implementations ==== | ||
| + | * [[en: | ||
| + | * On death: Validates "Death in Stone" badge, shows "You have been immured in stone. Forever." | ||
| + | * Other doom-type buffs may exist | ||
| + | |||
| + | ==== Code References ==== | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | ==== Usage in Game Logic ==== | ||
| + | When the hero dies, the game checks all active buffs for Doom implementations: | ||
| + | ```java | ||
| + | for (Buff buff : hero.buffs()) { | ||
| + | if (buff instanceof Doom) { | ||
| + | ((Doom) buff).onHeroDeath(); | ||
| + | } | ||
| + | } | ||
| + | ``` | ||
| + | |||
| + | ==== Related Pages ==== | ||
| + | * [[en: | ||
| + | * [[en: | ||
| + | * [[en: | ||
| + | * [[en: | ||
| + | |||
| + | {{tag> rpd mechanics interfaces buffs doom }} | ||
en/rpd/doom_interface.txt · Last modified: by 127.0.0.1
