1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
use crate::{
    constants::ReturnCode,
    macros::*,
    objects::{Creep, Structure, StructureTower},
};

impl StructureTower {
    pub fn attack(&self, target: &Creep) -> ReturnCode {
        js_unwrap! { @{self.as_ref()}.attack( @{target.as_ref()} ) }
    }

    pub fn heal(&self, target: &Creep) -> ReturnCode {
        js_unwrap! { @{self.as_ref()}.heal( @{target.as_ref()} ) }
    }

    pub fn repair(&self, target: &Structure) -> ReturnCode {
        js_unwrap! { @{self.as_ref()}.repair( @{target.as_ref()} ) }
    }
}