20 lines
495 B
Rust
20 lines
495 B
Rust
use std::rc::Rc;
|
|
|
|
use crate::{state::{GameState, Effect}, world::{Structure, Tavern}};
|
|
|
|
pub struct TavernBuilt {
|
|
pub x: usize,
|
|
pub y: usize,
|
|
pub tavern: Rc<Tavern>,
|
|
}
|
|
|
|
impl Effect for TavernBuilt {
|
|
fn apply(&self, state: &mut GameState) {
|
|
state.world.add_structure(self.x, self.y, Structure::Tavern(self.tavern.clone()));
|
|
state.set_tavern(self.tavern.clone());
|
|
}
|
|
|
|
fn description(&self) -> String {
|
|
format!("{} was built", self.tavern.name)
|
|
}
|
|
} |