This commit is contained in:
hujiabin 2024-07-02 15:08:29 +08:00
parent 992db7830c
commit de263be873

View File

@ -380,6 +380,9 @@ class BagController extends BaseAuthedController {
private function openBattleBox($itemDb,$itemMeta,$itemNum){ private function openBattleBox($itemDb,$itemMeta,$itemNum){
$costItems = mt\Item::getUseCostItems($itemMeta); $costItems = mt\Item::getUseCostItems($itemMeta);
if (count($costItems) > 0){ if (count($costItems) > 0){
foreach ($costItems as &$item){
$item['item_num'] *= $itemNum;
}
$lackItem = null; $lackItem = null;
if (!$this->_hasEnoughItems($costItems, $lackItem)) { if (!$this->_hasEnoughItems($costItems, $lackItem)) {
$this->_rspErr(3, $this->_getLackItemErrMsg($lackItem)); $this->_rspErr(3, $this->_getLackItemErrMsg($lackItem));
@ -394,15 +397,29 @@ class BagController extends BaseAuthedController {
$luckyParam = \mt\Parameter::getVal('economy_account_luck_K',0); $luckyParam = \mt\Parameter::getVal('economy_account_luck_K',0);
$luckyMaxPro = \mt\Parameter::getVal('economy_account_luck_E',0); $luckyMaxPro = \mt\Parameter::getVal('economy_account_luck_E',0);
$prob = $luckyMaxPro * ($lucky / ($lucky+$luckyParam)); $prob = $luckyMaxPro * ($lucky / ($lucky+$luckyParam));
$times = $this->proEffect($prob,1); $items = array();
$items = \services\LootService::dropOutItem($itemMeta['loot']); for ($i=0;$i<$itemNum;$i++){
if ($times > 0){ $times = $this->proEffect($prob,1);
foreach ($items as &$item){ $itemsTemp = \services\LootService::dropOutItem($itemMeta['loot']);
$item['item_num'] += $item['item_num']*$times; if ($times > 0){
foreach ($itemsTemp as $item){
$item['item_num'] += $item['item_num']*$times;
array_push($items,$item);
}
}else{
foreach ($itemsTemp as $item){
array_push($items,$item);
}
} }
} }
}else{ }else{
$items = \services\LootService::dropOutItem($itemMeta['loot']); $items = \services\LootService::dropOutItem($itemMeta['loot']);
foreach ($items as &$item){
$item['item_num'] *= $itemNum;
}
} }
if (count($costItems) > 0){ if (count($costItems) > 0){
$this->_decItems($costItems); $this->_decItems($costItems);
@ -410,7 +427,7 @@ class BagController extends BaseAuthedController {
$this->_decItems(array( $this->_decItems(array(
array( array(
'item_id' => $itemMeta['id'], 'item_id' => $itemMeta['id'],
'item_num' => 1 'item_num' => $itemNum
) )
)); ));
$this->_addItems($items,$this->awardService,$this->propertyChgService); $this->_addItems($items,$this->awardService,$this->propertyChgService);