This commit is contained in:
aozhiwei 2020-03-05 19:06:38 +08:00
parent f55039dfe5
commit 2fcc0245b0
11 changed files with 186 additions and 25 deletions

View File

@ -84,6 +84,7 @@ CREATE TABLE `user` (
`first_login` int(11) NOT NULL DEFAULT '0' COMMENT '是否第一次登陆',
`daily_first_login` 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 '每日免费宝箱',
PRIMARY KEY (`idx`),
UNIQUE KEY `accountid` (`accountid`)
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

View File

@ -113,6 +113,34 @@ class AddReward {
return $item_list;
}
public function getCoinNum($accountid)
{
$conn = $this->getMysql($accountid);
if (!$conn) {
phpcommon\sendError(ERR_USER_BASE + 1, '没有这个玩家');
die();
}
$row = $conn->execQueryOne('SELECT coin_num FROM user WHERE accountid=:accountid;',
array(
':accountid' => $accountid
));
return $row['coin_num'];
}
public function getDiamondNum($accountid)
{
$conn = $this->getMysql($accountid);
if (!$conn) {
phpcommon\sendError(ERR_USER_BASE + 1, '没有这个玩家');
die();
}
$row = $conn->execQueryOne('SELECT diamond_num FROM user WHERE accountid=:accountid;',
array(
':accountid' => $accountid
));
return $row['diamond_num'];
}
//添加礼包
protected function addGift($dropid, $accountid)
{

View File

@ -312,11 +312,21 @@ class ActivityController{
//增加奖励
$addreward = new classes\AddReward();
$addreward->addReward($item_id, $item_num, $account_id);
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
$item_list = array();
array_push($item_list,array(
'item_id' => $item_id,
'item_num' => $item_num,
));
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'item_id' => $item_id,
'item_num' => $item_num,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num,
'item_list' => $item_list
));
}
@ -347,9 +357,11 @@ class ActivityController{
$times = $p['value'] - 1;
$addreward = new classes\AddReward();
$addreward->addReward($row['item_id'], $row['item_num'] * $times, $account_id);
$coin_num = $addreward->getCoinNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'coin_nums' => $coin_num,
));
}

View File

@ -67,14 +67,15 @@ class EmojiController{
));
if (!$row && $emoji['get_type'] == 1) {
//插入默认上阵的表情
$ret = $conn->execScript('INSERT INTO emoji(accountid, emojiid, status, create_time, modify_time) ' .
' VALUES(:account_id, :emojiid, 0, :create_time, :modify_time) ' .
' ON DUPLICATE KEY UPDATE accountid=:account_id, emojiid=:emojiid, status=0, modify_time=:modify_time;',
$ret = $conn->execScript('INSERT INTO emoji(accountid, emojiid, status, create_time, modify_time) ' .
' VALUES(:account_id, :emojiid, 0, :create_time, :modify_time) ' .
' ON DUPLICATE KEY UPDATE accountid=:account_id, emojiid=:emojiid, status=0, modify_time=:modify_time;',
array(
':account_id' => $account_id,
':emojiid' => $id,
':create_time' => time(),
':modify_time' => time()
':modify_time' => time(),
//':type' => $emoji['type']
));
if(!$ret){
die();
@ -118,9 +119,37 @@ class EmojiController{
return;
}
$emoji_list = array();
$usingemoji_id = $_REQUEST['usingemoji_id'];
//$usingemoji_id = $_REQUEST['usingemoji_id'];
$exchangeemoji_id = $_REQUEST['exchangeemoji_id'];
$row = $conn->execQueryOne('SELECT status FROM emoji WHERE accountid=:accountid AND emojiid=:emojiid;',
$e = $this->getEmoji($exchangeemoji_id);
$emoji_meta_table = require('../res/emoji@emoji.php');
foreach ($emoji_meta_table as $emoji_info) {
$id = $emoji_info['id'];
$emoji = $this->getEmoji($id);
if ($emoji['type'] != $e['type']) {
continue;
}
$row = $conn->execQueryOne('SELECT status FROM emoji WHERE accountid=:accountid AND emojiid=:emojiid;',
array(
':accountid' => $account_id,
':emojiid' => $id,
));
if ($row['status'] != 0 || !$row) {
continue;
}
$using_ret = $conn->execScript('UPDATE emoji SET status=1, modify_time=:modify_time ' .
' WHERE accountid = :account_id AND emojiid = :emojiid;',
array(
':account_id' => $account_id,
':emojiid' => $id,
':modify_time' => time()
));
array_push($emoji_list, array(
'emoji_id' => $usingemoji_id,
'emoji_status' => 1
));
}
/*$row = $conn->execQueryOne('SELECT status FROM emoji WHERE accountid=:accountid AND emojiid=:emojiid;',
array(
':accountid' => $account_id,
':emojiid' => $usingemoji_id,
@ -148,7 +177,7 @@ class EmojiController{
array_push($emoji_list, array(
'emoji_id' => $usingemoji_id,
'emoji_status' => 1
));
));*/
$row = $conn->execQueryOne('SELECT status FROM emoji WHERE accountid=:accountid AND emojiid=:emojiid;',
array(
':accountid' => $account_id,
@ -233,11 +262,20 @@ class EmojiController{
//修改状态
$addreward = new classes\AddReward();
$addreward->addReward($id, 1, $account_id);
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
$item_list = array();
array_push($item_list,array(
'item_id' => $id,
'item_num' => 1,
));
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'emoji_status' => 1
'emoji_status' => 1,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num,
'item_list' => $item_list
));
}
}

View File

@ -346,10 +346,14 @@ class PassController{
}
$addreward = new classes\AddReward();
$addreward->addReward($drop_multiply[0], $drop_multiply[1], $account_id);
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'status' => 1,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num
));
}
@ -417,6 +421,7 @@ class PassController{
return;
}
$reward = array();
$level = 0;
$seaPoint_meta_table = require('../res/seasomPoint@seasomPoint.php');
for ($ii = 1; $ii <= count($seaPoint_meta_table); $ii++) {
$seaPoint = $this->getSeasonPoint($ii);
@ -429,10 +434,11 @@ class PassController{
'item_id' => $drop_multiply[0],
'item_num' => $drop_multiply[1],
));
$level = $ii;
}
}
$addreward = new classes\AddReward();
foreach ($reward as $r) {
$addreward = new classes\AddReward();
$addreward->addReward($r['item_id'], $r['item_num'], $account_id);
}
$ret = $conn->execScript('UPDATE user SET season_end_score=0, season_status=1, modify_time=:modify_time ' .
@ -445,10 +451,13 @@ class PassController{
die();
return;
}
$diamond_num = $addreward->getDiamondNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'item_list' => $reward,
'level' => $level,
'diamond_nums' => $diamond_num
));
}
}

