fix: run time error

This commit is contained in:
MistEO
2022-12-22 00:44:13 +08:00
parent 988de4bd97
commit 407315d40f
4 changed files with 3 additions and 6 deletions

View File

@@ -462,8 +462,3 @@ std::optional<asst::Rect> asst::BattleHelper::get_oper_rect_on_deployment(const
return oper_iter->second.rect;
}
asst::AbstractTask& asst::BattleHelper::this_task()
{
return *dynamic_cast<AbstractTask*>(this);
}

View File

@@ -69,7 +69,7 @@ namespace asst
std::map<Point, battle::BattlefieldOper> m_used_tiles;
private:
virtual AbstractTask& this_task();
virtual AbstractTask& this_task() = 0;
InstHelper m_inst_helper;
};

View File

@@ -19,6 +19,7 @@ namespace asst
protected:
virtual bool _run() override;
virtual AbstractTask& this_task() override { return *this; }
bool do_action(size_t action_index);
void notify_action(const battle::copilot::Action& action);

View File

@@ -27,6 +27,7 @@ namespace asst
protected:
virtual bool _run() override;
virtual AbstractTask& this_task() override { return *this; }
// 有些特殊的角色,他的职业并不一定和正常的位置相对应,比如“掠风”是地面辅助
// get_role_location_type 可以仅知道干员职业的情况下,大概猜测一下位置