1
This commit is contained in:
parent
98da41b2eb
commit
c44384542b
@ -8,6 +8,7 @@ define('PLANET_BUY_KEY', 'game2006api:planet_buy:');
|
|||||||
define('LAST_SESSION_KEY', 'last_session:');
|
define('LAST_SESSION_KEY', 'last_session:');
|
||||||
define('MATCH_CURRENT_TEAM_KEY', 'match:current_team:');
|
define('MATCH_CURRENT_TEAM_KEY', 'match:current_team:');
|
||||||
define('MATCH_OK_KEY', 'match:ok:');
|
define('MATCH_OK_KEY', 'match:ok:');
|
||||||
|
define('DEC_BATTLE_TICKET', 'battle_ticket:');
|
||||||
|
|
||||||
define('V_ITEM_GOLD', 10001); //金币
|
define('V_ITEM_GOLD', 10001); //金币
|
||||||
define('V_ITEM_GOLDS', 10017); //金堆
|
define('V_ITEM_GOLDS', 10017); //金堆
|
||||||
|
@ -593,6 +593,10 @@ class BattleController extends BaseAuthedController {
|
|||||||
myself()->_rspErr(2, 'map mode error');
|
myself()->_rspErr(2, 'map mode error');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (!$this->checkTicket($customData, $mapModeMeta)) {
|
||||||
|
myself()->_rspErr(2, 'map mode error');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
$currSeason = mt\RankSeason::getCurrentSeason();
|
$currSeason = mt\RankSeason::getCurrentSeason();
|
||||||
foreach ($customData['team_list'] as $team) {
|
foreach ($customData['team_list'] as $team) {
|
||||||
@ -679,6 +683,7 @@ class BattleController extends BaseAuthedController {
|
|||||||
array_push($data['team_list'], $teamInfo);
|
array_push($data['team_list'], $teamInfo);
|
||||||
}
|
}
|
||||||
error_log(json_encode($data));
|
error_log(json_encode($data));
|
||||||
|
$this->decTicket($customData, $mapModeMeta);
|
||||||
myself()->_rspData($data);
|
myself()->_rspData($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -991,4 +996,40 @@ class BattleController extends BaseAuthedController {
|
|||||||
return $info;
|
return $info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function checkTicket($customData, $mapModeMeta)
|
||||||
|
{
|
||||||
|
if (empty($mapModeMeta['admission_item_id'])) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
foreach ($customData['team_list'] as $team) {
|
||||||
|
foreach ($team['members'] as $member) {
|
||||||
|
if (!$member['is_android']) {
|
||||||
|
$itemDb = Bag::findEx($member['account_id'], $mapModeMeta['admission_item_id']);
|
||||||
|
if (empty($itemDb) || $itemDb['item_num'] <= 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function decTicket($customData, $mapModeMeta)
|
||||||
|
{
|
||||||
|
$itemId = $mapModeMeta['admission_item_id'];
|
||||||
|
if (empty($itemId)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
foreach ($customData['team_list'] as $team) {
|
||||||
|
foreach ($team['members'] as $member) {
|
||||||
|
if (!$member['is_android']) {
|
||||||
|
$itemDb = Bag::findEx($member['account_id'], $itemId);
|
||||||
|
if (!empty($itemDb) || $itemDb['item_num'] > 0) {
|
||||||
|
Bag::decItemByUnIidEx($member['account_id'], $itemDb['idx'], 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -299,5 +299,22 @@ class Bag extends BaseModel {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function decItemByUnIidEx($accountId, $itemUniId, $itemNum)
|
||||||
|
{
|
||||||
|
SqlHelper::update(
|
||||||
|
myself()->_getMysql($accountId),
|
||||||
|
't_bag',
|
||||||
|
array(
|
||||||
|
'account_id' => myself()->_getAccountId(),
|
||||||
|
'idx' => $itemUniId,
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'item_num' => function () use($itemNum) {
|
||||||
|
return "GREATEST(0, item_num - ${itemNum})";
|
||||||
|
},
|
||||||
|
'modifytime' => myself()->_getNowTime(),
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user