本文整理汇总了C++中World::CreateSector方法的典型用法代码示例。如果您正苦于以下问题:C++ World::CreateSector方法的具体用法?C++ World::CreateSector怎么用?C++ World::CreateSector使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类World
的用法示例。
在下文中一共展示了World::CreateSector方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: StartElementHandler
bool SectorParseHelper::StartElementHandler(Library::XmlParseMaster::SharedData * sharedData, std::string& name, Library::HashMap<std::string, std::string> hashmap)
{
if (!sharedData)
{
return false;
}
ScopeSharedData * data = sharedData->As<ScopeSharedData>();
if (data)
{
mStringData = std::string();
if (name == ScopeString)
{
if (!bIsParsing)
{
bIsParsing = true;
auto providedName = hashmap.Find(NameString);
if (providedName != hashmap.end())
{
World * world = data->GetWorld()->As<World>();
if (world)
{
Sector* sector = world->CreateSector(providedName->second);
data->SetWorld(sector);
}
else
{
throw std::exception("You are not coming from a world");
}
}
return true;
}
}
}
return false;
}
示例2: StartElementHandler
bool XmlParseHelperSector::StartElementHandler(XmlParseMaster::SharedData& sharedData, const std::string& elementName, const Hashmap<std::string, std::string>& attributes)
{
SharedDataTable* sharedDataPtr = sharedData.As<SharedDataTable>();
if (sharedDataPtr == nullptr)
return false;
if (elementName != ELEMENT_NAME)
return false;
if (!attributes.ContainsKey(ATTRIBUTE_NAME))
throw std::exception("ClearScreen syntax for <sector>. Missing attribute: name");
if (!sharedDataPtr->CheckStateTransition(SharedDataTable::ParserState::SECTOR_START))
throw std::exception("ClearScreen script syntax");
bool transitionToStateRouter = sharedDataPtr->CheckStateTransition(SharedDataTable::ParserState::STATE_ROUTER);
UNREFERENCED_PARAMETER(transitionToStateRouter);
assert(transitionToStateRouter);
assert(sharedDataPtr->CurrentScopePtr->Is(World::TypeIdClass()));
World* world = static_cast<World*>(sharedDataPtr->CurrentScopePtr);
sharedDataPtr->CurrentScopePtr = &(world->CreateSector(attributes[ATTRIBUTE_NAME]));
return true;
}