former_spell must be a reference everywhere std::bind uses it
This commit is contained in:
@@ -1842,7 +1842,7 @@ static bool pick_spell_caster(cDialog& me, std::string id, const eSkill store_si
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool pick_spell_target(cDialog& me, std::string id, const eSkill store_situation, short& last_darkened, const short store_spell) {
|
static bool pick_spell_target(cDialog& me, std::string id, const eSkill store_situation, short& last_darkened, const short& store_spell) {
|
||||||
static const char*const no_target = " No target needed.";
|
static const char*const no_target = " No target needed.";
|
||||||
static const char*const bad_target = " Can't cast on them.";
|
static const char*const bad_target = " Can't cast on them.";
|
||||||
static const char*const got_target = " Target selected.";
|
static const char*const got_target = " Target selected.";
|
||||||
@@ -1862,7 +1862,7 @@ static bool pick_spell_target(cDialog& me, std::string id, const eSkill store_si
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool pick_spell_event_filter(cDialog& me, std::string item_hit, const eSkill store_situation, const short store_spell) {
|
static bool pick_spell_event_filter(cDialog& me, std::string item_hit, const eSkill store_situation, const short& store_spell) {
|
||||||
if(item_hit == "other") {
|
if(item_hit == "other") {
|
||||||
on_which_spell_page = 1 - on_which_spell_page;
|
on_which_spell_page = 1 - on_which_spell_page;
|
||||||
put_spell_list(me, store_situation);
|
put_spell_list(me, store_situation);
|
||||||
@@ -2060,8 +2060,8 @@ eSpell pick_spell(short pc_num,eSkill type) { // 70 - no spell OW spell num
|
|||||||
cDialog castSpell(*ResMgr::dialogs.get("cast-spell"));
|
cDialog castSpell(*ResMgr::dialogs.get("cast-spell"));
|
||||||
|
|
||||||
castSpell.attachClickHandlers(std::bind(pick_spell_caster, _1, _2, type, std::ref(dark), std::ref(former_spell)), {"caster1","caster2","caster3","caster4","caster5","caster6"});
|
castSpell.attachClickHandlers(std::bind(pick_spell_caster, _1, _2, type, std::ref(dark), std::ref(former_spell)), {"caster1","caster2","caster3","caster4","caster5","caster6"});
|
||||||
castSpell.attachClickHandlers(std::bind(pick_spell_target,_1,_2, type, std::ref(dark), former_spell), {"target1","target2","target3","target4","target5","target6"});
|
castSpell.attachClickHandlers(std::bind(pick_spell_target,_1,_2, type, std::ref(dark), std::ref(former_spell)), {"target1","target2","target3","target4","target5","target6"});
|
||||||
castSpell.attachClickHandlers(std::bind(pick_spell_event_filter, _1, _2, type, former_spell), {"other", "help"});
|
castSpell.attachClickHandlers(std::bind(pick_spell_event_filter, _1, _2, type,std::ref(former_spell)), {"other", "help"});
|
||||||
castSpell["cast"].attachClickHandler(std::bind(finish_pick_spell, _1, false, former_target, std::ref(former_spell), type));
|
castSpell["cast"].attachClickHandler(std::bind(finish_pick_spell, _1, false, former_target, std::ref(former_spell), type));
|
||||||
castSpell["cancel"].attachClickHandler(std::bind(finish_pick_spell, _1, true, former_target, std::ref(former_spell), type));
|
castSpell["cancel"].attachClickHandler(std::bind(finish_pick_spell, _1, true, former_target, std::ref(former_spell), type));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user