manabrew_engine/keyword/
firebending.rs1use super::keyword_instance::Keyword;
6use super::keyword_with_amount::KeywordWithAmount;
7
8#[derive(Debug, Clone)]
11pub struct Firebending {
12 pub inner: KeywordWithAmount,
13}
14
15impl Firebending {
16 pub fn new(original: String) -> Self {
18 Self {
19 inner: KeywordWithAmount::new(Keyword::Firebending, original),
20 }
21 }
22
23 pub fn parse(&mut self, details: &str) {
25 self.inner.parse(details);
26 }
27
28 pub fn format_reminder_text(&self, reminder_text: &str) -> String {
30 let fire = if self.inner.with_x {
31 "X {R}".to_string()
32 } else {
33 "{R}".repeat(self.inner.amount as usize)
34 };
35 reminder_text.replace("%s", &fire)
36 }
37
38 pub fn get_title(&self) -> String {
40 self.inner.get_title()
41 }
42}