items as &$item){ if ($item['item_id'] == $itemId) { $item['item_num'] += $itemNum; return; } } $itemMeta = Item::get($itemId); if (!$itemMeta){ return; } if (!in_array( $itemMeta['type'],array( Item::RANDOM_BOX_TYPE, ))){ array_push($this->items, array( 'item_id' => $itemId, 'item_num' => $itemNum )); } } public function addHero($itemId,$unnid) { $itemMeta = Item::get($itemId); if (!$itemMeta){ return; } if ($itemMeta['type'] == Item::HERO_TYPE){ array_push($this->heros,Hero::toDto(Hero::find($unnid))); } } public function addChip($itemId,$unnid) { $itemMeta = Item::get($itemId); if (!$itemMeta){ return; } if ($itemMeta['type'] == Item::CHIP_TYPE){ array_push($this->chips,Chip::toDto(Chip::find($unnid))); } } public function toDto() { return array( 'items' => $this->items, 'heros' => $this->heros, 'chips' => $this->chips, ); } }