View File

@ -421,14 +421,19 @@ class PayController{
if ($type == 1) {
$item_list = $this->getVipItemInfo($vip['dailyreward']);
}
$addreward = new classes\AddReward();
foreach ($item_list as $item) {
//增加奖励
$addreward = new classes\AddReward();
$addreward->addReward($item['item_id'], $item['item_num'], $account_id);
}
$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
));
}
@ -783,10 +788,14 @@ class PayController{
//添加通行证
$addreward = new classes\AddReward();
$addreward->addReward(10005, 1, $account_id);
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'status' => 1,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num
));
}
}

View File

@ -362,9 +362,14 @@ class QuestController{
$addreward = new classes\AddReward();
$addreward->addReward($reward_id, $reward_num, $account_id);
}
$addreward = new classes\AddReward();
$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,
));
}
@ -508,10 +513,15 @@ class QuestController{
}
}
}
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg' => '',
'item_list' => $item_list
'item_list' => $item_list,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num
));
}

View File

@ -117,9 +117,9 @@ class RoleController{
':accountid' => $account_id
));
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) ' .
' 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) ' .
' 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;',
$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) ' .
' 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) ' .
' 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;',
array(
':accountid' => $account_id,
':user_name' => $user_name,
@ -157,6 +157,7 @@ class RoleController{
'recharge_times_total' => 0,
'first_login' => 0,
'daily_first_login' => 0,
'free_box' => 0
));
} else {
$ret = $conn->execScript('UPDATE user SET first_login=1 ' .
@ -227,7 +228,11 @@ class RoleController{
'sum_coin' => $row['sum_coin'],
'recharge_times_total' => $row['recharge_times_total'],
'first_login' => 1,
'daily_first_login' =>$daily_first_login
'daily_first_login' =>$daily_first_login,
'vip_score' => $row['vip_score'],
'coin_nums' => $row['coin_num'],
'diamond_nums' => $row['diamond_num'],
'free_box' => $row['free_box']
));
}
}

View File

