game2005api/webapp/controller/NBagController.class.php
aozhiwei b8bb70a77f 1
2021-06-18 22:23:50 +08:00

211 lines
7.6 KiB
PHP

<?php
require_once 'metatable/drop.php';
class NBagController extends BaseAuthedController {
public function testPhpFunc()
{
//_REQUEST
$account_id = $_REQUEST['account_id'];
$conn = $this->getMysql($account_id);
// $row = $conn->execQueryOne('SELECT guildcoin_num FROM user WHERE accountid=:accountid;',
// array(
// ':accountid' => $account_id
// ));
$sqlStr = "SELECT id,num FROM bag WHERE accountid=:accountid; ";
$row = $conn->execQueryOne($sqlStr,array(':accountid' => $account_id));
if($row) {
error_log("Test3======");
}
else{
error_log("Test4=======");
}
$this->sendDataToClient(0,"test02",$row);
//phpcommon\
// echo json_encode(array(
// 'errcode' => 0,
// 'errmsg' => '',
// 'data' => $row,
// ));
// ;
// error_log("FromPhpTest6".$_REQUEST);
// error_log("FromPhpTest3".$_REQUEST["name"]);
}
public function addItemToDB()
{
// $itemArr = [10101,10102,10103,10104,10105,10106,10200,10201,
// 10202,10203,10204,10205,10206,10207,10208,12100,12102,12103,12104,
// 12105,12106,12107,12119,12120,12121];
$itemIDArr = array(10101,10102,10103,10104,10105,10106,10200,10201,10202,10203,10204,10205,10206,10207,10208,12100,12102,12103,12104,
12105,12106,12107,12119,12120,12121,1006,1005,1004,1003,1002,1001,17004);
$len = count($itemIDArr);
$itemArr = array();
for($i = 0; $i< $len; $i++)
{
$itemN = rand(2,6);
if($itemIDArr[$i] == "17004")
{
$itemN = 30;
}
$itemData = array("item_id"=>$itemIDArr[$i],"item_num"=>$itemN);
array_push($itemArr,$itemData);
error_log("itemTest=01====".$itemIDArr[$i]."==".$itemN);
}
$this->addItem($itemArr);
$this->sendDataToClient(1,"test03",null);
}
public function saleItem()
{
$newItemCfg = require('../res/newitem@newitem.php');
$itemArr = array();
$itemID = $_REQUEST['itemID'];
$itemNum = $_REQUEST['itemNum'];
$itemCfg = $newItemCfg[$itemID];
$singlePrice = $itemCfg["sell_price"];
error_log("NewItemCfg=03=====".$itemID."===".$itemNum."==".$singlePrice);
$deleteItem = array("item_id"=>$itemID,"item_num"=>$itemNum);
array_push($itemArr,$deleteItem);
$code = $this->deleteItem($deleteItem);
error_log("准备删除道具======".$code);
if($code == 100)
{
$this->decItem($itemArr);
$this->addGold($singlePrice*$itemNum);
}
$resultArr = array('saleMoney'=>$singlePrice*$itemNum,'itemID'=>$itemID,'itemNum'=>$itemNum);
$this->sendDataToClient($code,"ok",$resultArr);
}
public function useItem()
{
$newItemCfg = require('../res/newitem@newitem.php');
$itemID = $_REQUEST['itemID'];
$itemNum = $_REQUEST['itemNum'];
$itemCfg = $newItemCfg[$itemID];
$dropID = $itemCfg["drop"];
error_log("掉落道具======".$dropID);
$item_list = array();
$itemArr = array();
$deleteItem = array("item_id"=>$itemID,"item_num"=>$itemNum);
array_push($itemArr,$deleteItem);
$code = $this->deleteItem($deleteItem);
if($code == 100)
{
$this->decItem($itemArr);
//合并打开礼包的获得的道具开始--
if($dropID >0)
{
for($i = 0 ; $i < $itemNum; $i++)
{
$dropItemArr = metatable\getDropListById($dropID);
$dropItemLen = count($dropItemArr);
for($j = 0; $j < $dropItemLen ; $j++)
{
$itemID = $dropItemArr[$j]["item_id"];
$itemListLen = count($item_list);
$isUpdate = 0;
for($k = 0; $k < $itemListLen; $k++)
{
if($item_list[$k]["item_id"] == $itemID)
{
$item_list[$k]["item_num"] += $dropItemArr[$j]["item_num"];
$isUpdate = 1;
break;
}
}
if($isUpdate == 0)
{
array_push($item_list,$dropItemArr[$j]);
}
}
}
//合并打开礼包的获得的道具结束--
$resultDropItemLen = count($item_list);
if($resultDropItemLen >0)
{
$this->addItem($item_list);
}
}
}
error_log("dropInfo=======".json_encode($item_list));
error_log("使用道具=====".json_encode($itemCfg));
$resultArr = array('itemID'=>$itemID,'itemNum'=>$itemNum,"dropItem"=>$item_list);
$this->sendDataToClient($code,"ok",$resultArr);
}
public function updateBag()
{
error_log("准备更新背包======");
$this->getAllItem();
}
public function getAllItem()
{
$account_id = $_REQUEST['account_id'];
$conn = $this->getMysql($account_id);
$sqlStr = "SELECT * FROM bag WHERE accountid=:accountid; ";
$row = $conn->execQuery($sqlStr,array(':accountid' => $account_id));
if($row) {
error_log("Test05======");
}
else{
error_log("Test06=======");
}
$this->sendDataToClient(0,"test03",$row);
}
public function getAllYokeItem()
{
$account_id = $_REQUEST['account_id'];
$conn = $this->getMysql($account_id);
$sqlStr = "SELECT * FROM bag WHERE accountid=:accountid; ";
$row = $conn->execQuery($sqlStr,array(':accountid' => $account_id));
$allYokeItem = array();
$newItemCfg = require('../res/newitem@newitem.php');
if($row) {
$len = count($row);
for($i = 0; $i < $len ; $i++)
{
$itemID = $row[$i]["id"];
$itemNum = $row[$i]["num"];
//error_log("Item=====".json_encode($row[$i]));
if(isset($newItemCfg[$itemID]))
{
$itemCfg = $newItemCfg[$itemID];
if($itemCfg)
{
if($itemCfg["type"] == 10)
{
$itemData = array("item_id"=>$itemID,"item_num"=>$itemNum);
array_push($allYokeItem,$itemData);
}
}
else
{
error_log("未定义======".$itemID."==".$len."==".$i);
}
}
}
}
else{
error_log("GetYokeItem=======");
}
$this->sendDataToClient(100,"allYokeItem",$allYokeItem);
}
public function testPhpFunc2()
{
echo json_encode("name=");
error_log("FromPhpTest2");
}
}