本文整理汇总了C#中Sledge.DataStructures.MapObjects.MapObject.Find方法的典型用法代码示例。如果您正苦于以下问题:C# MapObject.Find方法的具体用法?C# MapObject.Find怎么用?C# MapObject.Find使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sledge.DataStructures.MapObjects.MapObject
的用法示例。
在下文中一共展示了MapObject.Find方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FixEntityNames
private void FixEntityNames(MapObject obj, List<string> names)
{
if (!_makeEntitesUnique && !_prefixEntityNames) return;
var ents = obj.Find(x => x is Entity)
.OfType<Entity>()
.Where(x => x.EntityData != null);
foreach (var entity in ents)
{
// Find the targetname property
var prop = entity.EntityData.Properties.FirstOrDefault(x => x.Key == "targetname");
if (prop == null) continue;
// Skip unnamed entities
if (String.IsNullOrWhiteSpace(prop.Value)) continue;
// Add the prefix before the unique check
if (_prefixEntityNames)
{
prop.Value = _entityNamePrefix + prop.Value;
}
// Make the name unique
if (_makeEntitesUnique)
{
var name = prop.Value;
// Find a unique new name for the entity
var newName = name;
var counter = 1;
while (names.Contains(newName))
{
newName = name + "_" + counter;
counter++;
}
// Set the new name and add it into the list
prop.Value = newName;
names.Add(newName);
}
}
}