feat,wip: 베팅을 ng_betting 기반으로 변경
This commit is contained in:
+17
-38
@@ -1,4 +1,5 @@
|
||||
<?php
|
||||
|
||||
namespace sammo;
|
||||
|
||||
include "lib.php";
|
||||
@@ -10,10 +11,10 @@ $betTarget = Util::getPost('target', 'int', -1);
|
||||
$betGold = Util::getPost('amount', 'int', 0);
|
||||
|
||||
|
||||
if($betTarget < 0 || $betTarget >= 16 || $betGold < 10 || $betGold > 1000){
|
||||
if ($betGold < 10 || $betGold > 1000) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'올바르지 않은 입력입니다'
|
||||
'result' => false,
|
||||
'reason' => '올바르지 않은 입력입니다'
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -28,49 +29,27 @@ $gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
increaseRefresh("베팅", 1);
|
||||
|
||||
$tournament = $gameStor->tournament;
|
||||
if($tournament != 6) {
|
||||
if ($tournament != 6) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'베팅 기간이 아닙니다.'
|
||||
'result' => false,
|
||||
'reason' => '베팅 기간이 아닙니다.'
|
||||
]);
|
||||
}
|
||||
|
||||
$myGold = $db->queryFirstField('SELECT gold FROM general WHERE no = %i', $generalID);
|
||||
$bets = $db->queryFirstList('SELECT * FROM betting WHERE general_id = %i', $generalID);
|
||||
$bets = array_splice($bets, -16);
|
||||
$totalBet = array_sum($bets);
|
||||
$oldBet = $bets[$betTarget];
|
||||
|
||||
$targetKey = "bet{$betTarget}";
|
||||
$bettingID = $gameStor->lastTournamentBettingID;
|
||||
$betting = new Betting($bettingID);
|
||||
|
||||
if($myGold - $betGold < 500){
|
||||
try {
|
||||
$betting->bet($generalID, $userID, [$betTarget], $betGold);
|
||||
} catch (\Exception $e) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'여유 자금이 부족합니다.'
|
||||
'result' => false,
|
||||
'reason' => $e->getMessage()
|
||||
]);
|
||||
}
|
||||
|
||||
if($betGold + $totalBet > 1000){
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'베팅 허용 금액을 초과했습니다.'
|
||||
]);
|
||||
}
|
||||
|
||||
$db->update('betting', [
|
||||
$targetKey=>$db->sqleval('%b + %i', $targetKey, $betGold),
|
||||
], 'general_id = %i', $generalID);
|
||||
$db->update('general', [
|
||||
'gold'=>$db->sqleval('gold - %i', $betGold),
|
||||
], 'no = %i', $generalID);
|
||||
$db->update('rank_data', [
|
||||
'value'=>$db->sqleval('value + %i', $betGold)
|
||||
], 'general_id = %i AND type = "betgold"', $generalID);
|
||||
$db->update('betting', [
|
||||
$targetKey=>$db->sqleval('%b + %i', $targetKey, $betGold)
|
||||
], 'general_id = 0');
|
||||
|
||||
Json::die([
|
||||
'result'=>true,
|
||||
'reason'=>'SUCCESS'
|
||||
]);
|
||||
'result' => true,
|
||||
'reason' => 'SUCCESS'
|
||||
]);
|
||||
|
||||
Reference in New Issue
Block a user