本文整理汇总了C#中MyInventory.Equals方法的典型用法代码示例。如果您正苦于以下问题:C# MyInventory.Equals方法的具体用法?C# MyInventory.Equals怎么用?C# MyInventory.Equals使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MyInventory
的用法示例。
在下文中一共展示了MyInventory.Equals方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FixTransferAmount
private static void FixTransferAmount(MyInventory src, MyInventory dst, MyInventoryItem? srcItem, bool spawn, ref MyFixedPoint remove, ref MyFixedPoint add)
{
Debug.Assert(Sync.IsServer);
if (srcItem.Value.Amount < remove)
{
remove = srcItem.Value.Amount;
add = remove;
}
if (!MySession.Static.CreativeMode && !src.Equals(dst))
{
MyFixedPoint space = dst.ComputeAmountThatFits(srcItem.Value.Content.GetId());
if (space < remove)
{
if (spawn)
{
MyEntity e = (dst.Owner as MyEntity);
Matrix m = e.WorldMatrix;
MyFloatingObjects.Spawn(new MyInventoryItem(remove - space, srcItem.Value.Content), e.PositionComp.GetPosition() + m.Forward + m.Up, m.Forward, m.Up, e.Physics);
}
else
{
remove = space;
}
add = space;
}
}
}
示例2: PrepareTransferItemMessage
private static TransferItemsMsg PrepareTransferItemMessage(MyInventory source, MyFixedPoint amount, uint itemId, MyInventory destination, int destinationIndex, bool spawn)
{
var msg = new TransferItemsMsg();
msg.OwnerEntityId = source.Owner.EntityId;
for (byte i = 0; i < source.Owner.InventoryCount; i++)
{
if (source.Owner.GetInventory(i).Equals(source))
{
msg.InventoryIndex = i;
break;
}
}
msg.itemId = itemId;
msg.Amount = amount;
msg.Spawn = spawn;
if (source.Equals(destination))
{
msg.DestOwnerEntityId = msg.OwnerEntityId;
msg.DestInventoryIndex = msg.InventoryIndex;
}
else
{
msg.DestOwnerEntityId = destination.Owner.EntityId;
for (byte i = 0; i < destination.Owner.InventoryCount; i++)
{
if (destination.Owner.GetInventory(i).Equals(destination))
{
msg.DestInventoryIndex = i;
break;
}
}
}
msg.DestItemIndex = destinationIndex;
return msg;
}