for (CORBA::ULong i = 0; i < mnsInfos.length(); ++i)


??????????????????????????????????????ж????????ж???????ò????????з??????????????????????????

??????????????????????????鵱mnsInfos.length()???0????????????????????ɡ?????????????0????????????????????????????У?????????0???????????????????????????????

?????????б?????????????????????????????????????ж????????????????????м?飬?м??

???????????????????????mnsInfos[i].monsterInfos????????????mnsStatusSeq??

????????????????????????????????????????????????????????????????????????

???????????????????????????????????????????????????????????????????е?????????

??????????mnsStatusSeq??????????????????????mnsInfos??????з????????????????????????????????

????????????????????????hrdId?????????????????mnsTypes??hrdId?????????——?????????????????????????ò??????????mnsTypes?????getMonsterType????Σ???????mnsTypes??????????????????????

????????????????mnsInfos??????????????????????????????

????????????2?????????????????????????????????е?“??????????”?????????????????????????????????????????????????mnsStatusSeq??mnsTypes??????з?????

??????????????????????????????????????

????????????

???????????????????????????“??????”????“?????????”???????“????????”??

????????????????δ???

???????????ζ?


virtual ::std::auto_ptr<World::Quest::TaskResult>
run(World::QuestMgr::RoleProxy& roleProxy) {
QuestPos notExistQuests;
try
{
World::StateMgr::StateManager& stateMgr =
Frame::kernelModule<World::StateMgr::StateManager>(owner_.provider().kernel());
//???Quest
CORBA::ULong processPos = 0;
for(; (!cancel_) && processPos < questIDs_.length(); processPos++)
{
if(notExistQuests.find(processPos) != notExistQuests.end()) {
continue;
}
try
{
World::Model::Quest questObj =
Frame::kernelModule<World::Model::QuestCvt::QuestConvertMgr>(
owner_.provider().kernel()).cvtQuestById(
World::Model::Basic::Quest(questIDs_[processPos].in()));
owner_.appendQuestState(
stateMgr.getQuest(
stateName_??
questObj));
}
catch(...) {
STATEMGR_ERROR("acquire quest state catch exception");
}
}
}
STATEMGR_REPORT_EXCEPTION_PERISH("StateQueryOp::run catch exception");
owner_.setIsDone(true);
return World::Quest::TaskResult::_success();
}
??????????????????????????Щ“????????”??

??????????“????????”??????????????Σ?

???????????????????????????questIDs_.length()??quest??????notExistQuests.find()????????stateMgr. getQuest ()????????????????????????????????????????????????????ε?????????г??????????????????????????????

??????????????????????????????ε?“?????????”??????????????????????÷????????????????????????????????

????questIDs_.length()????????ο??????????????

????questObj??????????ο?cvtQuestById????????壨????ú??????д??????????????????????ЧId????ЧId??????????????????????

???????notExistQuests.find()?????????????

??????getQuest ()????????????Щ????????????????б????????б????????????????????????????Ч??questObj????????Ч?????????????????????questObj??Ч???getQuest ()???????????????б???????????????????????????????getQuest ()???з????????????

??????????????????????????????????????????д??????????????????????Χ??????????????????????????????????

??????ζ?????????????“?????????”??????“????”????壬???????????cancel_????????????????????????????????????“??”?????????????????????????????????????run????????????“??????”?????????????????????Щ“????????”?????“??????”??????questIDs_??owner_??