本文整理汇总了C#中Sandbox.GetInventory方法的典型用法代码示例。如果您正苦于以下问题:C# Sandbox.GetInventory方法的具体用法?C# Sandbox.GetInventory怎么用?C# Sandbox.GetInventory使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sandbox
的用法示例。
在下文中一共展示了Sandbox.GetInventory方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddItems
public override void AddItems(Sandbox.Game.Entities.Character.MyCharacter character)
{
System.Diagnostics.Debug.Assert((character.GetInventory(0) as MyInventory) != null, "Null or unexpected inventory type returned!");
(character.GetInventory(0) as MyInventory).Clear();
if (InventoryContentGenerated)
{
MyContainerTypeDefinition cargoContainerDefinition = MyDefinitionManager.Static.GetContainerTypeDefinition(InventoryContainerTypeId.SubtypeName);
if (cargoContainerDefinition != null)
{
(character.GetInventory(0) as MyInventory).GenerateContent(cargoContainerDefinition);
}
else
{
System.Diagnostics.Debug.Fail("CargoContainer type definition " + InventoryContainerTypeId + " wasn't found.");
}
}
}
示例2: AddItems
public override void AddItems(Sandbox.Game.Entities.Character.MyCharacter character)
{
base.AddItems(character);
var ob = MyObjectBuilderSerializer.CreateNewObject<MyObjectBuilder_PhysicalGunObject>(StartingWeaponDefinitionId.SubtypeName);
if (character.WeaponTakesBuilderFromInventory(StartingWeaponDefinitionId))
{
System.Diagnostics.Debug.Assert((character.GetInventory(0) as MyInventory) != null, "Null or unexpected inventory type!");
(character.GetInventory(0) as MyInventory).AddItems(1, ob);
}
// else // allowing the inventory items to be added
{
foreach (var weaponDef in InventoryItems)
{
ob = MyObjectBuilderSerializer.CreateNewObject<MyObjectBuilder_PhysicalGunObject>(weaponDef.SubtypeName);
System.Diagnostics.Debug.Assert((character.GetInventory(0) as MyInventory) != null, "Null or unexpected inventory type!");
(character.GetInventory(0) as MyInventory).AddItems(1, ob);
}
}
character.SwitchToWeapon(StartingWeaponDefinitionId);
{
MyDefinitionId weaponDefinitionId;
weaponDefinitionId = new MyDefinitionId(typeof(MyObjectBuilder_WeaponDefinition), StartingWeaponDefinitionId.SubtypeName);
MyWeaponDefinition weaponDefinition;
if (MyDefinitionManager.Static.TryGetWeaponDefinition(weaponDefinitionId, out weaponDefinition)) //GetWeaponDefinition(StartingWeaponId);
{
if (weaponDefinition.HasAmmoMagazines())
{
var ammo = MyObjectBuilderSerializer.CreateNewObject<MyObjectBuilder_AmmoMagazine>(weaponDefinition.AmmoMagazinesId[0].SubtypeName);
System.Diagnostics.Debug.Assert((character.GetInventory(0) as MyInventory) != null, "Null or unexpected inventory type!");
(character.GetInventory(0) as MyInventory).AddItems(3, ammo);
}
}
}
}
示例3: InventoryAdd
public static bool InventoryAdd(Sandbox.Game.Entities.MyEntity entity, MyFixedPoint amount, MyDefinitionId definitionId)
{
var itemAdded = false;
var count = entity.InventoryCount;
// Try to find the right inventory to put the item into.
// Ie., Refinery has 2 inventories. One for ore, one for ingots.
for (int i = 0; i < count; i++)
{
var inventory = entity.GetInventory(i);
if (inventory.CanItemsBeAdded(amount, definitionId))
{
itemAdded = true;
Support.InventoryAdd(inventory, amount, definitionId);
break;
}
}
return itemAdded;
}