本文整理汇总了C#中ICollection.ContainsComponent方法的典型用法代码示例。如果您正苦于以下问题:C# ICollection.ContainsComponent方法的具体用法?C# ICollection.ContainsComponent怎么用?C# ICollection.ContainsComponent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ICollection
的用法示例。
在下文中一共展示了ICollection.ContainsComponent方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PrepareMove
bool PrepareMove(Entity player, ICollection<Entity> entitiesInSpot)
{
if (entitiesInSpot.ContainsComponent(ComponentIds.AIMove))
{
// enemy there, can't do anything
return false;
}
// handle walls
Entity wall = null;
if (entitiesInSpot.ContainsComponent(ComponentIds.Destructible, out wall))
{
wall.DamageDestructible();
pool.PlayAudio(player.audioAttackSource);
if (player.hasView)
{
player.AddAnimation(Animation.playerChop);
}
// nothing to do now that we've chopped
return false;
}
// otherwise we can move
return true;
}
示例2: PrepareMove
bool PrepareMove(Entity enemy, ICollection<Entity> entitiesInSpot)
{
// handle player
Entity player;
if (enemy.hasFoodDamager &&
entitiesInSpot.ContainsComponent(ComponentIds.Controllable, out player))
{
pool.AddToFoodBag(-enemy.foodDamager.points);
pool.PlayAudio(enemy.audioAttackSource);
enemy.AddAnimation(Animation.enemyAttack);
player.AddAnimation(Animation.playerHit);
// can't move
return false;
}
if (entitiesInSpot.Count == 1 &&
entitiesInSpot.ContainsComponent(ComponentIds.Food))
{
return true;
}
return false;
}