1 #pragma once
2 
3 #include "mon-attitude-type.h"
4 #include "spell-type.h"
5 
6 #define CLONE_MASTER_KEY "mcloneorig"
7 #define CLONE_SLAVE_KEY "mclonedupe"
8 
9 class actor;
10 class monster;
11 
12 // Formerly in mon-stuff:
13 bool mons_clonable(const monster* orig, bool needs_adjacent = true);
14 monster *clone_mons(const monster* orig, bool quiet = false,
15                     bool* obvious = nullptr);
16 
17 monster *clone_mons(const monster* orig, bool quiet,
18                     bool* obvious, mon_attitude_type mon_att);
19 
20 void mons_summon_illusion_from(monster* mons, actor *foe,
21                                spell_type spell_cast = SPELL_NO_SPELL,
22                                int card_power = -1);
23 
24 bool actor_is_illusion_cloneable(actor *target);
25