1
This commit is contained in:
parent
0082f1122f
commit
429627c794
@ -75,6 +75,13 @@ CREATE TABLE `user` (
|
|||||||
`daily_time` int(11) NOT NULL DEFAULT '0' COMMENT '每日刷新时间',
|
`daily_time` int(11) NOT NULL DEFAULT '0' COMMENT '每日刷新时间',
|
||||||
`free_box` int(11) NOT NULL DEFAULT '0' COMMENT '每日免费宝箱',
|
`free_box` int(11) NOT NULL DEFAULT '0' COMMENT '每日免费宝箱',
|
||||||
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '刷新活动时间',
|
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '刷新活动时间',
|
||||||
|
|
||||||
|
|
||||||
|
`season_games` int(11) NOT NULL DEFAULT '0' COMMENT '赛季场次总数',
|
||||||
|
`season_win` int(11) NOT NULL DEFAULT '0' COMMENT '赛季胜利场次',
|
||||||
|
`sea_max_kill` int(11) NOT NULL DEFAULT '0' COMMENT '赛季最高击杀',
|
||||||
|
`sea_max_hart` int(11) NOT NULL DEFAULT '0' COMMENT '赛季最高伤害',
|
||||||
|
`sea_avg_kill` int(11) NOT NULL DEFAULT '0' COMMENT '赛季场均淘汰',
|
||||||
PRIMARY KEY (`idx`),
|
PRIMARY KEY (`idx`),
|
||||||
UNIQUE KEY `accountid` (`accountid`)
|
UNIQUE KEY `accountid` (`accountid`)
|
||||||
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||||
@ -192,4 +199,20 @@ CREATE TABLE `passinfo` (
|
|||||||
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||||
|
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `shop`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client*/;
|
||||||
|
/*!40101 SET character_set_client = utf8 */;
|
||||||
|
CREATE TABLE `shop` (
|
||||||
|
`idx` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增id',
|
||||||
|
`accountid` varchar(60) NOT NULL DEFAULT '' COMMENT '账号id',
|
||||||
|
`coin_id` int(11) NOT NULL DEFAULT '0' COMMENT '金币商店物品id',
|
||||||
|
`coin_discount` int(11) NOT NULL DEFAULT '0' COMMENT '金币商店折扣',
|
||||||
|
`diamond_id` int(11) NOT NULL DEFAULT '0' COMMENT '钻石商店物品id',
|
||||||
|
`diamond_discount` int(11) NOT NULL DEFAULT '0' COMMENT '钻石商店折扣',
|
||||||
|
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
|
||||||
|
`modify_time` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间',
|
||||||
|
PRIMARY KEY (`idx`),
|
||||||
|
UNIQUE KEY `accountid` (`accountid`)
|
||||||
|
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||||
|
|
||||||
-- Dump completed on 2015-08-19 18:51:22
|
-- Dump completed on 2015-08-19 18:51:22
|
||||||
|
12
sql/gamedb2004_n_migrate_200408_01.sql
Normal file
12
sql/gamedb2004_n_migrate_200408_01.sql
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
begin;
|
||||||
|
|
||||||
|
alter table user add column `season_games` int(11) NOT NULL DEFAULT '0' COMMENT '赛季场次总数';
|
||||||
|
alter table user add column `season_win` int(11) NOT NULL DEFAULT '0' COMMENT '赛季胜利场次';
|
||||||
|
alter table user add column `sea_max_kill` int(11) NOT NULL DEFAULT '0' COMMENT '赛季最高击杀';
|
||||||
|
alter table user add column `sea_max_hart` int(11) NOT NULL DEFAULT '0' COMMENT '赛季最高伤害';
|
||||||
|
alter table user add column `sea_avg_kill` int(11) NOT NULL DEFAULT '0' COMMENT '赛季场均淘汰';
|
||||||
|
|
||||||
|
|
||||||
|
insert into version (version) values(20200408);
|
||||||
|
|
||||||
|
commit;
|
@ -212,5 +212,11 @@ function getDrawTableConfig($drawbig_table, $drawbig_id)
|
|||||||
$drawbig_id = (int)$drawbig_id;
|
$drawbig_id = (int)$drawbig_id;
|
||||||
return array_key_exists($drawbig_id, $drawbig_table) ? $drawbig_table[$drawbig_id] : null;
|
return array_key_exists($drawbig_id, $drawbig_table) ? $drawbig_table[$drawbig_id] : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getRecommendConfig($rec_table, $rec_id)
|
||||||
|
{
|
||||||
|
$rec_id = (int)$rec_id;
|
||||||
|
return array_key_exists($rec_id, $rec_table) ? $rec_table[$rec_id] : null;
|
||||||
|
}
|
||||||
checkMysqlConfig();
|
checkMysqlConfig();
|
||||||
checkRedisConfig();
|
checkRedisConfig();
|
||||||
|
@ -299,7 +299,27 @@ class AddReward {
|
|||||||
$s = 0;
|
$s = 0;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$s = 0;
|
$emoji_num = 0;
|
||||||
|
foreach ($bag_meta_table as $bag_info) {
|
||||||
|
$id = $bag_info['id'];
|
||||||
|
$bag = $this->getBag($id);
|
||||||
|
if ($bag['fuction'] != $b['fuction']) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
$row_emoji = $conn->execQueryOne('SELECT status FROM bag WHERE accountid=:accountid AND id=:id;',
|
||||||
|
array(
|
||||||
|
':accountid' => $accountid,
|
||||||
|
':id' => $id,
|
||||||
|
));
|
||||||
|
if ($row_emoji['status'] == 0) {
|
||||||
|
$emoji_num++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($emoji_num >= 6) {
|
||||||
|
$s = 1;
|
||||||
|
} else {
|
||||||
|
$s = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return $s;
|
return $s;
|
||||||
}
|
}
|
||||||
|
@ -86,10 +86,24 @@ class ActivityController{
|
|||||||
return $l;
|
return $l;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function getItem($item_id)
|
||||||
|
{
|
||||||
|
$g_conf_item_cluster = require('../res/item@item.php');
|
||||||
|
$item_conf = getItemConfig($g_conf_item_cluster, $item_id);
|
||||||
|
$it = array(
|
||||||
|
'id' => $item_conf['id'],
|
||||||
|
'diamond' => $item_conf['diamond'],
|
||||||
|
'type' => $item_conf['fuction'],
|
||||||
|
'diamond_hour' => $item_conf['diamond_hour'],
|
||||||
|
'pool_weight' => $item_conf['pool_weight'],
|
||||||
|
);
|
||||||
|
return $it;
|
||||||
|
}
|
||||||
|
|
||||||
protected function getDrawTableConfig($id)
|
protected function getDrawTableConfig($id)
|
||||||
{
|
{
|
||||||
$g_conf_lot_cluster = require('../res/lotterydraw@lotterydraw.php');
|
$g_conf_lot_cluster = require('../res/lotterydraw@lotterydraw.php');
|
||||||
$lot_conf = getLotteryConfig($g_conf_lot_cluster, $lot_id);
|
$lot_conf = getLotteryConfig($g_conf_lot_cluster, $id);
|
||||||
$l = array(
|
$l = array(
|
||||||
'id' => $lot_conf['id'],
|
'id' => $lot_conf['id'],
|
||||||
'item_id' => $lot_conf['item_id'],
|
'item_id' => $lot_conf['item_id'],
|
||||||
@ -115,6 +129,21 @@ class ActivityController{
|
|||||||
return $re;
|
return $re;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function getRecommend($rec_id)
|
||||||
|
{
|
||||||
|
$g_conf_rec_cluster = require('../res/recommend@recommend.php');
|
||||||
|
$rec_conf = getRecommendConfig($g_conf_rec_cluster, $rec_id);
|
||||||
|
$rec = array(
|
||||||
|
'pool' => $rec_conf['pool'],
|
||||||
|
'rank' => $rec_conf['rank'],
|
||||||
|
'time' => $rec_conf['time'],
|
||||||
|
'reward' => $rec_conf['reward'],
|
||||||
|
're_reward' => $rec_conf['regular_reward'],
|
||||||
|
'huge_reward' => $rec_conf['huge_reward'],
|
||||||
|
);
|
||||||
|
return $rec;
|
||||||
|
}
|
||||||
|
|
||||||
public function drawTableInfo()
|
public function drawTableInfo()
|
||||||
{
|
{
|
||||||
$account_id = $_REQUEST['account_id'];
|
$account_id = $_REQUEST['account_id'];
|
||||||
@ -140,8 +169,15 @@ class ActivityController{
|
|||||||
}
|
}
|
||||||
|
|
||||||
//道具物品
|
//道具物品
|
||||||
$user_db_str = $r->get($drawtable_uuid);
|
//$user_db_str = $r->get($drawtable_uuid);
|
||||||
if (empty($user_db_str)) {
|
$drawtable_list = $this->randomReward(2);
|
||||||
|
$drawtable_db = array(
|
||||||
|
'drawtable_uuid' => $drawtable_uuid,
|
||||||
|
'drawtable_list' => $drawtable_list,
|
||||||
|
);
|
||||||
|
$r -> set($drawtable_uuid, json_encode($drawtable_db));
|
||||||
|
$r -> pexpire($drawtable_uuid, 1000 * 3600 * 24);
|
||||||
|
/*if (empty($user_db_str)) {
|
||||||
$drawtable_list = $this->randomReward(2);
|
$drawtable_list = $this->randomReward(2);
|
||||||
$drawtable_db = array(
|
$drawtable_db = array(
|
||||||
'drawtable_uuid' => $drawtable_uuid,
|
'drawtable_uuid' => $drawtable_uuid,
|
||||||
@ -151,6 +187,13 @@ class ActivityController{
|
|||||||
$r -> pexpire($drawtable_uuid, 1000 * 3600 * 24);
|
$r -> pexpire($drawtable_uuid, 1000 * 3600 * 24);
|
||||||
} else {
|
} else {
|
||||||
$drawtable_db = json_decode($user_db_str, true);
|
$drawtable_db = json_decode($user_db_str, true);
|
||||||
|
$drawtable_list = $this->randomReward(2);
|
||||||
|
$drawtable_db = array(
|
||||||
|
'drawtable_uuid' => $drawtable_uuid,
|
||||||
|
'drawtable_list' => $drawtable_list,
|
||||||
|
);
|
||||||
|
$r -> set($drawtable_uuid, json_encode($drawtable_db));
|
||||||
|
$r -> pexpire($drawtable_uuid, 1000 * 3600 * 24);
|
||||||
$rowTime = $conn->execQueryOne('SELECT modify_time FROM activity WHERE accountid=:accountid;',
|
$rowTime = $conn->execQueryOne('SELECT modify_time FROM activity WHERE accountid=:accountid;',
|
||||||
array(
|
array(
|
||||||
':accountid' => $account_id
|
':accountid' => $account_id
|
||||||
@ -178,7 +221,7 @@ class ActivityController{
|
|||||||
));
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
|
|
||||||
echo json_encode(array(
|
echo json_encode(array(
|
||||||
'errcode' => 0,
|
'errcode' => 0,
|
||||||
@ -310,14 +353,14 @@ class ActivityController{
|
|||||||
$weight_sum = 0;
|
$weight_sum = 0;
|
||||||
$g_conf_lot_cluster = require('../res/lotterydraw@lotterydraw.php');
|
$g_conf_lot_cluster = require('../res/lotterydraw@lotterydraw.php');
|
||||||
for ($i = 1; $i <= count($g_conf_lot_cluster); $i++) {
|
for ($i = 1; $i <= count($g_conf_lot_cluster); $i++) {
|
||||||
$l = $this->getLottery($i);
|
$l = $this->getDrawTableConfig($i);
|
||||||
$weight_sum += $l['jilv'];
|
$weight_sum += $l['jilv'];
|
||||||
}
|
}
|
||||||
$random = Rand(0, $weight_sum);
|
$random = Rand(0, $weight_sum);
|
||||||
$weight = 0;
|
$weight = 0;
|
||||||
$key = 0;
|
$key = 0;
|
||||||
for ($ii = 1; $ii <= count($g_conf_lot_cluster); $ii++) {
|
for ($ii = 1; $ii <= count($g_conf_lot_cluster); $ii++) {
|
||||||
$l = $this->getLottery($ii);
|
$l = $this->getDrawTableConfig($ii);
|
||||||
$weight += $l['jilv'];
|
$weight += $l['jilv'];
|
||||||
if ($weight > $random) {
|
if ($weight > $random) {
|
||||||
$key = $ii;
|
$key = $ii;
|
||||||
@ -567,7 +610,12 @@ class ActivityController{
|
|||||||
$item_id = 0;
|
$item_id = 0;
|
||||||
$item_num = 0;
|
$item_num = 0;
|
||||||
$key = 0;
|
$key = 0;
|
||||||
$l = $this->getLottery($i);
|
$l = array();
|
||||||
|
if ($type == 1) {
|
||||||
|
$l = $this->getLottery($i);
|
||||||
|
} else {
|
||||||
|
$l = $this->getDrawTableConfig($i);
|
||||||
|
}
|
||||||
//确定商品id和数量
|
//确定商品id和数量
|
||||||
$weight_sum = 0;
|
$weight_sum = 0;
|
||||||
$weight_array = $this->getExplode($l['weight']);
|
$weight_array = $this->getExplode($l['weight']);
|
||||||
@ -602,9 +650,140 @@ class ActivityController{
|
|||||||
return $draw_list;
|
return $draw_list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function lotteryReward()
|
||||||
|
{
|
||||||
|
$account_id = $_REQUEST['account_id'];
|
||||||
|
//登录校验
|
||||||
|
$login = loginVerify($account_id, $_REQUEST['session_id']);
|
||||||
|
if (!$login) {
|
||||||
|
phpcommon\sendError(ERR_USER_BASE + 1, 'session无效');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$pool = $_REQUEST['pool'];
|
||||||
|
$rec = $this->getRecommend($pool);
|
||||||
|
$reward_id = 0;
|
||||||
|
$item_list = array();
|
||||||
|
$all_item_list = array();
|
||||||
|
$reward_array = array();
|
||||||
|
$addreward = new classes\AddReward();
|
||||||
|
$delim = "|";
|
||||||
|
$num_multiply = explode($delim, $rec['huge_reward']);
|
||||||
|
//随机奖励
|
||||||
|
for($i = 0; $i < $rec['reward']; $i++) {
|
||||||
|
$item_num = 1;
|
||||||
|
$time = $this->randtime($rec['time']);
|
||||||
|
$reward_id = $this->randlottery($reward_array, $pool);
|
||||||
|
array_push($reward_array, array(
|
||||||
|
'id' => $reward_id
|
||||||
|
));
|
||||||
|
if ($reward_id == 10001) {
|
||||||
|
$item_num = $num_multiply[0];
|
||||||
|
$time = 0;
|
||||||
|
} else if ($reward_id == 10003) {
|
||||||
|
$item_num = $num_multiply[1];
|
||||||
|
$time = 0;
|
||||||
|
}
|
||||||
|
array_push($item_list, array(
|
||||||
|
'item_id' => $reward_id,
|
||||||
|
'item_num' => $item_num,
|
||||||
|
'time' => $time,
|
||||||
|
));
|
||||||
|
$items = $addreward->addReward($reward_id, $item_num, $account_id, $time, 0);
|
||||||
|
foreach($items as $j) {
|
||||||
|
array_push($all_item_list, array(
|
||||||
|
'item_id' => $j['item_id'],
|
||||||
|
'item_num' => $j['item_num'],
|
||||||
|
'time' => $j['time'],
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//固定奖励
|
||||||
|
$delim2 = ":";
|
||||||
|
$re_multiply = explode($delim2, $rec['re_reward']);;
|
||||||
|
array_push($item_list, array(
|
||||||
|
'item_id' => $re_multiply[0],
|
||||||
|
'item_num' => $re_multiply[1],
|
||||||
|
'time' => 0,
|
||||||
|
));
|
||||||
|
$items = $addreward->addReward($re_multiply[0], $re_multiply[1], $account_id, 0, 0);
|
||||||
|
foreach($items as $s) {
|
||||||
|
array_push($all_item_list, array(
|
||||||
|
'item_id' => $s['item_id'],
|
||||||
|
'item_num' => $s['item_num'],
|
||||||
|
'time' => $s['time'],
|
||||||
|
));
|
||||||
|
}
|
||||||
|
$coin_num = $addreward->getCoinNum($account_id);
|
||||||
|
$diamond_num = $addreward->getDiamondNum($account_id);
|
||||||
|
|
||||||
|
echo json_encode(array(
|
||||||
|
'errcode' => 0,
|
||||||
|
'errmsg'=> '',
|
||||||
|
'coin_nums' => $coin_num,
|
||||||
|
'diamond_nums' => $diamond_num,
|
||||||
|
'item_list' => $item_list,
|
||||||
|
'all_item_list' => $all_item_list
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function randtime($str_time)
|
||||||
|
{
|
||||||
|
$weight_sum = 0;
|
||||||
|
$weight_array = $this->getExplode($str_time);
|
||||||
|
for ($ii = 0; $ii < count($weight_array); $ii++) {
|
||||||
|
$weight_sum += $weight_array[$ii][1];
|
||||||
|
}
|
||||||
|
$random = Rand(0, $weight_sum);
|
||||||
|
$weight = 0;
|
||||||
|
$key = 0;
|
||||||
|
for ($ii = 0; $ii < count($weight_array); $ii++) {
|
||||||
|
$weight += $weight_array[$ii][1];
|
||||||
|
if ($weight > $random) {
|
||||||
|
$key = $weight_array[$ii][0];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $key;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function randlottery($id, $pool)
|
||||||
|
{
|
||||||
|
$weight_sum = 0;
|
||||||
|
$rand_array = array();
|
||||||
|
$po = $pool - 1;
|
||||||
|
$g_conf_item_cluster = require('../res/item@item.php');
|
||||||
|
foreach($g_conf_item_cluster as $items) {
|
||||||
|
$flag = 0;
|
||||||
|
$it = $this->getItem($items['id']);
|
||||||
|
if ($it['id'] != 0) {
|
||||||
|
foreach ($id as $ids) {
|
||||||
|
if ($it['id'] == $ids['id']) {
|
||||||
|
$flag = 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($flag == 1) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
$weight_array = $this->getExplode($it['pool_weight']);
|
||||||
|
$weight_sum += $weight_array[$po][0];
|
||||||
|
array_push($rand_array, array(
|
||||||
|
'id' => $it['id'],
|
||||||
|
'weight' => $weight_array[$po][0]
|
||||||
|
));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$random = Rand(0, $weight_sum);
|
||||||
|
$weight = 0;
|
||||||
|
$key = 0;
|
||||||
|
foreach ($rand_array as $r) {
|
||||||
|
$weight += $r['weight'];
|
||||||
|
if ($weight > $random) {
|
||||||
|
$key = $r['id'];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $key;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
@ -116,9 +116,9 @@ class RoleController{
|
|||||||
':accountid' => $account_id
|
':accountid' => $account_id
|
||||||
));
|
));
|
||||||
if (!$row) {
|
if (!$row) {
|
||||||
$ret = $conn->execScript('INSERT INTO user(accountid, user_name, avatar_url, game_times, win_times, kills, harm, add_HP, alive_time, coin_num, integral, kill_his, alive_time_his, harm_his, add_HP_his, act_share_time, act_share_status, create_time, modify_time, first_fight, collect_status, keys_num, battle_re_times, shop_flush_times, kefu_status, sign_sum, box_num, diamond_num, sum_coin, pass_status, score, season_status, recharge_times_total, first_gift, season_time, free_coin, free_diamond, season_end_score, kill_modifytime, win_modifytime, rank_modifytime, vip_score, first_login, daily_first_login, daily_time, free_box, update_time) ' .
|
$ret = $conn->execScript('INSERT INTO user(accountid, user_name, avatar_url, game_times, win_times, kills, harm, add_HP, alive_time, coin_num, integral, kill_his, alive_time_his, harm_his, add_HP_his, act_share_time, act_share_status, create_time, modify_time, first_fight, collect_status, keys_num, battle_re_times, shop_flush_times, kefu_status, sign_sum, box_num, diamond_num, sum_coin, pass_status, score, season_status, recharge_times_total, first_gift, season_time, free_coin, free_diamond, season_end_score, kill_modifytime, win_modifytime, rank_modifytime, vip_score, first_login, daily_first_login, daily_time, free_box, update_time, season_games, season_win, sea_max_kill, sea_max_hart, sea_avg_kill) ' .
|
||||||
' VALUES(:accountid, :user_name, :avatar_url, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :create_time, :modify_time, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :daily_time, 0,0) ' .
|
' VALUES(:accountid, :user_name, :avatar_url, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :create_time, :modify_time, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :daily_time, 0,0,0,0,0,0,0) ' .
|
||||||
' ON DUPLICATE KEY UPDATE accountid=:accountid, user_name=:user_name, avatar_url=:avatar_url, game_times=0, win_times=0, kills=0, harm=0, add_HP=0, alive_time=0, coin_num=0, integral=0, kill_his=0, alive_time_his=0, harm_his=0, add_HP_his=0, act_share_time=0, act_share_status=0, modify_time=:modify_time, first_fight=0, collect_status=0, keys_num=0, battle_re_times=0, shop_flush_times=0, kefu_status=0, sign_sum=0, box_num=0, diamond_num=0, sum_coin=0, pass_status=0, score=0, season_status=1, recharge_times_total=0, first_gift=0, season_time=0, free_coin=0, free_diamond=0, season_end_score=0, kill_modifytime=0, win_modifytime=0, rank_modifytime=0, vip_score=0, first_login=0, daily_first_login=0, daily_time=:daily_time, free_box=0, update_time=0;',
|
' ON DUPLICATE KEY UPDATE accountid=:accountid, user_name=:user_name, avatar_url=:avatar_url, game_times=0, win_times=0, kills=0, harm=0, add_HP=0, alive_time=0, coin_num=0, integral=0, kill_his=0, alive_time_his=0, harm_his=0, add_HP_his=0, act_share_time=0, act_share_status=0, modify_time=:modify_time, first_fight=0, collect_status=0, keys_num=0, battle_re_times=0, shop_flush_times=0, kefu_status=0, sign_sum=0, box_num=0, diamond_num=0, sum_coin=0, pass_status=0, score=0, season_status=1, recharge_times_total=0, first_gift=0, season_time=0, free_coin=0, free_diamond=0, season_end_score=0, kill_modifytime=0, win_modifytime=0, rank_modifytime=0, vip_score=0, first_login=0, daily_first_login=0, daily_time=:daily_time, free_box=0, update_time=0, season_games=0, season_win=0, sea_max_kill=0, sea_max_hart=0, sea_avg_kill=0;',
|
||||||
array(
|
array(
|
||||||
':accountid' => $account_id,
|
':accountid' => $account_id,
|
||||||
':user_name' => $user_name,
|
':user_name' => $user_name,
|
||||||
@ -156,7 +156,12 @@ class RoleController{
|
|||||||
'recharge_times_total' => 0,
|
'recharge_times_total' => 0,
|
||||||
'first_login' => 0,
|
'first_login' => 0,
|
||||||
'daily_first_login' => 0,
|
'daily_first_login' => 0,
|
||||||
'free_box' => 0
|
'free_box' => 0,
|
||||||
|
'season_games' => 0,
|
||||||
|
'season_win' => 0,
|
||||||
|
'sea_max_kill' => 0,
|
||||||
|
'sea_max_hart' => 0,
|
||||||
|
'sea_avg_kill' => 0
|
||||||
));
|
));
|
||||||
} else {
|
} else {
|
||||||
$ret = $conn->execScript('UPDATE user SET first_login=1 ' .
|
$ret = $conn->execScript('UPDATE user SET first_login=1 ' .
|
||||||
@ -231,7 +236,12 @@ class RoleController{
|
|||||||
'vip_score' => $row['vip_score'],
|
'vip_score' => $row['vip_score'],
|
||||||
'coin_nums' => $row['coin_num'],
|
'coin_nums' => $row['coin_num'],
|
||||||
'diamond_nums' => $row['diamond_num'],
|
'diamond_nums' => $row['diamond_num'],
|
||||||
'free_box' => $row['free_box']
|
'free_box' => $row['free_box'],
|
||||||
|
'season_games' => $row['season_games'],
|
||||||
|
'season_win' => $row['season_win'],
|
||||||
|
'sea_max_kill' => $row['sea_max_kill'],
|
||||||
|
'sea_max_hart' => $row['sea_max_hart'],
|
||||||
|
'sea_avg_kill' => $row['sea_avg_kill']
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -323,11 +333,12 @@ class RoleController{
|
|||||||
}
|
}
|
||||||
//更新胜场信息时间
|
//更新胜场信息时间
|
||||||
if ($rank == 1) {
|
if ($rank == 1) {
|
||||||
$winret = $conn->execScript('UPDATE user SET win_times=:win_times, win_modifytime=:win_modifytime ' .
|
$winret = $conn->execScript('UPDATE user SET win_times=:win_times, season_win=:season_win, win_modifytime=:win_modifytime ' .
|
||||||
' WHERE accountid=:accountid;',
|
' WHERE accountid=:accountid;',
|
||||||
array(
|
array(
|
||||||
':accountid' => $account_id,
|
':accountid' => $account_id,
|
||||||
':win_times' => $row['win_times'] + 1,
|
':win_times' => $row['win_times'] + 1,
|
||||||
|
':season_win' => $row['season_win'] + 1,
|
||||||
':win_modifytime' => time(),
|
':win_modifytime' => time(),
|
||||||
));
|
));
|
||||||
if (!$winret) {
|
if (!$winret) {
|
||||||
@ -356,6 +367,17 @@ class RoleController{
|
|||||||
if ($harm_his < $row['harm_his']) {
|
if ($harm_his < $row['harm_his']) {
|
||||||
$harm_his = $row['harm_his'];
|
$harm_his = $row['harm_his'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$sea_max_hart = $harm;
|
||||||
|
if ($sea_max_hart < $row['sea_max_hart']) {
|
||||||
|
$sea_max_hart = $row['sea_max_hart'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$sea_max_kill = $kills;
|
||||||
|
if ($sea_max_kill < $row['sea_max_kill']) {
|
||||||
|
$sea_max_kill = $row['sea_max_kill'];
|
||||||
|
}
|
||||||
|
|
||||||
if ($alive_time_his < $row['alive_time_his']) {
|
if ($alive_time_his < $row['alive_time_his']) {
|
||||||
$alive_time_his = $row['alive_time_his'];
|
$alive_time_his = $row['alive_time_his'];
|
||||||
}
|
}
|
||||||
@ -377,7 +399,7 @@ class RoleController{
|
|||||||
if ($switch == 1) {
|
if ($switch == 1) {
|
||||||
$daily_first_login = $daily_first_login + 1;
|
$daily_first_login = $daily_first_login + 1;
|
||||||
}
|
}
|
||||||
$ret = $conn->execScript('UPDATE user SET game_times=:game_times, kills=:kills, harm=:harm, add_HP=:add_HP, alive_time=:alive_time, kill_his=:kill_his, alive_time_his=:alive_time_his, harm_his=:harm_his, add_HP_his=:add_HP_his, coin_num=:coin_num, modify_time=:modify_time, first_fight=1, box_num=:box_num, score=:score, daily_time=:daily_time, daily_first_login=:daily_first_login ' .
|
$ret = $conn->execScript('UPDATE user SET game_times=:game_times, kills=:kills, harm=:harm, add_HP=:add_HP, alive_time=:alive_time, kill_his=:kill_his, alive_time_his=:alive_time_his, harm_his=:harm_his, add_HP_his=:add_HP_his, coin_num=:coin_num, modify_time=:modify_time, first_fight=1, box_num=:box_num, score=:score, daily_time=:daily_time, daily_first_login=:daily_first_login, season_games=:season_games, sea_max_kill=:sea_max_kill, sea_max_hart=:sea_max_hart, sea_avg_kill=:sea_avg_kill ' .
|
||||||
'WHERE accountid=:accountid;',
|
'WHERE accountid=:accountid;',
|
||||||
array(
|
array(
|
||||||
':game_times' => $row['game_times'] + 1,
|
':game_times' => $row['game_times'] + 1,
|
||||||
@ -395,7 +417,11 @@ class RoleController{
|
|||||||
':box_num' => $box_num,
|
':box_num' => $box_num,
|
||||||
':score' => $row['score'] + $score,
|
':score' => $row['score'] + $score,
|
||||||
':daily_time' => $daily_time,
|
':daily_time' => $daily_time,
|
||||||
':daily_first_login' => $daily_first_login
|
':daily_first_login' => $daily_first_login,
|
||||||
|
':season_games' => $row['season_games'] + 1,
|
||||||
|
':sea_max_kill' => $sea_max_kill,
|
||||||
|
':sea_max_hart' => $sea_max_hart,
|
||||||
|
':sea_avg_kill' => $row['sea_avg_kill'] + $kills,
|
||||||
));
|
));
|
||||||
if (!$ret) {
|
if (!$ret) {
|
||||||
die();
|
die();
|
||||||
|
@ -35,8 +35,10 @@ class ShopController{
|
|||||||
$item_conf = getItemConfig($g_conf_item_cluster, $item_id);
|
$item_conf = getItemConfig($g_conf_item_cluster, $item_id);
|
||||||
$it = array(
|
$it = array(
|
||||||
'id' => $item_conf['id'],
|
'id' => $item_conf['id'],
|
||||||
'price' => $item_conf['price'],
|
'price' => $item_conf['gold'],
|
||||||
'dprice' => $item_conf['dprice'],
|
'dprice' => $item_conf['diamond_price'],
|
||||||
|
'discount' => $item_conf['discount'],
|
||||||
|
'shop_type' => $item_conf['shop_type'],
|
||||||
);
|
);
|
||||||
return $it;
|
return $it;
|
||||||
}
|
}
|
||||||
@ -132,37 +134,180 @@ class ShopController{
|
|||||||
phpcommon\sendError(ERR_USER_BASE + 1, 'session无效');
|
phpcommon\sendError(ERR_USER_BASE + 1, 'session无效');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$shop_uuid = 'game2004api_shop_uuid: ' . md5($_REQUEST['account_id']);
|
|
||||||
$diamond_shop_uuid = 'game2004api_diamond_shop_uuid:' . md5($_REQUEST['account_id']);
|
|
||||||
//钻石商店信息
|
|
||||||
//$diamond_shop_list = $this->getShopInfo($diamond_shop_uuid, 2);
|
|
||||||
//商店信息
|
|
||||||
$shop_list = $this->getShopInfo($shop_uuid);
|
|
||||||
$conn = $this->getMysql($account_id);
|
$conn = $this->getMysql($account_id);
|
||||||
if (!$conn) {
|
if (!$conn) {
|
||||||
phpcommon\sendError(ERR_USER_BASE + 2, '没有这个玩家');
|
phpcommon\sendError(ERR_USER_BASE + 2, '没有这个玩家');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$row = $conn->execQueryOne('SELECT shop_flush_times FROM user WHERE accountid=:accountid;',
|
$shop_uuid = 'game2004api_shop_uuid: ' . md5($_REQUEST['account_id']);
|
||||||
array(
|
$diamond_shop_uuid = 'game2004api_diamond_shop_uuid:' . md5($_REQUEST['account_id']);
|
||||||
':accountid' => $account_id
|
//商店信息
|
||||||
));
|
$shop_list = $this->getShopInfo($shop_uuid);
|
||||||
if (!$row) {
|
|
||||||
phpcommon\sendError(ERR_USER_BASE + 2, '没有这个玩家');
|
$rand_coinshop = array();
|
||||||
return;
|
$rand_diamondshop = array();
|
||||||
|
$g_conf_item_cluster = require('../res/item@item.php');
|
||||||
|
$rows = $conn->execQuery('SELECT * FROM bag WHERE accountid=:accountid;',
|
||||||
|
array(
|
||||||
|
':accountid' => $account_id
|
||||||
|
));
|
||||||
|
$status = 0;
|
||||||
|
$coin_shop = array();
|
||||||
|
$diamond_shop = array();
|
||||||
|
foreach($g_conf_item_cluster as $items) {
|
||||||
|
$it = $this->getItem($items['id']);
|
||||||
|
$status = 0;
|
||||||
|
foreach($rows as $r) {
|
||||||
|
if ($r['id'] != $it['id']) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if ($r['status'] == 2 || $r['active_time'] != 0) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
$status = 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if ($it['shop_type'] == 1) {
|
||||||
|
if ($status == 0) {
|
||||||
|
array_push($rand_coinshop,array(
|
||||||
|
'id' => $it['id'],
|
||||||
|
));
|
||||||
|
}
|
||||||
|
array_push($coin_shop,array(
|
||||||
|
'id' => $it['id'],
|
||||||
|
'price' => $it['price'],
|
||||||
|
'status' => $status,
|
||||||
|
'discount' => 0,
|
||||||
|
'coin_id' => 10001,
|
||||||
|
));
|
||||||
|
} else if ($it['shop_type'] == 2) {
|
||||||
|
if ($status == 0) {
|
||||||
|
array_push($rand_diamondshop,array(
|
||||||
|
'id' => $it['id'],
|
||||||
|
));
|
||||||
|
}
|
||||||
|
array_push($diamond_shop,array(
|
||||||
|
'id' => $it['id'],
|
||||||
|
'price' => $it['dprice'],
|
||||||
|
'status' => $status,
|
||||||
|
'discount' => 0,
|
||||||
|
'coin_id' => 10003,
|
||||||
|
));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$row_shop = $conn->execQueryOne('SELECT * FROM shop WHERE accountid=:accountid;',
|
||||||
|
array(
|
||||||
|
':accountid' => $account_id
|
||||||
|
));
|
||||||
|
|
||||||
|
$randcoin_id = 0;
|
||||||
|
$coin_discount = 0;
|
||||||
|
if (count($rand_coinshop) >= 1) {
|
||||||
|
$random_coin = Rand(0, count($rand_coinshop) - 1);
|
||||||
|
$randcoin_id = $rand_coinshop[$random_coin]['id'];
|
||||||
|
$cinfo = $this->getItem($randcoin_id);
|
||||||
|
$coin_discount = $this->randdiscount($cinfo['discount']);
|
||||||
|
}
|
||||||
|
|
||||||
|
$randdiamnod_id = 0;
|
||||||
|
$dia_discount = 0;
|
||||||
|
if (count($rand_diamondshop) >= 1) {
|
||||||
|
$random_diamond = Rand(0, count($rand_diamondshop) - 1);
|
||||||
|
$randdiamnod_id = $rand_diamondshop[$random_diamond]['id'];
|
||||||
|
$dinfo = $this->getItem($randdiamnod_id);
|
||||||
|
$dia_discount = $this->randdiscount($dinfo['discount']);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (!$row_shop) {
|
||||||
|
$ret = $conn->execScript('INSERT INTO shop(accountid, coin_id, coin_discount, diamond_id, diamond_discount, create_time, modify_time) ' .
|
||||||
|
' VALUES(:account_id, :coin_id, :coin_discount, :diamond_id, :diamond_discount, :create_time, :modify_time) ' .
|
||||||
|
' ON DUPLICATE KEY UPDATE accountid=:account_id, coin_id=:coin_id, coin_discount=:coin_discount, diamond_id=:diamond_id, diamond_discount=:diamond_discount, modify_time=:modify_time;',
|
||||||
|
array(
|
||||||
|
':account_id' => $account_id,
|
||||||
|
':coin_id' => $randcoin_id,
|
||||||
|
':coin_discount' => $coin_discount,
|
||||||
|
':diamond_id' => $randdiamnod_id,
|
||||||
|
':diamond_discount' => $dia_discount,
|
||||||
|
':create_time' => time(),
|
||||||
|
':modify_time' => time()
|
||||||
|
));
|
||||||
|
if(!$ret){
|
||||||
|
die();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (phpcommon\getdayseconds(time()) - phpcommon\getdayseconds($row_shop['modify_time']) > 0) {
|
||||||
|
$ret = $conn->execScript('UPDATE shop SET coin_id=:coin_id, coin_discount=:coin_discount, diamond_id=:diamond_id, diamond_discount=:diamond_discount, modify_time=:modify_time ' .
|
||||||
|
' WHERE accountid=:accountid;',
|
||||||
|
array(
|
||||||
|
':accountid' => $account_id,
|
||||||
|
':coin_id' => $randcoin_id,
|
||||||
|
':coin_discount' => $coin_discount,
|
||||||
|
':diamond_id' => $randdiamnod_id,
|
||||||
|
':diamond_discount' => $dia_discount,
|
||||||
|
':modify_time' => time()
|
||||||
|
));
|
||||||
|
if (!$ret) {
|
||||||
|
die();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$randcoin_id = $row_shop['coin_id'];
|
||||||
|
$coin_discount = $row_shop['coin_discount'];
|
||||||
|
$randdiamnod_id = $row_shop['diamond_id'];
|
||||||
|
$dia_discount = $row_shop['diamond_discount'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foreach($coin_shop as &$co) {
|
||||||
|
if ($co['id'] == $randcoin_id && $co['status'] != 1) {
|
||||||
|
error_log($randcoin_id);
|
||||||
|
$co['discount'] = $coin_discount;
|
||||||
|
$co['price'] = round($co['price'] * $coin_discount / 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
unset($co);
|
||||||
|
|
||||||
|
foreach($diamond_shop as &$di) {
|
||||||
|
if ($di['id'] == $randdiamnod_id && $di['status'] != 1) {
|
||||||
|
$di['discount'] = $dia_discount;
|
||||||
|
$di['price'] = round($di['price'] * $dia_discount / 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
unset($di);
|
||||||
echo json_encode(array(
|
echo json_encode(array(
|
||||||
'errcode' => 0,
|
'errcode' => 0,
|
||||||
'errmsg'=> '',
|
'errmsg'=> '',
|
||||||
'shop_uuid' => $shop_uuid,
|
'shop_uuid' => $shop_uuid,
|
||||||
'shop_list' => $shop_list,
|
'shop_list' => $shop_list,
|
||||||
'shop_flush_times' => $row['shop_flush_times'],
|
'shop_flush_times' => 0,
|
||||||
/*'diamond_shop_uuid' => $diamond_shop_uuid,
|
'coin_shop' => $coin_shop,
|
||||||
'diamond_shop_list' => $diamond_shop_list,
|
'diamond_shop' => $diamond_shop,
|
||||||
'diamond_shop_flush_times' => $row['diamond_shop_flush_times'],*/
|
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function randdiscount($array)
|
||||||
|
{
|
||||||
|
$keys = 0;
|
||||||
|
$weight_sum = 0;
|
||||||
|
$weight_array = $this->getExplode($array);
|
||||||
|
for ($ii = 0; $ii < count($weight_array); $ii++) {
|
||||||
|
$weight_sum += $weight_array[$ii][1];
|
||||||
|
}
|
||||||
|
$random = Rand(0, $weight_sum);
|
||||||
|
$weight = 0;
|
||||||
|
for ($ii = 0; $ii < count($weight_array); $ii++) {
|
||||||
|
$weight += $weight_array[$ii][1];
|
||||||
|
if ($weight > $random) {
|
||||||
|
$keys = $ii;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $weight_array[$keys][0];
|
||||||
|
}
|
||||||
|
|
||||||
public function buyItem()
|
public function buyItem()
|
||||||
{
|
{
|
||||||
$account_id = $_REQUEST['account_id'];
|
$account_id = $_REQUEST['account_id'];
|
||||||
@ -172,68 +317,60 @@ class ShopController{
|
|||||||
phpcommon\sendError(ERR_USER_BASE + 1, 'session无效');
|
phpcommon\sendError(ERR_USER_BASE + 1, 'session无效');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$shop_id = $_REQUEST['shop_id'];
|
$id = $_REQUEST['id'];
|
||||||
if (!isset($_REQUEST['shop_uuid'])) {
|
$conn = $this->getMysql($account_id);
|
||||||
|
if (!$conn) {
|
||||||
|
phpcommon\sendError(ERR_USER_BASE + 2, '没有这个玩家');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$shop_uuid = $_REQUEST['shop_uuid'];
|
$row = $conn->execQueryOne('SELECT status, active_time FROM bag WHERE accountid=:accountid AND id=:id;',
|
||||||
$item_id = 0;
|
array(
|
||||||
$item_num = 0;
|
':accountid' => $account_id,
|
||||||
$price = 0;
|
':id' => $id
|
||||||
$status = 0;
|
));
|
||||||
$flag = 0;
|
if ($row) {
|
||||||
$tip = 0;
|
if ($row['status'] != 2 && $row['active_time'] == 0) {
|
||||||
$r = $this->getRedis($shop_uuid);
|
phpcommon\sendError(ERR_USER_BASE + 4, '商品已购买');
|
||||||
$user_db_str = $r->get($shop_uuid);
|
return;
|
||||||
if (empty($user_db_str)) {
|
|
||||||
phpcommon\sendError(ERR_USER_BASE + 1,'session失效');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$user_db = json_decode($user_db_str, true);
|
|
||||||
if (empty($user_db)) {
|
|
||||||
phpcommon\sendError(ERR_USER_BASE + 1,'session失效');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
foreach ($user_db['shop_list'] as $shop) {
|
|
||||||
if ($shop['shop_id'] == $shop_id) {
|
|
||||||
$item_id = $shop['item_id'];
|
|
||||||
$item_num = $shop['item_num'];
|
|
||||||
$price = $shop['price'];
|
|
||||||
$status = $shop['status'];
|
|
||||||
$tip = $shop['tip'];
|
|
||||||
$time = $shop['time'];
|
|
||||||
$flag = 1;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ($flag == 0) {
|
|
||||||
phpcommon\sendError(ERR_USER_BASE + 3, '没有这个商品');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if ($status == 1) {
|
|
||||||
phpcommon\sendError(ERR_USER_BASE + 4, '商品已购买');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
//扣除货币
|
//扣除货币
|
||||||
$this->SubCoin($price, $account_id, $tip);
|
$i = $this->getItem($id);
|
||||||
//修改购买状态
|
$price = 0;
|
||||||
foreach ($user_db['shop_list'] as &$shop) {
|
if ($i['shop_type'] == 1) {
|
||||||
if ($shop['shop_id'] == $shop_id) {
|
$row_c = $conn->execQueryOne('SELECT * FROM shop WHERE accountid=:accountid AND coin_id=:id;',
|
||||||
$shop['status'] = 1;
|
array(
|
||||||
|
':accountid' => $account_id,
|
||||||
|
':id' => $id
|
||||||
|
));
|
||||||
|
$price = $i['price'];
|
||||||
|
if ($row_c) {
|
||||||
|
$price = round($i['price'] * $row_c['coin_discount'] / 10);
|
||||||
}
|
}
|
||||||
|
$this->SubCoin($price, $account_id, 1);
|
||||||
|
} else if ($i['shop_type'] == 2) {
|
||||||
|
$price = $i['dprice'];
|
||||||
|
$row_d = $conn->execQueryOne('SELECT * FROM shop WHERE accountid=:accountid AND diamond_id=:id;',
|
||||||
|
array(
|
||||||
|
':accountid' => $account_id,
|
||||||
|
':id' => $id
|
||||||
|
));
|
||||||
|
if ($row_d) {
|
||||||
|
$price = round($i['dprice'] * $row_d['diamond_discount'] / 10);
|
||||||
|
}
|
||||||
|
$this->SubCoin($price, $account_id, 2);
|
||||||
}
|
}
|
||||||
$r->set($shop_uuid, json_encode($user_db));
|
|
||||||
$r -> pexpire($shop_uuid, 1000 * 3600 * 24);
|
|
||||||
//增加奖励
|
//增加奖励
|
||||||
$addreward = new classes\AddReward();
|
$addreward = new classes\AddReward();
|
||||||
$all_item_list = $addreward->addReward($item_id, $item_num, $account_id, $time, 0);
|
$all_item_list = $addreward->addReward($id, 1, $account_id, 0, 0);
|
||||||
$coin_num = $addreward->getCoinNum($account_id);
|
$coin_num = $addreward->getCoinNum($account_id);
|
||||||
$diamond_num = $addreward->getDiamondNum($account_id);
|
$diamond_num = $addreward->getDiamondNum($account_id);
|
||||||
$item_list = array();
|
$item_list = array();
|
||||||
array_push($item_list,array(
|
array_push($item_list,array(
|
||||||
'item_id' => $item_id,
|
'item_id' => $id,
|
||||||
'item_num' => $item_num,
|
'item_num' => 1,
|
||||||
'time' => $time,
|
'time' => 0,
|
||||||
));
|
));
|
||||||
echo json_encode(array(
|
echo json_encode(array(
|
||||||
'errcode' => 0,
|
'errcode' => 0,
|
||||||
@ -515,7 +652,7 @@ class ShopController{
|
|||||||
array(
|
array(
|
||||||
':accountid' => $account_id
|
':accountid' => $account_id
|
||||||
));
|
));
|
||||||
if ($tips == 3) {
|
if ($tips == 1) {
|
||||||
//扣除货币
|
//扣除货币
|
||||||
if ($rowCoin['coin_num'] < $coin_num) {
|
if ($rowCoin['coin_num'] < $coin_num) {
|
||||||
phpcommon\sendError(ERR_USER_BASE + 5, '金币不足');
|
phpcommon\sendError(ERR_USER_BASE + 5, '金币不足');
|
||||||
@ -532,7 +669,7 @@ class ShopController{
|
|||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ($tips == 4) {
|
if ($tips == 2) {
|
||||||
//扣除货币
|
//扣除货币
|
||||||
if ($rowCoin['diamond_num'] < $coin_num) {
|
if ($rowCoin['diamond_num'] < $coin_num) {
|
||||||
phpcommon\sendError(ERR_USER_BASE + 5, '钻石不足');
|
phpcommon\sendError(ERR_USER_BASE + 5, '钻石不足');
|
||||||
|
@ -140,8 +140,9 @@ class SignController{
|
|||||||
if (phpcommon\getMondayseconds(time()) - phpcommon\getMondayseconds($rowuser['update_time']) > 0) {
|
if (phpcommon\getMondayseconds(time()) - phpcommon\getMondayseconds($rowuser['update_time']) > 0) {
|
||||||
$this->updateWeekReward($account_id);
|
$this->updateWeekReward($account_id);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if ($nowTime - phpcommon\getdayseconds($last_sign_time) > 0) {
|
||||||
$passed_days = floor(($nowTime - phpcommon\getdayseconds($last_sign_time)) / (3600 * 24));
|
$passed_days = floor(($nowTime - phpcommon\getdayseconds($last_sign_time)) / (3600 * 24));
|
||||||
|
|
||||||
if ($passed_days > 7 - $last_sign_id) {
|
if ($passed_days > 7 - $last_sign_id) {
|
||||||
//跨周时删除老数据
|
//跨周时删除老数据
|
||||||
$num = 0;
|
$num = 0;
|
||||||
@ -164,7 +165,7 @@ class SignController{
|
|||||||
} else {
|
} else {
|
||||||
$sum = $num;
|
$sum = $num;
|
||||||
}*/
|
}*/
|
||||||
for ($i = $last_sign_id + 1; $i < 7; $i++) {
|
for ($i = $last_sign_id + 1; $i < 7 + 1; $i++) {
|
||||||
//插入补签列表
|
//插入补签列表
|
||||||
$this->insertSign($account_id, $i);
|
$this->insertSign($account_id, $i);
|
||||||
}
|
}
|
||||||
@ -455,7 +456,7 @@ class SignController{
|
|||||||
':accountid' => $account_id,
|
':accountid' => $account_id,
|
||||||
));
|
));
|
||||||
if (time() > $rowUser['season_time'] && $rowUser['season_time'] != 0) {
|
if (time() > $rowUser['season_time'] && $rowUser['season_time'] != 0) {
|
||||||
$user_ret = $conn->execScript('UPDATE user SET pass_status=0, score=0, season_status=0, integral=0, season_end_score=:season_end_score, modify_time=:modify_time ' .
|
$user_ret = $conn->execScript('UPDATE user SET pass_status=0, score=0, season_status=0, integral=0, season_end_score=:season_end_score, modify_time=:modify_time, season_games=0, sea_max_kill=0, sea_max_hart=0, sea_avg_kill=0, season_win=0 ' .
|
||||||
' WHERE accountid=:accountid;',
|
' WHERE accountid=:accountid;',
|
||||||
array(
|
array(
|
||||||
':accountid' => $account_id,
|
':accountid' => $account_id,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user