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}