Skip to main content

manabrew_engine/keyword/
compleated.rs

1//! Compleated keyword implementation.
2//!
3//! Ported from Java's `Compleated.java` in `forge/game/keyword/`.
4
5use super::keyword_instance::{Keyword, KeywordInstanceData};
6
7/// Compleated keyword data.
8/// This planeswalker enters with two fewer loyalty counters for each
9/// Phyrexian mana symbol paid with life.
10#[derive(Debug, Clone)]
11pub struct Compleated {
12    pub base: KeywordInstanceData,
13}
14
15impl Compleated {
16    /// Create a new Compleated keyword.
17    pub fn new(original: String) -> Self {
18        Self {
19            base: KeywordInstanceData::new(Keyword::Compleated, original),
20        }
21    }
22
23    /// Parse the details string (no-op, simple keyword variant).
24    pub fn parse(&mut self, _details: &str) {}
25
26    /// Get the display title.
27    pub fn get_title(&self) -> String {
28        self.base.keyword.display_name().to_string()
29    }
30
31    /// Format reminder text.
32    /// In Java this reads Phyrexian mana shards from the host card's mana cost.
33    /// Simplified here to return the base reminder text.
34    pub fn format_reminder_text(&self, reminder_text: &str) -> String {
35        reminder_text.to_string()
36    }
37}