Skip to main content

manabrew_engine/replacement/
replacement_result.rs

1//! Replacement effect results.
2//!
3//! Mirrors Java `ReplacementResult.java` in `forge/game/replacement/`.
4
5use serde::{Deserialize, Serialize};
6
7/// The result of attempting to apply a replacement effect.
8///
9/// Mirrors Java `ReplacementResult` enum.
10///
11/// Reference: Java `ReplacementResult.java` in `forge/game/replacement/`.
12#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
13pub enum ReplacementResult {
14    /// The event was fully replaced; no further processing needed.
15    Replaced,
16    /// This effect did not apply; continue checking other effects.
17    NotReplaced,
18    /// The event was prevented (damage prevention, etc.).
19    Prevented,
20    /// The event parameters were modified; re-run replacement check from start.
21    Updated,
22    /// The event was skipped entirely (e.g. "skip your draw step").
23    Skipped,
24}