diff --git a/webapp/controller/BattleController.class.php b/webapp/controller/BattleController.class.php index bcb0f006..dfed480d 100644 --- a/webapp/controller/BattleController.class.php +++ b/webapp/controller/BattleController.class.php @@ -986,11 +986,32 @@ class BattleController extends BaseAuthedController { { $data = array(); foreach ($member['battle_items'] as $item) { - $itemCount = Bag::getItemCount($item['item_id']); - array_push($data, array( - 'item_id' => $item['item_id'], - 'item_num' => $item['item_num'], - )); + $itemMeta = mt\Item::get($item['item_id']); + if ($itemMeta['type'] == mt\Item::FUNC_TYPE && + $itemMeta['sub_type'] == mt\Item::LUCKY_SYMBOL_SUBTYPE) { + $luckyRecord = myself()->_callModelStatic('LuckySymbolRecord', 'find', $roomUuid); + if (empty($luckyRecord)) { + if (myself()->_callModelStatic('LuckySymbol', 'hasLuckySymbol')) { + myself()->_callModelStatic('LuckySymbol', 'dec'); + myself()->_callModelStatic('LuckySymbolRecord', 'add', $roomUuid); + array_push($data, array( + 'item_id' => $item['item_id'], + 'item_num' => 1, + )); + } + } else { + array_push($data, array( + 'item_id' => $item['item_id'], + 'item_num' => 1, + )); + } + } else { + $itemCount = Bag::getItemCount($item['item_id']); + array_push($data, array( + 'item_id' => $item['item_id'], + 'item_num' => $item['item_num'], + )); + } } $info['items'] = $data; }