@ -162,10 +162,28 @@ class ShareController{
$item_list = array();
if ($free != 0) {
$p = $this->getParameter(DIAMONDBOX10);
$diamond_num = $p['param_value'];
$item_list = $this->randBoxReward(24001, 10);
} else {
$p = $this->getParameter(DIAMONDBOX);
$diamond_num = 0;
$item_list = $this->randBoxReward(24001, 1);
$row = $conn->execQueryOne('SELECT free_box FROM user WHERE accountid=:accountid;',
array(
':accountid' => $account_id
));
if ($row['free_box'] >= 5) {
phpcommon\sendError(ERR_USER_BASE + 2, '今日免费次数已达上限');
die();
return;
}
$ret = $conn->execScript('UPDATE user SET free_box=:free_box, ' .
'modify_time=:modify_time WHERE accountid=:accountid;',
array(
':accountid' => $account_id,
':modify_time' => time(),
':free_box' => $row['free_box'] + 1,
));
}
$row = $conn->execQueryOne('SELECT diamond_num FROM user WHERE accountid=:accountid;',
array(
@ -176,7 +194,6 @@ class ShareController{
die();
}
//扣除钻石
$diamond_num = $p['param_value'];
$this->subCoin($diamond_num, $account_id, $row['diamond_num']);
$num = $row['diamond_num'] - $diamond_num;
//保存开宝箱奖励
@ -214,7 +231,7 @@ class ShareController{
'errcode' => 0,
'errmsg' => '',
'item_list' => $item_list,
'diamond_num' => $num,
'diamond_nums' => $num,
));
}
@ -261,9 +278,12 @@ class ShareController{
$addreward->addReward($boxreward['item_id'], $boxreward['item_num'] * $times, $account_id);
}
$r->del($boxreward_uuid, json_encode($user_db));
$addreward = new classes\AddReward();
$coin_num = $addreward->getCoinNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg' => '',
'coin_nums' => $coin_num,
));
}
@ -469,9 +489,11 @@ class ShareController{
} else if ($ach_id == 6) {
$addreward->addReward(10003, 50 * $times, $account_id);
}
$coin_num = $addreward->getCoinNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg' => '',
'coin_nums' => $coin_num,
));
}
@ -575,10 +597,15 @@ class ShareController{
return;
}
}
$addreward = new classes\AddReward();
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
echo json_encode(array(
'errcode' => $errcode,
'errmsg' => $errmsg,
'item_list' => $item_list
'item_list' => $item_list,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num
));
}
@ -617,9 +644,12 @@ class ShareController{
$addreward->addReward($kefureward['item_id'], $kefureward['item_num'] * $times, $account_id);
}
$r->del($kefureward_uuid, json_encode($user_db));
$addreward = new classes\AddReward();
$coin_num = $addreward->getCoinNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg' => '',
'coin_nums' => $coin_num,
));
}
}

View File

@ -223,10 +223,19 @@ class ShopController{
//增加奖励
$addreward = new classes\AddReward();
$addreward->addReward($item_id, $item_num, $account_id);
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
$item_list = array();
array_push($item_list,array(
'item_id' => $item_id,
'item_num' => $item_num,
));
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num,
'item_list' => $item_list
));
}
@ -280,10 +289,11 @@ class ShopController{
$times = $p['param_value'] - 1;
$addreward = new classes\AddReward();
$addreward->addReward($item_id, $item_num * $times, $account_id);
$coin_num = $addreward->getCoinNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'coin_nums' => $coin_num,
));
}
@ -378,12 +388,17 @@ class ShopController{
$user_db['shop_list'] = $shop_list;
$r -> set($shop_uuid, json_encode($user_db));
$r -> pexpire($shop_uuid, 1000 * 3600 * 24);
$addreward = new classes\AddReward();
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg'=> '',
'shop_uuid' => $shop_uuid,
'shop_list' => $shop_list,
'flush_times' => $flush_times
'flush_times' => $flush_times,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num
));
}

View File

@ -273,10 +273,14 @@ class SignController{
));
$addreward = new classes\AddReward();
$addreward->addReward($item_id, $num, $account_id);
$coin_num = $addreward->getCoinNum($account_id);
$diamond_num = $addreward->getDiamondNum($account_id);
echo json_encode(array(
'errcode' => 0,
'errmsg' => '',
'item_list' => $item_list
'item_list' => $item_list,
'coin_nums' => $coin_num,
'diamond_nums' => $diamond_num
));
}
@ -376,7 +380,7 @@ class SignController{
}
}
//刷新战斗结算奖励次数,商店刷新次数,客服, 每日免费金币钻石
$battle_ret = $conn->execScript('UPDATE user SET battle_re_times=0, diamond_shop_flush_times=0, shop_flush_times=0, kefu_status=0, free_coin=0, free_diamond=0, modify_time=:modify_time ' .
$battle_ret = $conn->execScript('UPDATE user SET battle_re_times=0, diamond_shop_flush_times=0, shop_flush_times=0, kefu_status=0, free_coin=0, free_diamond=0, modify_time=:modify_time, free_box=0 ' .
' WHERE accountid=:accountid;',
array(
':accountid' => $account_id,