本帖最后由 liuzhly 于 2010-01-19 16:45 编辑
找到 if ( $_REQUEST['mod'] == "cgi_steal_product" )
{
............
$tounum = 0;
foreach ( $animal[animal] as $key => $value )
{
if ( $_REQUEST['type'] == $value->cId )
{
if ( !stristr( $value->tou, ",".$_SGLOBAL['supe_uid']."," ) )
{
if ( $shop[$_REQUEST['type']][output] / 2 < $value->totalCome )
{
// $value = "totalCome"; // 这里解决的也不是我们说的bug,而是偷蛋不减数、而且可以继续偷
$value->totalCome--;
++$tounum;
$value->tou = $value->tou.",".$_SGLOBAL['supe_uid'].",";
//成果
$mc_repertory = $_SGLOBAL['db']->result( $_SGLOBAL['db']->query( "SELECT repertory FROM ".tname( "plug_newfarm" )." where uid=".intval( $_SGLOBAL['supe_uid']) ), 0 );
$mc_repertory = json_decode( $mc_repertory);
$flag=false;
foreach($mc_repertory ->r as $key=>$val){
if($_REQUEST['type'] == $val->cId){
$flag=true;
$mc_repertory->r[$key]->scrounge=$mc_repertory->r[$key]->scrounge+$tounum;
}
}
if(!$flag){
$cName="";
switch ($_REQUEST['type']) {
case 1001:
$cName="\\u9E21\\u86CB";
break;
case 1002:
$cName="\\u5154\\u4ED4";
break;
case 1003:
$cName="\\u9E45\\u86CB";
break;
case 1004:
$cName="\\u5C0F\\u732B\\u4ED4";
break;
case 1005:
$cName="\\u5B54\\u96C0\\u6BDB";
break;
case 1006:
$cName="\\u5C0F\\u4F01\\u9E45";
break;
case 1007:
$cName="\\u5C0F\\u4E4C\\u9F9F";
break;
case 1008:
$cName="\\u677E\\u9F20\\u5D3D";
break;
case 1009:
$cName="\\u5C0F\\u6CE2\\u65AF\\u732B\\u5D3D";
break;
case 1010:
$cName="\\u5C0F\\u4ED3\\u9F20";
break;
case 1501:
$cName="\\u7F8A\\u6BDB";
break;
case 1502:
$cName="\\u725B\\u5976";
break;
case 1503:
$cName="\\u5C0F\\u7334\\u4ED4";
break;
case 1504:
$cName="\\u5C0F\\u888B\\u9F20";
break;
case 1505:
$cName="\\u5C0F\\u6885\\u82B1\\u9E7F";
break;
case 1507:
$cName="\\u7F9A\\u7F8A";
break;
}
$mc_repertory->r[] = "{\"cId\":".$_REQUEST['type'].",\"cName\":\"".$cName."\",\"harvest\":0,\"scrounge\":".$tounum."}";
}
$mc_repertory = json_encode( $mc_repertory );
$mc_repertory = str_replace( "\"{", "{", $mc_repertory );
$mc_repertory = str_replace( "}\"", "}", $mc_repertory );
$mc_repertory = str_replace( "\\u", "\\\\u", $mc_repertory );
$_SGLOBAL['db']->query( "UPDATE ".tname( "plug_newfarm" )." set repertory='".$mc_repertory."' where uid=".$_SGLOBAL['supe_uid'] );
//成果
}
}
}
}
将 绿色的代码移动出来如下红色:
$tounum = 0;
$mc_repertory = $_SGLOBAL['db']->result( $_SGLOBAL['db']->query( "SELECT repertory FROM ".tname( "plug_newfarm" )." where uid=".intval( $_SGLOBAL['supe_uid']) ), 0 );
$mc_repertory = json_decode( $mc_repertory);
foreach ( $animal[animal] as $key => $value )
{
if ( $_REQUEST['type'] == $value->cId )
{
if ( !stristr( $value->tou, ",".$_SGLOBAL['supe_uid']."," ) )
{
if ( $shop[$_REQUEST['type']][output] / 2 < $value->totalCome )
{
// $value = "totalCome"; // 这里解决的也不是我们说的bug,而是偷蛋不减数、而且可以继续偷
$value->totalCome--;
++$tounum;
$value->tou = $value->tou.",".$_SGLOBAL['supe_uid'].",";
//成果
$flag=false;
foreach($mc_repertory ->r as $key=>$val){
if($_REQUEST['type'] == $val->cId){
$flag=true;
//$mc_repertory->r[$key]->scrounge=$mc_repertory->r[$key]->scrounge+$tounum;
$mc_repertory->r[$key]->scrounge++; //这里改为 ++ 是加一个,我查了,如果偷三个,成果里就显示增加6个,就是1+2+3 ,所以上面代码是错误的,顺便修改一下!
}
}
if(!$flag){
$cName="";
switch ($_REQUEST['type']) {
case 1001:
$cName="\\u9E21\\u86CB";
break;
case 1002:
$cName="\\u5154\\u4ED4";
break;
case 1003:
$cName="\\u9E45\\u86CB";
break;
case 1004:
$cName="\\u5C0F\\u732B\\u4ED4";
break;
case 1005:
$cName="\\u5B54\\u96C0\\u6BDB";
break;
case 1006:
$cName="\\u5C0F\\u4F01\\u9E45";
break;
case 1007:
$cName="\\u5C0F\\u4E4C\\u9F9F";
break;
case 1008:
$cName="\\u677E\\u9F20\\u5D3D";
break;
case 1009:
$cName="\\u5C0F\\u6CE2\\u65AF\\u732B\\u5D3D";
break;
case 1010:
$cName="\\u5C0F\\u4ED3\\u9F20";
break;
case 1501:
$cName="\\u7F8A\\u6BDB";
break;
case 1502:
$cName="\\u725B\\u5976";
break;
case 1503:
$cName="\\u5C0F\\u7334\\u4ED4";
break;
case 1504:
$cName="\\u5C0F\\u888B\\u9F20";
break;
case 1505:
$cName="\\u5C0F\\u6885\\u82B1\\u9E7F";
break;
case 1507:
$cName="\\u7F9A\\u7F8A";
break;
}
$mc_repertory->r[] = "{\"cId\":".$_REQUEST['type'].",\"cName\":\"".$cName."\",\"harvest\":0,\"scrounge\":".$tounum."}";
$mc_repertory = json_encode( $mc_repertory );
$mc_repertory = json_decode( $mc_repertory);
}
//成果
}
}
}
}
//橘黄色代码顺便解决蛋被主人先收取,别人未刷新偷取的时候显示偷0个的小问题,提示 :操作太晚了...
$tounum == 0 && exit("{\"errorContent\":\"\\u4F60\\u6765\\u7684\\u4E5F\\u592A\\u665A\\u4E86\\u5427...\",\"errorType\":\"1011\"}");
$mc_repertory = json_encode( $mc_repertory );
$mc_repertory = str_replace( "\"{", "{", $mc_repertory );
$mc_repertory = str_replace( "}\"", "}", $mc_repertory );
$mc_repertory = str_replace( "\\u", "\\\\u", $mc_repertory );
$_SGLOBAL['db']->query( "UPDATE ".tname( "plug_newfarm" )." set repertory='".$mc_repertory."' where uid=".$_SGLOBAL['supe_uid'] ); |