本文整理汇总了C++中MapSector::setStringProperty方法的典型用法代码示例。如果您正苦于以下问题:C++ MapSector::setStringProperty方法的具体用法?C++ MapSector::setStringProperty怎么用?C++ MapSector::setStringProperty使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MapSector
的用法示例。
在下文中一共展示了MapSector::setStringProperty方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
/* QuickTextureOverlay3d::applyTexture
* Applies the current texture to all selected walls/flats
*******************************************************************/
void QuickTextureOverlay3d::applyTexture()
{
// Check editor is associated
if (!editor)
return;
// Get selection/hilight
auto& selection = editor->selection();
// Go through items
if (!selection.empty())
{
for (unsigned a = 0; a < selection.size(); a++)
{
// Thing (skip)
if (selection[a].type == MapEditor::ItemType::Thing)
continue;
// Floor
else if (selection[a].type == MapEditor::ItemType::Floor && (sel_type == 0 || sel_type == 2))
{
MapSector* sector = editor->map().getSector(selection[a].index);
if (sector) sector->setStringProperty("texturefloor", textures[current_index].name);
}
// Ceiling
else if (selection[a].type == MapEditor::ItemType::Ceiling && (sel_type == 0 || sel_type == 2))
{
MapSector* sector = editor->map().getSector(selection[a].index);
if (sector) sector->setStringProperty("textureceiling", textures[current_index].name);
}
// Wall
else if (sel_type > 0)
{
MapSide* side = editor->map().getSide(selection[a].index);
if (side)
{
// Upper
if (selection[a].type == MapEditor::ItemType::WallTop)
side->setStringProperty("texturetop", textures[current_index].name);
// Middle
else if (selection[a].type == MapEditor::ItemType::WallMiddle)
side->setStringProperty("texturemiddle", textures[current_index].name);
// Lower
else if (selection[a].type == MapEditor::ItemType::WallBottom)
side->setStringProperty("texturebottom", textures[current_index].name);
}
}
}
}
}
示例2: applyChanges
/* SectorPropsPanel::applyChanges
* Apply values to opened objects
*******************************************************************/
void SectorPropsPanel::applyChanges()
{
for (unsigned a = 0; a < objects.size(); a++)
{
MapSector* sector = (MapSector*)objects[a];
// Special
if (cb_override_special->GetValue())
sector->setIntProperty("special", panel_special->getSelectedSpecial(theMapEditor->currentMapDesc().format));
// Floor texture
if (!fcb_floor->GetValue().IsEmpty())
sector->setStringProperty("texturefloor", fcb_floor->GetValue());
// Ceiling texture
if (!fcb_ceiling->GetValue().IsEmpty())
sector->setStringProperty("textureceiling", fcb_ceiling->GetValue());
// Floor height
if (!text_height_floor->GetValue().IsEmpty())
sector->setIntProperty("heightfloor", text_height_floor->getNumber(sector->getFloorHeight()));
// Ceiling height
if (!text_height_ceiling->GetValue().IsEmpty())
sector->setIntProperty("heightceiling", text_height_ceiling->getNumber(sector->getCeilingHeight()));
// Light level
if (!text_light->GetValue().IsEmpty())
sector->setIntProperty("lightlevel", text_light->getNumber(sector->getLightLevel()));
// Tag
if (!text_tag->GetValue().IsEmpty())
sector->setIntProperty("id", text_tag->getNumber(sector->getTag()));
}
if (mopp_all_props)
mopp_all_props->applyChanges();
}
示例3: if
/* MapEditContext::floodFill3d
* Pastes previously copied wall/flat/thing info to selection and ad
*******************************************************************/
void Edit3D::floodFill(CopyType type)
{
// Get items to paste to
auto& selection = context_.selection();
auto items = getAdjacent(selection.hilight());
// Restrict floodfill to selection, if any
if (selection.size() > 0)
{
for (auto i = items.begin(); i < items.end(); ++i)
{
bool found = false;
for (unsigned a = 0; a < selection.size(); a++)
{
if (selection[a].type == i->type && selection[a].index == i->index)
{
found = true;
break;
}
}
if (!found)
items.erase(i);
}
}
// Begin undo step
string ptype = "Floodfill textures";
undo_manager_->beginRecord(ptype);
// Go through items
for (unsigned a = 0; a < items.size(); a++)
{
// Wall
if (items[a].type == ItemType::WallTop ||
items[a].type == ItemType::WallMiddle ||
items[a].type == ItemType::WallBottom)
{
auto side = context_.map().getSide(items[a].index);
undo_manager_->recordUndoStep(new MapEditor::PropertyChangeUS(side));
// Upper wall
if (items[a].type == ItemType::WallTop)
{
// Texture
if (type == CopyType::TexType)
side->setStringProperty("texturetop", copy_texture_);
}
// Middle wall
else if (items[a].type == ItemType::WallMiddle)
{
// Texture
if (type == CopyType::TexType)
side->setStringProperty("texturemiddle", copy_texture_);
}
// Lower wall
else if (items[a].type == ItemType::WallBottom)
{
// Texture
if (type == CopyType::TexType)
side->setStringProperty("texturebottom", copy_texture_);
}
}
// Flat
else if (items[a].type == ItemType::Floor || items[a].type == ItemType::Ceiling)
{
MapSector* sector = context_.map().getSector(items[a].index);
undo_manager_->recordUndoStep(new MapEditor::PropertyChangeUS(sector));
// Floor
if (items[a].type == ItemType::Floor)
{
// Texture
if (type == CopyType::TexType)
sector->setStringProperty("texturefloor", copy_texture_);
}
// Ceiling
if (items[a].type == ItemType::Ceiling)
{
// Texture
if (type == CopyType::TexType)
sector->setStringProperty("textureceiling", copy_texture_);
}
}
}
// Editor message
if (type == CopyType::TexType)
{
context_.addEditorMessage("Floodfilled Texture");
}
undo_manager_->endRecord(true);
}