Ошибка error C3859, это критическое изменение в make_pair при неправильном использовании в C ++ 11(выше): при указании типов аргументов, это означает, что C ++ 11 использует другой синтаксис, чем C ++ 03. Есть решение!
Код
Ошибка 1 error C2664: "std::pair<Unit *,Spell *> std::make_pair<Unit*,Spell*>(_Ty1 &&,_Ty2 &&)": невозможно преобразовать аргумент 2 из "Spell *" в "Spell *&&" E:\123\s\src\server\game\AI\CoreAI\PetAI.cpp 176 1 game
Ошибка 2 error C2664: "std::pair<Unit *,Spell *> std::make_pair<Unit*,Spell*>(_Ty1 &&,_Ty2 &&)": невозможно преобразовать аргумент 1 из "Unit *" в "Unit *&&" E:\123\s\src\server\game\AI\CoreAI\PetAI.cpp 193 1 game
Чтобы это исправить, измените std::make_pair, который определяет типы аргументов, на std::pair!
--
//targetSpellStore.push_back(std::make_pair
(Target, spell));
targetSpellStore.push_back(std::pair(Target, spell));
--
//targetSpellStore.push_back(std::make_pair(me->getVictim(), spell));
targetSpellStore.push_back(std::pair(me->getVictim(), spell));