This commit is contained in:
songliang 2023-07-13 10:48:59 +08:00
parent 32ed4e9b0d
commit ce7e060eb3

View File

@ -1794,11 +1794,31 @@ class ShopController extends BaseAuthedController
return $costItems; return $costItems;
} }
private function internalAddItem($propertyChgService, $itemMeta, $count, $sysAdd) private function internalAddItem($propertyChgService, $itemMeta, $count, $sysAdd, $grade)
{ {
switch ($itemMeta['type']) { switch ($itemMeta['type']) {
case mt\Item::HERO_TYPE: { case mt\Item::HERO_TYPE: {
Hero::addHero($itemMeta); if (empty($grade)) {
$grade = 0;
}
switch($grade) {
case 1: {
Hero::addHero1($itemMeta);
}
break;
case 2: {
Hero::addHero2($itemMeta);
}
break;
case 3: {
Hero::addHero3($itemMeta);
}
break;
default: {
Hero::addHero($itemMeta);
}
break;
}
$propertyChgService->addHeroChg(); $propertyChgService->addHeroChg();
$propertyChgService->addUserChg(); $propertyChgService->addUserChg();
} }
@ -2164,6 +2184,7 @@ class ShopController extends BaseAuthedController
} }
$itemStore = mt\ShopChest::getRandomItemListByChestType($meta['sub_type']); $itemStore = mt\ShopChest::getRandomItemListByChestType($meta['sub_type']);
$grade = $meta['sub_type'];
$result = array(); $result = array();
for ($i = 0; $i < $num; $i++) { for ($i = 0; $i < $num; $i++) {
$record = array(); $record = array();
@ -2176,10 +2197,10 @@ class ShopController extends BaseAuthedController
} }
$propertyChgService = new services\PropertyChgService(); $propertyChgService = new services\PropertyChgService();
if ($item['item_type'] == 2) { if ($item['item_type'] == 2) {
$this->internalAddItem($propertyChgService, $itemMeta, $item['num'], 1); $this->internalAddItem($propertyChgService, $itemMeta, $item['num'], 1, $grade);
} else { } else {
for ($j = 0; $j < $item['num']; $j++) { for ($j = 0; $j < $item['num']; $j++) {
$this->internalAddItem($propertyChgService, $itemMeta, 1, 1); $this->internalAddItem($propertyChgService, $itemMeta, 1, 1, $grade);
} }
} }
$record[$key] = array("item_id" => $item['item_id'], "item_num" => $item['num']); $record[$key] = array("item_id" => $item['item_id'], "item_num" => $item['num']);