public function __construct(Character $character, array $properties)
{
$items = [];
foreach (array_get($properties, 'items', null) as $property) {
$hash = (string) $property['itemHash'];
$definition = manifest()->inventoryItem($hash);
$property = array_merge($property, $definition->getProperties());
$items['buckets'][$property['bucketHash']] = new InventoryItem(new InventoryBucket($this, $properties), $property);
}
parent::__construct($items);
$this->character = $character;
}