70 lines
1.5 KiB
PHP
70 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace services;
|
|
|
|
use models\Chip;
|
|
use models\Hero;
|
|
use mt\Item;
|
|
|
|
class AwardService extends BaseService {
|
|
|
|
private $items = array();
|
|
private $heros = array();
|
|
private $chips = array();
|
|
|
|
public function addItem($itemId, $itemNum)
|
|
{
|
|
foreach ($this->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,
|
|
);
|
|
}
|
|
|
|
}
|