implemented the attackable class